Tomcat: Exception thrown whilst processing POSTed parameters

Discussion in 'Java' started by govus, Jul 25, 2007.

  1. govus

    govus Guest

    Hi folks,
    I'm having a heck of a time trying to figure this out. I'm getting
    the following exception frequently in my Tomcat logs. The exception
    always seems to be thrown when I'm processing an AJAX request.

    Could I be forgetting to do something on the client side? Is this a
    problem with Tomcat? Could it be a problem with my code (unlikely as
    that is... :-\ )? Any hints would be appreciated! Thanks!

    Jeff

    Windows Server 2003
    Apache Tomcat 5.5.23
    JRE 1.5, Update 12

    =========================
    WARNING: Exception thrown whilst processing POSTed parameters
    java.io.IOException: Exception filling buffer with data from
    underlying input stream: not an EAGAIN status, so perhaps disconnected
    client?
    at
    org.apache.coyote.http11.InternalAprInputBuffer.fill(InternalAprInputBuffer.java:
    825)
    at org.apache.coyote.http11.InternalAprInputBuffer
    $SocketInputBuffer.doRead(InternalAprInputBuffer.java:853)
    at
    org.apache.coyote.http11.filters.IdentityInputFilter.doRead(IdentityInputFilter.java:
    116)
    at
    org.apache.coyote.http11.InternalAprInputBuffer.doRead(InternalAprInputBuffer.java:
    772)
    at org.apache.coyote.Request.doRead(Request.java:419)
    at
    org.apache.catalina.connector.InputBuffer.realReadBytes(InputBuffer.java:
    265)
    at org.apache.tomcat.util.buf.ByteChunk.substract(ByteChunk.java:403)
    at org.apache.catalina.connector.InputBuffer.read(InputBuffer.java:
    280)
    at
    org.apache.catalina.connector.CoyoteInputStream.read(CoyoteInputStream.java:
    193)
    at org.apache.catalina.connector.Request.readPostBody(Request.java:
    2400)
    at org.apache.catalina.connector.Request.parseParameters(Request.java:
    2379)
    at org.apache.catalina.connector.Request.getParameter(Request.java:
    1005)
    at
    org.apache.catalina.connector.RequestFacade.getParameter(RequestFacade.java:
    353)
    ....
    =========================
     
    govus, Jul 25, 2007
    #1
    1. Advertising

  2. On Jul 25, 1:29 pm, govus <> wrote:
    > Hi folks,
    > I'm having a heck of a time trying to figure this out. I'm getting
    > the following exception frequently in my Tomcat logs. The exception
    > always seems to be thrown when I'm processing an AJAX request.
    >
    > Could I be forgetting to do something on the client side? Is this a
    > problem with Tomcat? Could it be a problem with my code (unlikely as
    > that is... :-\ )? Any hints would be appreciated! Thanks!
    >
    > Jeff
    >
    > Windows Server 2003
    > Apache Tomcat 5.5.23
    > JRE 1.5, Update 12
    >
    > =========================
    > WARNING: Exception thrown whilst processing POSTed parameters
    > java.io.IOException: Exception filling buffer with data from
    > underlying input stream: not an EAGAIN status, so perhaps disconnected
    > client?
    > at
    > org.apache.coyote.http11.InternalAprInputBuffer.fill(InternalAprInputBuffer­.java:
    > 825)
    > at org.apache.coyote.http11.InternalAprInputBuffer
    > $SocketInputBuffer.doRead(InternalAprInputBuffer.java:853)
    > at
    > org.apache.coyote.http11.filters.IdentityInputFilter.doRead(IdentityInputFi­lter.java:
    > 116)
    > at
    > org.apache.coyote.http11.InternalAprInputBuffer.doRead(InternalAprInputBuff­er.java:
    > 772)
    > at org.apache.coyote.Request.doRead(Request.java:419)
    > at
    > org.apache.catalina.connector.InputBuffer.realReadBytes(InputBuffer.java:
    > 265)
    > at org.apache.tomcat.util.buf.ByteChunk.substract(ByteChunk.java:403)
    > at org.apache.catalina.connector.InputBuffer.read(InputBuffer.java:
    > 280)
    > at
    > org.apache.catalina.connector.CoyoteInputStream.read(CoyoteInputStream.java­:
    > 193)
    > at org.apache.catalina.connector.Request.readPostBody(Request.java:
    > 2400)
    > at org.apache.catalina.connector.Request.parseParameters(Request.java:
    > 2379)
    > at org.apache.catalina.connector.Request.getParameter(Request.java:
    > 1005)
    > at
    > org.apache.catalina.connector.RequestFacade.getParameter(RequestFacade.java­:
    > 353)
    > ...
    > =========================


    It is a disconnect - something fails between the browser->apache-
    >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.

    -cheers,
    Manish
     
    Manish Pandit, Jul 26, 2007
    #2
    1. Advertising

  3. govus

    govus Guest

    Hi Manish,
    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.

    Jeff
     
    govus, Jul 27, 2007
    #3
  4. govus

    Guest

    Hi Jeff,

    Thanks for the response. I have a webapp which throws a similar
    exception which is pasted below. I am using Tomcat 5.5.23.

    WARNING: Exception thrown whilst processing POSTed parameters
    java.io.IOException: Socket read failed
    at org.apache.coyote.ajp.AjpAprProcessor.read(AjpAprProcessor.java:
    1035)
    at
    org.apache.coyote.ajp.AjpAprProcessor.readMessage(AjpAprProcessor.java:
    1156)
    at org.apache.coyote.ajp.AjpAprProcessor.receive(AjpAprProcessor.java:
    1088)
    at org.apache.coyote.ajp.AjpAprProcessor
    $SocketInputBuffer.doRead(AjpAprProcessor.java:1226)
    at org.apache.coyote.Request.doRead(Request.java:419)
    at
    org.apache.catalina.connector.InputBuffer.realReadBytes(InputBuffer.java:
    265)
    at org.apache.tomcat.util.buf.ByteChunk.substract(ByteChunk.java:403)
    at org.apache.catalina.connector.InputBuffer.read(InputBuffer.java:
    280)
    at
    org.apache.catalina.connector.CoyoteInputStream.read(CoyoteInputStream.java:
    193)
    at org.apache.catalina.connector.Request.readPostBody(Request.java:
    2400)
    at org.apache.catalina.connector.Request.parseParameters(Request.java:
    2379)
    at org.apache.catalina.connector.Request.getParameter(Request.java:
    1005)
    at
    org.apache.catalina.connector.RequestFacade.getParameter(RequestFacade.java:
    353)
    at
    com.ea.zoho.server.action.forms.TemplateMgr.execute(TemplateMgr.java:
    28)
    at
    org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:
    484)
    at
    org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:
    274)
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:
    1482)
    at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:
    525)
    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
    org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:
    210)
    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:
    151)
    at org.apache.coyote.ajp.AjpAprProcessor.process(AjpAprProcessor.java:
    444)
    at org.apache.coyote.ajp.AjpAprProtocol
    $AjpConnectionHandler.process(AjpAprProtocol.java:472)
    at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:
    1286)
    at java.lang.Thread.run(Thread.java:619)

    When exactly is this "socket read failed" thrown ? I have even tried
    changing the maxPostSize to a maximum value, but in vain.
    This exception seems to be thrown for each of the post request.

    Please help me with some pointers to overcome this issue.

    Thanks,
    Alex
     
    , Jul 31, 2007
    #4
  5. govus

    govus Guest

    Hi Alex,
    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.
     
    govus, Aug 8, 2007
    #5
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Selen
    Replies:
    0
    Views:
    2,707
    Selen
    May 28, 2004
  2. Replies:
    4
    Views:
    542
    james
    Dec 7, 2004
  3. =?Utf-8?B?VmFs?=
    Replies:
    0
    Views:
    3,168
    =?Utf-8?B?VmFs?=
    Jun 8, 2005
  4. jobs
    Replies:
    1
    Views:
    1,914
    Scott Roberts
    Nov 16, 2007
  5. Val
    Replies:
    0
    Views:
    200
Loading...

Share This Page