On 10/12/2014 12:08, Mark Thomas wrote: > On 08/12/2014 22:43, Rémy Maucherat wrote: >> 2014-12-08 21:59 GMT+01:00 Mark Thomas <ma...@apache.org>: >> >>> What triggers the exception. That is the bit I don't understand. >>> >> The test is throwing an exception, it goes to onError which writes a >> message, but the writer empty message gets sent first. From what I remember. >> >> To go further in this discussion, please provide information on where the >> specification states empty messages are sent when using a writer or output >> stream. > > Zero length messages are valid as per RFC 6455 and getSendWriter() is > for sending messages. There is no exclusion that I can see for zero > length messages. > > So, I'd turn you question around and ask you to provide a reference that > requires special handling in a writer for a zero length message. > > The TCK appears to be expecting that > Session.getBasicRemote().getSendWriter().close() is a NO-OP whereas I > would expect that to send a zero length message. > > I'd also point out that (at least in Tomcat's implementation) > Session.getBasicRemote().getSendWriter(); > Session.close(); > does not send an empty message before the close message. > > With your change currently in place it is now impossible to send a zero > length message using a Writer. > > I'd prefer to see this commit reverted but, given your requirement for > an implementation that can pass the TCK - even if the TCK is wrong, > then I'd accept this behaviour being disabled by default and enabled by > yet another system property.
I've also raised https://java.net/jira/browse/WEBSOCKET_SPEC-232 to get some clarification. Mark --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org