tomcat-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Bob DeRemer <bob.dere...@thingworx.com>
Subject websocket connection (at startup) between 2 webapps in same Tomcat 7.0.47 instance hangs indefinitely
Date Fri, 18 Oct 2013 21:09:17 GMT
Hi Guys,

In our implementation, we have a gateway app that uses jsr websockets to communication with
our main application server.  In a small system, we want to run them both on a single Tomcat
instance using the same Tomcat NIO connector, but directing to different respective WS paths.
 This works fine if you deploy the MAIN first, then the GW - so that MAIN is already up and
running.  If you restart Tomcat when both webapps are deployed - and the GW (client) starts
first, it hangs indefinitely in the following code trying to establish a WS connection:

Is this a bug or a known limitation when a client/server in the same webapp try to connect
at startup?

Thanks

"localhost-startStop-1" daemon prio=6 tid=0x000000000ef0f800 nid=0x1624 waiting on condition
[0x000000001046e000]
   java.lang.Thread.State: WAITING (parking)
       at sun.misc.Unsafe.park(Native Method)
       - parking to wait for  <0x00000007d6d98b18> (a java.util.concurrent.CountDownLatch$Sync)
       at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:834)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:994)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1303)
       at java.util.concurrent.CountDownLatch.await(CountDownLatch.java:236)
       at sun.nio.ch.PendingFuture.get(PendingFuture.java:180)
       at org.apache.tomcat.websocket.WsWebSocketContainer.processResponse(WsWebSocketContainer.java:568)
       at org.apache.tomcat.websocket.WsWebSocketContainer.connectToServer(WsWebSocketContainer.java:317)
       at com.thingworx.core.communication.channels.jsr356.client.Jsr356ClientChannel.connect(Jsr356ClientChannel.java:57)
       at com.thingworx.core.communication.endpoints.CommunicationEndpoint.connect(CommunicationEndpoint.java:186)
       at com.thingworx.core.communication.CommunicationSubsystem.startSubsystem(CommunicationSubsystem.java:88)
       at com.thingworx.core.subsystems.SubsystemBase.start(SubsystemBase.java:48)
       at com.thingworx.apiserver.APIServerManager.startSubsystem(APIServerManager.java:92)
       at com.thingworx.core.subsystems.SubsystemBase.start(SubsystemBase.java:48)
       at com.thingworx.apiserver.Bootstrapper.contextInitialized(Bootstrapper.java:57)
       at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4939)
       at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5434)
       - locked <0x00000007da3e0308> (a org.apache.catalina.core.StandardContext)
       at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
       - locked <0x00000007da3e0308> (a org.apache.catalina.core.StandardContext)
       at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
       at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
       at java.util.concurrent.FutureTask.run(FutureTask.java:262)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
       at java.lang.Thread.run(Thread.java:744)

   Locked ownable synchronizers:
       - <0x00000007da3a7ab0> (a java.util.concurrent.ThreadPoolExecutor$Worker)



Bob DeRemer
Senior Director, Architecture and Development

[Description: Description: Description: Description: cid:image001.png@01CBE3DE.51A12030]
http://www.thingworx.com<http://www.thingworx.com/>
Skype: bob.deremer.thingworx
O: 610.594.6200 x812
M: 717.881.3986


Mime
  • Unnamed multipart/related (inline, None, 0 bytes)
View raw message