We are using tomcat 3.3a in solaris 8.0 (SF25K). My home page(After login) contain 4 frame set. In the toolbar (Header) page throwing Broken Pipe exception. It occures intermitantly. Exception type :1 java.io.IOException: Broken pipe at java.net.SocketOutputStream.socketWrite(Native Method) at java.net.SocketOutputStream.write(SocketOutputStream.java:96) at org.apache.tomcat.modules.server.Http10.doWrite(Unknown Source) at org.apache.tomcat.modules.server.HttpResponse.doWrite(Unknown Source) at org.apache.tomcat.core.OutputBuffer.realWriteBytes(Unknown Source) at org.apache.tomcat.util.buf.ByteChunk.flushBuffer(Unknown Source) at org.apache.tomcat.core.OutputBuffer.flush(Unknown Source) at org.apache.tomcat.core.OutputBuffer.close(Unknown Source) at org.apache.tomcat.facade.ServletWriterFacade.close(Unknown Source) at com.documentum.wc.cmd.DwCommandDispatcher.service (DwCommandDispatcher.java:289) at javax.servlet.http.HttpServlet.service(HttpServlet.java) at org.apache.tomcat.facade.ServletHandler.doService(Unknown Source) at org.apache.tomcat.core.Handler.invoke(Unknown Source) at org.apache.tomcat.core.Handler.service(Unknown Source) at org.apache.tomcat.facade.ServletHandler.service(Unknown Source) at org.apache.tomcat.core.ContextManager.internalService(Unknown Source) at org.apache.tomcat.core.ContextManager.service(Unknown Source) at org.apache.tomcat.modules.server.Http10Interceptor.processConnection (Unknown Source) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(Unknown Source) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run (Unknown Source) at java.lang.Thread.run(Thread.java:484) 2005-05-13 18:21:55 - Http10Interceptor: SocketException reading request, ignored Exception type :2 2005-05-16 17:16:12 - DecodeInterceptor: Charset from session UTF-8 {The following error occurred after content was sent: }{Failed to dispatch the archive stream<br>}java.io.IOException: Broken pipe 2005-05-16 17:16:12 - Http10Interceptor: SocketException reading request, ignored Anybody face this exception ever before.
The exception is simply that the browser stopped talking to Tomcat before Tomcat expected it to. It's not too surprising, since frames and HTTP/1.0 don't play well together. The Http10Connector is currently deprecated. You're best bet is to upgrade to 3.3.2 and use the CoyoteConnector instead.
Hi, Thanks for your valuable information. We can't update the Tomcat version. Because it came along with the Product (Documentum4.i). Now i want to clarify only one thing. In our home page contains 5 frame set. We are facing this issue (Broken pipe) only in the Header Frame set. Rest of the frame are displaing correctly. How it is possible? User confirm that, she didn't press the stop button. Thanks, (In reply to comment #1) > The exception is simply that the browser stopped talking to Tomcat before > Tomcat expected it to. It's not too surprising, since frames and HTTP/1.0 > don't play well together. > The Http10Connector is currently deprecated. You're best bet is to upgrade to > 3.3.2 and use the CoyoteConnector instead.
The exception is simply that the browser stopped talking to Tomcat before Tomcat expected it to. It's not too surprising, since frames and HTTP/1.0 don't play well together. The Http10Connector is currently deprecated. You're best bet is to upgrade to 3.3.2 and use the CoyoteConnector instead
(In reply to comment #2) > Hi, > Thanks for your valuable information. We can't update the Tomcat version. > Because it came along with the Product (Documentum4.i). It's theoretically possible to update the Connector only, but I don't know of anybody that has tried it in a very long time. Probably easier is to front your app with Apache and mod_jk. Prior to 3.3.2, the stand-alone Connector isn't really suitable for production use. > Now i want to clarify only one thing. > In our home page contains 5 frame set. We are facing this issue (Broken pipe) > only in the Header Frame set. Rest of the frame are displaing correctly. > How it is possible? > User confirm that, she didn't press the stop button. > Thanks, Well, modern browsers (esp. ones from MS) can get confused when presented with frames and a HTTP/1.0 server. If you disable the use of HTTP/1.1 in the browser, it may work better (at the expense of much worse performance on all other sites). The problem is that with HTTP/1.0, the browser needs to open a new Socket connection to retrieve each part of the frame, and they don't like this anymore than your server does. What is probably happening is that the browser is attempting to use the keep-alive extension to HTTP/1.0, and giving up in disgust when it discovers that the (now deprecated) Http10Connector doesn't support it.