tomcat-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Konstantin Preißer <>
Subject RE: [VOTE] Release Apache Tomcat 7.0.46
Date Wed, 16 Oct 2013 22:47:05 GMT

> -----Original Message-----
> From: Violeta Georgieva []
> Sent: Wednesday, October 16, 2013 9:34 PM
> To: Tomcat Developers List
> Subject: [VOTE] Release Apache Tomcat 7.0.46
> The proposed Apache Tomcat 7.0.46 release is now available for voting.
> This release candidate contains JSR-356 Java WebSocket 1.0 implementation.
> Note that use of this functionality requires Java 7.
> It can be obtained from:
> The Maven staging repo is:
> The svn tag is:
> The proposed 7.0.46 release is:
> [ ] Broken - do not release
> [ ] Stable - go ahead and release as 7.0.46 Stable

Hmm, unfortunately it seems the Websocket implementation using the deprecated proprietary
API does not work correctly when using the HTTP APR and NIO connector on Windows...

With Tomcat 7.0.46 and NIO or APR connector on Windows 8 x64 with Java 1.7.0_45 x64:
1) Open the snake example, http://localhost:8081/examples/websocket-deprecated/snake.html
with Firefox
2) Press up key
3) Console displays "Sent: Direction north", but the snake does not move.

1) Open the echo example, http://localhost:8081/examples/websocket-deprecated/echo.html with
2) Choose one of the endpoints and click connect
3) Press "echo message" button a lot of times - the message will not be echoed-back, and eventually
the Websocket connection will be closed; Tomcat logs:

Okt 16, 2013 11:27:17 PM org.apache.coyote.http11.AbstractHttp11Processor process
Information: Error parsing HTTP request header
 Note: further occurrences of HTTP header parsing errors will be logged at DEBUG level.

When using a TCP sniffer, one can see that when the browser displays "Websocket connection
closed", Tomcat sends a "HTTP/1.1 400 Bad Request" response although it previously already
sent a "HTTP/1.1 101 Switching Protocols" response on the same TCP connection. It seems that
the websocket messages from the browser are treated as an additional HTTP request instead
of websocket messages.

With the BIO connector, everything works fine.

The new JSR 356 examples work fine with BIO, NIO and APR connectors.

I have done some digging and I found that with r1516410, the old Websocket implementation
works fine with NIO and APR, but with r1516411, it does not work anymore.

Konstantin Preißer

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message