new InitialContext() hangs up...help please
819650Jan 29 2011 — edited Feb 1 2011Hi,
I met a problem like the function "InitialContext()" hung up for many days...I'm using the Java ORB for RMI-IIOP communications.
The JDK version looks like,
java version "1.6.0_21"
Java(TM) SE Runtime Environment (build 1.6.0_21-b06)
Java HotSpot(TM) Server VM (build 17.0-b16, mixed mode)
My source looks like,
ORB orb = ORB.init((String[])null, properties);
Hashtable environment = new Hashtable();
environment.put("java.naming.factory.initial",
"com.sun.jndi.cosnaming.CNCtxFactory");
environment.put("java.naming.provider.url", "iiop://" + hostname + ":"
+ portId);
environment.put("java.naming.corba.orb", orb);
// Setup naming context
namingContext = new InitialContext(environment); -----> hung up here
The orb properties look like,
/opt/cems/jre/bin/orbd -ORBInitialPort 1050 -ORBServerHost 47.224.244.57 -defaultdb /opt/cems/adm/orb.db -Dcom.sun.CORBA.connection.ORBHighWaterMark=4050 -Dcom.sun.CORBA.connection.ORBLowWaterMark=4000 -J-Xmx256m
The thread dump looks like,
"Thread-9" daemon prio=3 tid=0x0032bc00 nid=0x1c in Object.wait() [0xb637e000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0xe760a370> (a java.lang.Object)
at java.lang.Object.wait(Object.java:485)
at com.sun.corba.se.impl.transport.CorbaResponseWaitingRoomImpl.waitForResponse(CorbaResponseWaitingRoomImpl.java:140)
- locked <0xe760a370> (a java.lang.Object)
at com.sun.corba.se.impl.transport.SocketOrChannelConnectionImpl.waitForResponse(SocketOrChannelConnectionImpl.java:1084)
at com.sun.corba.se.impl.protocol.CorbaMessageMediatorImpl.waitForResponse(CorbaMessageMediatorImpl.java:253)
at com.sun.corba.se.impl.protocol.CorbaClientRequestDispatcherImpl.marshalingComplete1(CorbaClientRequestDispatcherImpl.java:362)
at com.sun.corba.se.impl.protocol.CorbaClientRequestDispatcherImpl.marshalingComplete(CorbaClientRequestDispatcherImpl.java:336)
at com.sun.corba.se.impl.protocol.CorbaClientDelegateImpl.invoke(CorbaClientDelegateImpl.java:129)
at com.sun.corba.se.impl.protocol.CorbaClientDelegateImpl.is_a(CorbaClientDelegateImpl.java:213)
at org.omg.CORBA.portable.ObjectImpl._is_a(ObjectImpl.java:112)
at org.omg.CosNaming.NamingContextHelper.narrow(NamingContextHelper.java:69)
at com.sun.jndi.cosnaming.CNCtx.setOrbAndRootContext(CNCtx.java:404)
at com.sun.jndi.cosnaming.CNCtx.initUsingIiopUrl(CNCtx.java:298)
at com.sun.jndi.cosnaming.CNCtx.initUsingUrl(CNCtx.java:264)
at com.sun.jndi.cosnaming.CNCtx.initOrbAndRootContext(CNCtx.java:232)
at com.sun.jndi.cosnaming.CNCtx.<init>(CNCtx.java:87)
at com.sun.jndi.cosnaming.CNCtxFactory.getInitialContext(CNCtxFactory.java:32)
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:667)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:288)
at javax.naming.InitialContext.init(InitialContext.java:223)
at javax.naming.InitialContext.<init>(InitialContext.java:197)
at com.NTX.cdma.gsf.util.NamingServerUtilities.getNamingContext(NamingServerUtilities.java:122)
at com.NTX.cdma.gsf.process.ProcessWatchdog.waitForNamingServer(ProcessWatchdog.java:3669)
at com.NTX.cdma.gsf.process.NamingServerThread.run(NamingServerThread.java:273)
- locked <0xe760a2e0> (a com.NTX.cdma.gsf.process.NamingServerThread)
Would anyone give me some suggestions?
Thanks.
Edited by: Arica on Jan 29, 2011 5:49 PM
Edited by: Arica on Jan 29, 2011 5:50 PM