RFR : 8024952 : ClassCastException in PlainSocketImpl.accept() when using custom socketImpl
Daniel Fuchs
daniel.fuchs at oracle.com
Tue Oct 1 06:51:44 PDT 2013
On 10/1/13 3:09 PM, Seán Coffey wrote:
> Since I'm only creating a dummy socketImpl to test the
> classcastexception, no real networking stack is in place here. I'm
> catching the NPE that would be thrown from the native
> Java_java_net_TwoStacksPlainSocketImpl_socketAccept function since the
> underlying socket passed to it is null.
>
> C:\tmp>java CustomSocketImplFactory
> Created Socket[addr=null,port=0,localport=0]
> Exception in thread "main" java.lang.NullPointerException: socket is null
> at java.net.TwoStacksPlainSocketImpl.socketAccept(Native Method)
That's what I would have expected from your previous changeset.
But you're no longer passing null - right? Now you're passing
an instance of CustomSocketImpl.
So where does the NPE come from? Could it be because you should
be calling:
ServerSocket.setSocketImplFactory(new CustomSocketImplFactory());
and not:
Socket.setSocketImplFactory(new CustomSocketImplFactory()); ?
Or should you call both?
best regards,
-- daniel
>
> Regards,
> Sean.
>
>>
>> Or is that going to hide future bugs?
>>
>> best regards
>>
>> -- daniel (not a reviewer)
>
More information about the net-dev
mailing list