Support Article
Remote JNDI server does not respond
SA-66735
Summary
Threads stop working when the remote Java Naming and Directory Interface (JNDI) server is unresponsive from the Java Message Service (JMS) connector call.
Error Messages
Thread dump with thread stack below:
"WebContainer : 5969" Id=10924343 in RUNNABLE (running in native)
BlockedCount : 7, BlockedTime : -1, WaitedCount : 4625, WaitedTime : -1
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:165)
at java.net.SocketInputStream.read(SocketInputStream.java:134)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:247)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:287)
at java.io.BufferedInputStream.read(BufferedInputStream.java:346)
- locked java.io.BufferedInputStream@be993089
at java.io.DataInputStream.readFully(DataInputStream.java:207)
at java.io.DataInputStream.readInt(DataInputStream.java:399)
at com.tibco.tibjms.TibjmsxLinkTcp._readWireMsg(TibjmsxLinkTcp.java:629)
at com.tibco.tibjms.TibjmsxLinkTcp.syncSendRequest(TibjmsxLinkTcp.java:1086)
at com.tibco.tibjms.TibjmsConnection._doInitMsg(TibjmsConnection.java:1607)
at com.tibco.tibjms.TibjmsConnection._create(TibjmsConnection.java:1313)
at com.tibco.tibjms.TibjmsConnection.<init>(TibjmsConnection.java:4185)
at com.tibco.tibjms.TibjmsQueueConnection.<init>(TibjmsQueueConnection.java:36)
at com.tibco.tibjms.TibjmsxCFImpl._createImpl(TibjmsxCFImpl.java:200)
at com.tibco.tibjms.TibjmsxCFImpl._createConnection(TibjmsxCFImpl.java:253)
at com.tibco.tibjms.TibjmsQueueConnectionFactory.createQueueConnection(TibjmsQueueConnectionFactory.java:87)
at com.tibco.tibjms.naming.TibjmsContext$Messenger.request(TibjmsContext.java:325)
at com.tibco.tibjms.naming.TibjmsContext.lookup(TibjmsContext.java:657)
- locked com.tibco.tibjms.naming.TibjmsContext@e9d318a5
at com.tibco.tibjms.naming.TibjmsContext.lookup(TibjmsContext.java:491)
at org.apache.aries.jndi.DelegateContext.lookup(DelegateContext.java:161)
at javax.naming.InitialContext.lookup(InitialContext.java:423)
at com.ibm.ws.naming.util.IndirectJndiLookupObjectFactory$1.run(IndirectJndiLookupObjectFactory.java:391)
at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:118)
at com.ibm.ws.naming.util.IndirectJndiLookupObjectFactory.getObjectInstanceExt(IndirectJndiLookupObjectFactory.java:227)
at com.ibm.ws.naming.util.Helpers.processSerializedObjectForLookupExt(Helpers.java:990)
at com.ibm.ws.naming.util.Helpers.processSerializedObjectForLookup(Helpers.java:796)
at com.ibm.ws.naming.jndicos.CNContextImpl.cacheLookup(CNContextImpl.java:4309)
at com.ibm.ws.naming.jndicos.CNContextImpl.doLookup(CNContextImpl.java:1800)
at com.ibm.ws.naming.jndicos.CNContextImpl.doLookup(CNContextImpl.java:1777)
at com.ibm.ws.naming.jndicos.CNContextImpl.lookupExt(CNContextImpl.java:1434)
at com.ibm.ws.naming.jndicos.CNContextImpl.lookup(CNContextImpl.java:616)
at com.ibm.ws.naming.util.WsnInitCtx.lookup(WsnInitCtx.java:165)
at com.ibm.ws.naming.util.WsnInitCtx.lookup(WsnInitCtx.java:179)
at org.apache.aries.jndi.DelegateContext.lookup(DelegateContext.java:161)
at javax.naming.InitialContext.lookup(InitialContext.java:423)
at com.pegarules.generated.activity.ra_action_invokejmsconnector_1a18d4aaf7e1a3ca1c3af7f2d141b23b.step1_circum0(ra_action_invokejmsconnector_1a18d4aaf7e1a3ca1c3af7f2d141b23b.java:620)
Steps to Reproduce
Make a Connect-JMS call with JNDI server.
Root Cause
A timeout was not set.
Resolution
Perform either of the following local-changes:
- Set the custom property in the JNDI server (timeout value based on user requirement):
Property: com.sun.jndi.connect.pool.timeout
Value: 30000
- Include the socketTimeout value as part of JNDI server URL.
Published December 13, 2018 - Updated October 8, 2020
Have a question? Get answers now.
Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.