Bug #1066
closedSimpleChat Example gets Exceptions in Jetty and JBoss
0%
Description
Running the latest git (cloned 21/11) with Eclipse and Jetty plus also JBoss AS7
SimpleChat With Jetty:
With a number of guest sessions active (2 on Chrome and 1 on IE 8) I see "org.mortbay.jetty.EofException" messages. This happens every time when sending with IE and occasionally with Chrome. See below for Exception detail. This doesn't affect the application behaviour on Jetty - but it does with JBoss (which is what I was hoping to target) here I get dialog errors and sessions stop.
So I'm providing the Jetty stuff for tracing as they may be related.
With JBoss:
I see "ERROR [stderr] (http---127.0.0.1-8080-9) Exception occurred when flushing the writer" message on the server.
In Chrome I see "Wt internal error: TypeError: Cannot call method 'setAttribute' of undefined, code: undefined, description:
undefined"
In IE I see "Wt internal error:[object Error], code: undefined, description; Could not complete the operation due to error 80020101."
And as above chat sessions become unusable thereafter.
Exception on Jetty
org.mortbay.jetty.EofException
at org.mortbay.jetty.HttpGenerator.flush(HttpGenerator.java:791)
at org.mortbay.jetty.AbstractGenerator$Output.flush(AbstractGenerator.java:569)
at org.mortbay.jetty.HttpConnection$Output.flush(HttpConnection.java:1012)
at sun.nio.cs.StreamEncoder.implFlush(Unknown Source)
at sun.nio.cs.StreamEncoder.flush(Unknown Source)
at java.io.OutputStreamWriter.flush(Unknown Source)
at eu.webtoolkit.jwt.servlet.WebResponse.flush(WebResponse.java:143)
at eu.webtoolkit.jwt.WebSession.serveResponse(WebSession.java:1486)
at eu.webtoolkit.jwt.WebSession.render(WebSession.java:1450)
at eu.webtoolkit.jwt.WebSession.notify(WebSession.java:177)
at eu.webtoolkit.jwt.WApplication.notify(WApplication.java:2264)
at eu.webtoolkit.jwt.WebSession.handleRequest(WebSession.java:1292)
at eu.webtoolkit.jwt.WtServlet.doHandleRequest(WtServlet.java:277)
at eu.webtoolkit.jwt.ServletApi.handleRequest(ServletApi.java:24)
at eu.webtoolkit.jwt.ServletApi25.doHandleRequest(ServletApi25.java:27)
at eu.webtoolkit.jwt.WtServlet.handleRequest(WtServlet.java:189)
at eu.webtoolkit.jwt.WtServlet.doPost(WtServlet.java:206)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:401)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:450)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at org.mortbay.jetty.Server.handle(Server.java:326)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:945)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:756)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410)
at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
Caused by: java.io.IOException: An existing connection was forcibly closed by the remote host
at sun.nio.ch.SocketDispatcher.writev0(Native Method)
at sun.nio.ch.SocketDispatcher.writev(Unknown Source)
at sun.nio.ch.IOUtil.write(Unknown Source)
at sun.nio.ch.SocketChannelImpl.write(Unknown Source)
at java.nio.channels.SocketChannel.write(Unknown Source)
at org.mortbay.io.nio.ChannelEndPoint.flush(ChannelEndPoint.java:233)
at org.mortbay.io.nio.SelectChannelEndPoint.flush(SelectChannelEndPoint.java:211)
at org.mortbay.jetty.HttpGenerator.flush(HttpGenerator.java:714)
... 33 more
Files
Updated by David Hubbard almost 13 years ago
I notice that the JBoss part of this may be a duplicate of #634
Is there anyway of specifying in the code which Servlet Spec to use so that it can still run in JBoss AS 7 ?
Dave
Updated by Pieter Libin almost 13 years ago
- Status changed from New to Resolved
- Assignee set to Pieter Libin
Hi,
this indeed seems to be a duplicate of issue #634.
You should be able to get the example working on JBoss by disabling the asynchronous io.
You can do this in WebRoot/WEB-INF/web.xml, by changing the async-supported xml element's value to false.
regards,
Pieter
Updated by David Hubbard almost 13 years ago
- File 1066_JBoss_SimpleChat_IE_Exception.txt 1066_JBoss_SimpleChat_IE_Exception.txt added
- File 1066_Jetty_SimpleChat_IE_Exception.txt 1066_Jetty_SimpleChat_IE_Exception.txt added
Pieter
Thanks, I've applied the "false" setting - Operation in JBoss behaves as Jetty now - application works.
However on both App Servers: Chrome actions are all clean on the server, but all IE actions, whether they are login, send, logout click (before confirm) and confirm buttons generate an Exception on the server
I attach output of these exceptions, which look broadly equivalent to me.
Not sure this is a show stopper, but a little concerned from a support perspective by amount of log activity on server this would generate - with potential to hide other more serious errors in the noise.
Regards
Dave
Updated by Koen Deforche almost 13 years ago
- Status changed from Resolved to InProgress
Hey Dave,
This exception is actually harmless and should be caught and reported as a warning.
To be fixed.
Regards,
koen
Updated by Koen Deforche over 12 years ago
- Status changed from InProgress to Resolved
Updated by Koen Deforche over 12 years ago
- Status changed from Resolved to Closed