Hi Tomcat Team,

 

for a customer we build a HTML5 websocket application with Tomcat 8.0.29.

If we start the application from our network or from our home network all
works fine. But if the customer starts the application from his network,
after a certain time the websocket stops with a error. This can happen after
5 or 20 Minutes.

We have tested it with and without SSL and on two different servers. Only in
the customer network the connection breaks with a error.

We also make a test with an websocket echo example which is included in
Tomcat. the same as with our websocket. After a certain time the websocket
stops with a error. But only if we start the application from the customer
network.

 

When the echo example stops with an error the following message will written
in  server.log

 

08-Dec-2015 10:20:37.757 SEVERE [http-apr-8081-exec-2]
org.apache.tomcat.websocket.pojo.PojoEndpointBase.onError No error handling
configured for [websocket.echo.EchoAnnotation] and the following error
occurred

java.io.IOException: Unexpected error [730,054] reading data from the
APR/native socket [1,639,490,672] with wrapper
[org.apache.tomcat.util.net.AprEndpoint$AprSocketWrapper@231e01e4:1639490672
].

        at
org.apache.coyote.http11.upgrade.AprServletInputStream.doRead(AprServletInpu
tStream.java:133)

        at
org.apache.coyote.http11.upgrade.AbstractServletInputStream.read(AbstractSer
vletInputStream.java:124)

        at
org.apache.tomcat.websocket.server.WsFrameServer.onDataAvailable(WsFrameServ
er.java:51)

        at
org.apache.tomcat.websocket.server.WsHttpUpgradeHandler$WsReadListener.onDat
aAvailable(WsHttpUpgradeHandler.java:183)

        at
org.apache.coyote.http11.upgrade.AbstractServletInputStream.onDataAvailable(
AbstractServletInputStream.java:198)

        at
org.apache.coyote.http11.upgrade.AbstractProcessor.upgradeDispatch(AbstractP
rocessor.java:96)

        at
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(Abstrac
tProtocol.java:669)

        at
org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.jav
a:2500)

        at
org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:
2489)

        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown
Source)

        at
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.ja
va:61)

        at java.lang.Thread.run(Unknown Source)

 

If we starts the test on http://www.websocket.org/echo.html in the customer
network, the connection will not stop with an error. 

 

For me it looks like a problem with Tomcat. But what can I do to make it run
properly?

 

Tomcat: 8.0.29 (also with earlier versions)

Windows 7: 64 Bit

Protocol: HTTP/1.1

 

 

Regards,

Daniel

Attachment: smime.p7s
Description: S/MIME cryptographic signature

Reply via email to