日志信息:
[GGT2]05-07 19:58:44.406 9182641 WARN [http-8080-Processor1] org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/GGT2] - Exception thrown whilst processing POSTed parameters
java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(SocketInputStream.java:168)
at org.apache.coyote.http11.InternalInputBuffer.fill(InternalInputBuffer.java:748)
at org.apache.coyote.http11.InternalInputBuffer$InputStreamInputBuffer.doRead(InternalInputBuffer.java:778)
at org.apache.coyote.http11.filters.IdentityInputFilter.doRead(IdentityInputFilter.java:116)
at org.apache.coyote.http11.InternalInputBuffer.doRead(InternalInputBuffer.java:713)
at org.apache.coyote.Request.doRead(Request.java:419)
at org.apache.catalina.connector.InputBuffer.realReadBytes(InputBuffer.java:264)
at org.apache.tomcat.util.buf.ByteChunk.substract(ByteChunk.java:403)
at org.apache.catalina.connector.InputBuffer.read(InputBuffer.java:279)
at org.apache.catalina.connector.CoyoteInputStream.read(CoyoteInputStream.java:193)
at org.apache.catalina.connector.Request.readPostBody(Request.java:2420)
at org.apache.catalina.connector.Request.parseParameters(Request.java:2399)
at org.apache.catalina.connector.Request.getParameter(Request.java:1005)
at org.apache.catalina.connector.RequestFacade.getParameter(RequestFacade.java:353)
at cn.ls.ggt.servlet.cx.prmb.SaveCase.doPost(SaveCase.java:84)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at cn.ls.util.HibernateFilter.doFilter(HibernateFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
at java.lang.Thread.run(Thread.java:595)
红色标注部分是自己写的程序,这个页面是sevlet,把页面填写的信息保存到数据库,而出错的这一行就是获得页面的第一个参数,日志文件里面很多类似的错误,请问有没有遇到过的朋友,我高人帮忙分析下
[GGT2]05-07 19:58:44.406 9182641 WARN [http-8080-Processor1] org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/GGT2] - Exception thrown whilst processing POSTed parameters
java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(SocketInputStream.java:168)
at org.apache.coyote.http11.InternalInputBuffer.fill(InternalInputBuffer.java:748)
at org.apache.coyote.http11.InternalInputBuffer$InputStreamInputBuffer.doRead(InternalInputBuffer.java:778)
at org.apache.coyote.http11.filters.IdentityInputFilter.doRead(IdentityInputFilter.java:116)
at org.apache.coyote.http11.InternalInputBuffer.doRead(InternalInputBuffer.java:713)
at org.apache.coyote.Request.doRead(Request.java:419)
at org.apache.catalina.connector.InputBuffer.realReadBytes(InputBuffer.java:264)
at org.apache.tomcat.util.buf.ByteChunk.substract(ByteChunk.java:403)
at org.apache.catalina.connector.InputBuffer.read(InputBuffer.java:279)
at org.apache.catalina.connector.CoyoteInputStream.read(CoyoteInputStream.java:193)
at org.apache.catalina.connector.Request.readPostBody(Request.java:2420)
at org.apache.catalina.connector.Request.parseParameters(Request.java:2399)
at org.apache.catalina.connector.Request.getParameter(Request.java:1005)
at org.apache.catalina.connector.RequestFacade.getParameter(RequestFacade.java:353)
at cn.ls.ggt.servlet.cx.prmb.SaveCase.doPost(SaveCase.java:84)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at cn.ls.util.HibernateFilter.doFilter(HibernateFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
at java.lang.Thread.run(Thread.java:595)
红色标注部分是自己写的程序,这个页面是sevlet,把页面填写的信息保存到数据库,而出错的这一行就是获得页面的第一个参数,日志文件里面很多类似的错误,请问有没有遇到过的朋友,我高人帮忙分析下
>tomcat. The class throwing exception is basically an inputstream
wrapper in tomcat to parse HTTP requests. Are you using something like
Scriptaculous or any standard Ajax framework for the communication, or
have you written something of your own? If latter, you might want to
try using Scriptaculous/Prototype and see if the error goes away.
Thanks for your response. After much additional searching, I've
discovered that this is a bug with Tomcat 5.5.23. (http://
issues.apache.org/bugzilla/show_bug.cgi?id=40960). I upgraded to
Tomcat 6.0.13 and that solved the problem. Hope that helps someone.
Sorry it took me so long to get back to you. As best as I can figure
(and I'm no expert), the exception occurs when APR is parsing the
POSTed parameters. Did you install the Tomcat native library (\bin
\tcnative-1.dll)? I think not using the native library will solve the
problem. Something in there (I think) is causing the parse of the
POSTed parameters to fail. I'm not sure if you have to reinstall
Tomcat to get rid of the DLL or if you can just remove the file.I have two servers, one running with the native library and one
without it. The one with the native library still has this exception
thrown (even after upgrading to Tomcat 6). I have not observed this
issue with the server running without the native library. That's my
best guess.
Jeff
P.S. - I just assumed you were using Windows. I don't think the
Tomcat native library is supplied for any other OS. If you're not
using Windows, then you can probably ignore everything I just said.