jQuery in Action, 3rd edition
The moose likes Tomcat and the fly likes java.net.SocketException: Broken pipe in Tomcat Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Products » Tomcat
Bookmark "java.net.SocketException: Broken pipe in Tomcat" Watch "java.net.SocketException: Broken pipe in Tomcat" New topic

java.net.SocketException: Broken pipe in Tomcat

Ranch Hand

Joined: Mar 11, 2003
Posts: 33

My application has been working well, but I see this java.net.ScoketException:Borken pipe in the log file which has the stack trace involve only Tomcat's code. Since none of our code is in the stace trace, it's so impossible to detect what's wrong or what happened actually. I checked the archive logs of this forum and someone seemed to have this (or similiar error, java.io.Exception:broken pipe) in Tomcat 3X. The answer he got is to ignore this kind of exception. I am using Tomcat 5.5 and JVM1.5 on Linux. Does anyone know what this exception mean?

Here is the exception in the log:

May 25, 2006 1:46:45 AM org.apache.jk.core.MsgContext action
WARNING: Error sending end packet
java.net.SocketException: Broken pipe
at java.net.SocketOutputStream.socketWrite0(Native Method)
at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92)
at java.net.SocketOutputStream.write(SocketOutputStream.java:136)
at org.apache.jk.common.ChannelSocket.send(ChannelSocket.java:518)
at org.apache.jk.common.JkInputStream.endMessage(JkInputStream.java:112)
at org.apache.jk.core.MsgContext.action(MsgContext.java:293)
at org.apache.coyote.Response.action(Response.java:182)
at org.apache.coyote.Response.finish(Response.java:304)
at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:204)
at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:282)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:754)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:684)
at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:876)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)
May 25, 2006 1:46:45 AM org.apache.jk.common.ChannelSocket processConnection
WARNING: processCallbacks status 2

Thanks advance for any response
Ben Souther

Joined: Dec 11, 2004
Posts: 13410

This happens when a connection to the browser is broken before a page is done loading.

Can happen for a variety of reasons:
The user closed the browser before the page loaded.
Their internet connection failed during loading.
They went to another page before the page loaded.
The browser timed the connection out before the page loaded (would have to be a large page).

In 99 percent of cases, it can be safely ignored.

Java API J2EE API Servlet Spec JSP Spec How to ask a question... Simple Servlet Examples jsonf
Ranch Hand

Joined: Mar 11, 2003
Posts: 33

Thanks so much for your detailed reply The information you provided is really useful. Thanks!
I agree. Here's the link: http://aspose.com/file-tools
subject: java.net.SocketException: Broken pipe in Tomcat
It's not a secret anymore!