History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: WW-1258
Type: Improvement Improvement
Status: Closed Closed
Resolution: Won't Fix
Priority: Minor Minor
Assignee: Rene Gielen
Reporter: Jeroen van Vianen
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
WebWork

Ignoring ClientDisconnectExceptions in the log file

Created: 20/Mar/06 10:28 AM   Updated: 21/Mar/06 07:17 AM
Component/s: Dispatch
Affects Version/s: 2.2.1
Fix Version/s: 2.2.2

Environment: J2SE 1.5 / Linux


 Description  « Hide
I get a lot of these stacktraces in my log:

ClientAbortException: java.net.SocketException: Connection reset
at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:366 )
at org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:299)
at org.apache.catalina.connector.OutputBuffer.writeBytes(OutputBuffer.java:392)
at org.apache.catalina.connector.OutputBuffer.write(OutputBuffer.java:381)
at org.apache.catalina.connector.CoyoteOutputStream.write(CoyoteOutputStream.java: 76)
at sun.nio.cs.StreamEncoder$CharsetSE.writeBytes(StreamEncoder.java:336)
at sun.nio.cs.StreamEncoder$CharsetSE.implWrite(StreamEncoder.java:395)
at sun.nio.cs.StreamEncoder.write(StreamEncoder.java:136)
at sun.nio.cs.StreamEncoder.write(StreamEncoder.java:146)
at java.io.OutputStreamWriter.write(OutputStreamWriter.java:204)
at java.io.Writer.write(Writer.java:126)
at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:2 91)
at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:55)
at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:166)
at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:1 14)
at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:230)
at org.apache.velocity.Template.merge(Template.java:256)
at com.opensymphony.webwork.dispatcher.VelocityResult.doExecute(VelocityResult.jav a:120)
at com.opensymphony.webwork.dispatcher.WebWorkResultSupport.execute(WebWorkResultS upport.java:101)
at com.opensymphony.xwork.DefaultActionInvocation.executeResult(DefaultActionInvoc ation.java:300)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.j ava:198)
...

These are harmless but quite annoying. Is it possible to disable them by adding a

} catch (ClientAbortException ex) {
/* Ignore */

instead of catching them in a general

} catch (Exception ex) {
... log and rethrow the error ...
}

around line 125 in com.opensymphony.webwork.dispatcher.VelocityResult?

The same probably applies to all other results.

See http://forums.opensymphony.com/thread.jspa?threadID=22948&tstart=0 for a discussion.

Thanks,


Jeroen


 All   Comments   Change History      Sort Order:
Rainer Hermanns - [21/Mar/06 12:36 AM ]
I think this should not be changed at all...
org.apache.catalina.connector.ClientAbortException is a container specific exception and we want to stay container independent...

Rene Gielen - [21/Mar/06 01:12 AM ]
Rainer: You are right, overseen what package that was :)

Rene Gielen - [21/Mar/06 01:14 AM ]
As Rainer pointed out, this is a container specific exception.
Sorry to say that we cannot do anything about it then.

Jeroen van Vianen - [21/Mar/06 04:06 AM ]
Well, maybe log IOException at the debug level instead then?

I didn't notice that the ClientAbortException was Tomcat-only.

Rene Gielen - [21/Mar/06 07:17 AM ]
I fear swallowing IOException is too general, this really could break functionality (if not for XW/WW, maybe for current users...).