Getting the below stacktrace when trying to construct InitialContext from a
java client that site on the same machine as the ejb container. Here's the
kicker, if I move the client to a remote machine and supply the PROVIDER_URL
of the original machine, it works! I've seen "StreamCorruptedException"
posts by others on ejb group, but their cause seem to be from deploying ejb,
or having different server/client JDK versions, neither of which is the case
here. Any clue?
**********client code*************
Hashtable h = new Hashtable();
h.put(Context.INITIAL_CONTEXT_FACTORY,
"weblogic.jndi.WLInitialContextFactory");
h.put(Context.PROVIDER_URL, "t3://localhost:4390");
InitialContext context = new InitialContext(h);
**********client stacktrace**********
java.io.StreamCorruptedException: Type code out of range, is 0
at java.lang.Throwable.fillInStackTrace(Native Method)
at java.lang.Throwable.fillInStackTrace(Compiled Code)
at java.lang.Throwable.<init>(Compiled Code)
at java.lang.Exception.<init>(Exception.java:42)
at java.io.IOException.<init>(IOException.java:47)
at
java.io.ObjectStreamException.<init>(ObjectStreamException.java:29)
at
java.io.StreamCorruptedException.<init>(StreamCorruptedException.java:30)
at java.io.ObjectInputStream.peekCode(Compiled Code)
at java.io.ObjectInputStream.SkipToEndOfBlockData(Compiled Code)
at java.io.ObjectInputStream.inputClassDescriptor(Compiled Code)
at java.io.ObjectInputStream.readObject(Compiled Code)
at java.io.ObjectInputStream.readObject(Compiled Code)
at java.io.ObjectInputStream.inputObject(Compiled Code)
at java.io.ObjectInputStream.readObject(Compiled Code)
at java.io.ObjectInputStream.readObject(Compiled Code)
at
weblogic.common.internal.ChunkedObjectInputStream.readObject(ChunkedObjectIn
putStream.java:107)
at
weblogic.common.internal.ChunkedObjectInputStream.readObject(ChunkedObjectIn
putStream.java:115)
at
weblogic.rjvm.ConnectionManager.readPeerInfo(ConnectionManager.java:686)
at
weblogic.rjvm.ConnectionManagerClient.handleIdentifyResponse(ConnectionManag
erClient.java:140)
at
weblogic.rjvm.ConnectionManager.dispatch(ConnectionManager.java:627)
at weblogic.rjvm.t3.T3JVMConnection.dispatch(Compiled Code)
at weblogic.socket.JavaSocketMuxer.processSockets2(Compiled Code)
at weblogic.socket.JavaSocketMuxer.processSockets(Compiled Code)
at
weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:24)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(Compiled Code)
--------------- nested within: ------------------
weblogic.utils.AssertionError: ***** ASSERTION FAILED ***** - with
nested exception:
[java.io.StreamCorruptedException: Type code out of range, is 0]
at java.lang.Throwable.fillInStackTrace(Native Method)
at java.lang.Throwable.fillInStackTrace(Compiled Code)
at java.lang.Throwable.<init>(Compiled Code)
at java.lang.Error.<init>(Error.java:50)
at weblogic.utils.NestedError.<init>(NestedError.java:24)
at weblogic.utils.AssertionError.<init>(AssertionError.java:56)
at
weblogic.rjvm.ConnectionManager.readPeerInfo(ConnectionManager.java:688)
at
weblogic.rjvm.ConnectionManagerClient.handleIdentifyResponse(ConnectionManag
erClient.java:140)
at
weblogic.rjvm.ConnectionManager.dispatch(ConnectionManager.java:627)
at weblogic.rjvm.t3.T3JVMConnection.dispatch(Compiled Code)
at weblogic.socket.JavaSocketMuxer.processSockets2(Compiled Code)
at weblogic.socket.JavaSocketMuxer.processSockets(Compiled Code)
at
weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:24)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(Compiled Code)
Exception in thread "main" javax.naming.CommunicationException. Root
exception is java.net.ConnectException: No server found at
T3://localhost:4390
at java.lang.Throwable.fillInStackTrace(Native Method)
at java.lang.Throwable.fillInStackTrace(Compiled Code)
at java.lang.Throwable.<init>(Compiled Code)
at java.lang.Exception.<init>(Exception.java:42)
at java.io.IOException.<init>(IOException.java:47)
at java.net.SocketException.<init>(SocketException.java:36)
at java.net.ConnectException.<init>(ConnectException.java:34)
at weblogic.rjvm.RJVMFinder.findOrCreate(RJVMFinder.java:155)
at weblogic.rjvm.ServerURL.findOrCreateRJVM(ServerURL.java:207)
at
weblogic.jndi.WLInitialContextFactoryDelegate.getInitialContext(Compiled
Code)
at
weblogic.jndi.WLInitialContextFactoryDelegate.getInitialContext(WLInitialCon
textFactoryDelegate.java:208)
at
weblogic.jndi.WLInitialContextFactory.getInitialContext(WLInitialContextFact
ory.java:149)
at
javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:671)
at
javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:242)
at javax.naming.InitialContext.init(InitialContext.java:218)
at javax.naming.InitialContext.<init>(InitialContext.java:194)
at d.main(d.java:10)
java.io.StreamCorruptedException: Type code out of range, is 0
at java.io.ObjectInputStream.peekCode(ObjectInputStream.java:1280)
at java.io.ObjectInputStream.SkipToEndOfBlockData(ObjectInputStream.java:1211)
at java.io.ObjectInputStream.inputClassDescriptor(ObjectInputStream.java:776)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:353)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:232)
at java.io.ObjectInputStream.inputObject(ObjectInputStream.java:978)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:232)
at weblogic.common.internal.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:107)
at weblogic.common.internal.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:115)
at weblogic.rjvm.ConnectionManager.readPeerInfo(ConnectionManager.java:686)
at weblogic.rjvm.ConnectionManagerClient.handleIdentifyResponse(ConnectionManagerClient.java:140)
at weblogic.rjvm.ConnectionManager.dispatch(ConnectionManager.java:627)
at weblogic.rjvm.t3.T3JVMConnection.dispatch(T3JVMConnection.java, Compiled Code)
at weblogic.socket.JavaSocketMuxer.processSockets2(JavaSocketMuxer.java, Compiled Code)
at weblogic.socket.JavaSocketMuxer.processSockets(JavaSocketMuxer.java, Compiled Code)
at weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:24)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java, Compiled Code)
--------------- nested within: ------------------
weblogic.utils.AssertionError: ***** ASSERTION FAILED ***** - with nested exception:
[java.io.StreamCorruptedException: Type code out of range, is 0]
at weblogic.rjvm.ConnectionManager.readPeerInfo(ConnectionManager.java:688)
at weblogic.rjvm.ConnectionManagerClient.handleIdentifyResponse(ConnectionManagerClient.java:140)
at weblogic.rjvm.ConnectionManager.dispatch(ConnectionManager.java:627)
at weblogic.rjvm.t3.T3JVMConnection.dispatch(T3JVMConnection.java, Compiled Code)
at weblogic.socket.JavaSocketMuxer.processSockets2(JavaSocketMuxer.java, Compiled Code)
at weblogic.socket.JavaSocketMuxer.processSockets(JavaSocketMuxer.java, Compiled Code)
at weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:24)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
--
Dimitri
Gene
"Dimitri Rakitine" <d...@dima.dhs.org> wrote in message
news:3c05...@newsgroups.bea.com...
> I'm sure you double-checked this already, but this stacktrace looks
*exactly* like one
> you get if you use 1.2 and not 1.3 on the client side - on Win32 I get :
>
> java.io.StreamCorruptedException: Type code out of range, is 0
> at java.io.ObjectInputStream.peekCode(ObjectInputStream.java:1280)
> at
java.io.ObjectInputStream.SkipToEndOfBlockData(ObjectInputStream.java:1211)
> at
java.io.ObjectInputStream.inputClassDescriptor(ObjectInputStream.java:776)
> at
java.io.ObjectInputStream.readObject(ObjectInputStream.java:353)
> at
java.io.ObjectInputStream.readObject(ObjectInputStream.java:232)
> at
java.io.ObjectInputStream.inputObject(ObjectInputStream.java:978)
> at
java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
> at
java.io.ObjectInputStream.readObject(ObjectInputStream.java:232)
> at
weblogic.common.internal.ChunkedObjectInputStream.readObject(ChunkedObjectIn
putStream.java:107)
> at
weblogic.common.internal.ChunkedObjectInputStream.readObject(ChunkedObjectIn
putStream.java:115)
> at
weblogic.rjvm.ConnectionManager.readPeerInfo(ConnectionManager.java:686)
> at
weblogic.rjvm.ConnectionManagerClient.handleIdentifyResponse(ConnectionManag
erClient.java:140)
> at
weblogic.rjvm.ConnectionManager.dispatch(ConnectionManager.java:627)
> at weblogic.rjvm.t3.T3JVMConnection.dispatch(T3JVMConnection.java,
Compiled Code)
> at
weblogic.socket.JavaSocketMuxer.processSockets2(JavaSocketMuxer.java,
Compiled Code)
> at
weblogic.socket.JavaSocketMuxer.processSockets(JavaSocketMuxer.java,
Compiled Code)
> at
weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:24)
> at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
> at weblogic.kernel.ExecuteThread.run(ExecuteThread.java, Compiled
Code)
> --------------- nested within: ------------------
> weblogic.utils.AssertionError: ***** ASSERTION FAILED ***** - with nested
exception:
> [java.io.StreamCorruptedException: Type code out of range, is 0]
> at
weblogic.rjvm.ConnectionManager.readPeerInfo(ConnectionManager.java:688)
> at