This content has been marked as final.
Show 8 replies
-
1. Re: he body of the request is lost when you send POST
jaikiran Sep 30, 2009 12:42 PM (in response to johnbat26)Post the client code which sends this request.
-
2. Re: he body of the request is lost when you send POST
jfclere Oct 1, 2009 2:56 AM (in response to johnbat26)"AS: JBoss AS 4.2.2.GA (with Tomcat 5.5.X (JBossWeb-2.0.1.GA ) inside)"
No JBossWeb-2.0.1.GA is based on Tomcat 6.0.x.
jaikiran See https://issues.apache.org/bugzilla/attachment.cgi?id=24267 I think that the client code is there. -
3. Re: he body of the request is lost when you send POST
erasmomarciano Oct 1, 2009 5:42 AM (in response to johnbat26)How can I check the versione tomcat into my Jboss
-
5. Re: he body of the request is lost when you send POST
jaikiran Oct 1, 2009 7:27 AM (in response to johnbat26)"jfrederic.clere@jboss.com" wrote:
"AS: JBoss AS 4.2.2.GA (with Tomcat 5.5.X (JBossWeb-2.0.1.GA ) inside)"
No JBossWeb-2.0.1.GA is based on Tomcat 6.0.x.
Yeah, that's one of the things that we told JohnBat over #jboss IRC where he asked pinged for inputs. But the X-Powered-By header output seems to be adding to the confusion :) :X-Powered-By: Servlet 2.4; JBoss-4.2.2.GA (build: SVNTag=JBoss_4_2_2_GA date=200710221139)/Tomcat-5.5
-
6. Re: he body of the request is lost when you send POST
johnbat26 Oct 2, 2009 3:35 AM (in response to johnbat26)see last post in bug: https://issues.apache.org/bugzilla/show_bug.cgi?id=47797
How I may upgrade jBossWEb up to 2.1.4 in Jboss 4.2.2 ? -
7. Re: he body of the request is lost when you send POST
johnbat26 Oct 2, 2009 3:52 AM (in response to johnbat26)I embed several count of code in Http11Processor and StandardEngineValve.
In Http11Processor,process() I added next after invoke
inputBuffer.parseRequestLine(); :if (request.unparsedURI().equals("/lost-post/generic")) { log.error("----------------------------------------------------------"); StringBuffer stringBuffer = new StringBuffer(); for (int i = 0; i < inputBuffer.buf.length; i++) { stringBuffer.append((char) inputBuffer.buf); } log.error(stringBuffer); log.error("LENGTH: "+ inputBuffer.buf.length); log.error("++++++++++++++++++++++++++++++++++++++++++++++"); }
and in StandardEngineValve.invoke() I added next code:if (request.getWrapper().getName().equals("LostPostGenericServlet")) { log.error("-----------------------------------------------------------------------------"); StringBuffer stringBuffer = new StringBuffer(); InputStream input = request.getInputStream(); int i=request.getContentLength(); int c; while (((c = input. read()) != -1) && (--i > 0)) { stringBuffer.append((char) c); } input.close(); log.error(stringBuffer); PrintWriter out = response.getWriter(); if (stringBuffer.length() > 0) { StringBuffer xmlBuffer = new StringBuffer(); xmlBuffer.append("<?xml version='1.0' encoding='UTF-8'?>"); xmlBuffer.append("<methodCall>"); xmlBuffer.append("OK"); xmlBuffer.append("</methodCall>"); out.print(xmlBuffer); System.out.println("OK"); } else { StringBuffer xmlBuffer2 = new StringBuffer(); xmlBuffer2.append("<?xml version='1.0' encoding='UTF-8'?>"); xmlBuffer2.append("<methodCall>"); xmlBuffer2.append("FAILED"); xmlBuffer2.append("</methodCall>"); out.print(xmlBuffer2); System.out.println("FAILED"); } out.close(); log.error("++++++++++++++++++++++++++++++++++++++++++++++"); return; }
-----------------------
So added code in Http11Processor print entire buffer, whereas code in
StandardEngineValve print content of body from CoyoteInputStream.
When I increase loading at tomcat (with help of Grinder) happen this error,
and code in Http11Processor print normal request with body, whereas code in
StandardEngineValve print empty string:... 2009-10-01 20:11:30,588 ERROR [Http11Processor] ----------------------------------------------------------------------------- 2009-10-01 20:11:30,589 ERROR [Http11Processor] POST /lost-post/generic HTTP/1.1 Accept-Encoding: gzip,deflate Content-Type: text/xml;charset=UTF-8 SOAPAction: "" User-Agent: Jakarta Commons-HttpClient/3.1 Host: 172.20.0.3:8080 Content-Length: 389 <?xml version="1.0" encoding="UTF-8"?> <methodCall> <methodName>EISTMPull.getEntitlement</methodName> <params> <param><value><string>00020215B9FE</string></value></param> <param><value><base64> </base64></value></param> <param><value><array><data> <value><string>DTV</string></value> <value><string>PPV</string></value> </data></array></value></param> </params> </methodCall>e2:$Version="1"" ntent-type:application/x-www-form-urlencoded; charset=UTF-88 content-length:633 j_username=00%3A02%3A02%3A14%3A47%3A2e&j_password=702007D314410 2009-10-01 20:11:30,589 ERROR [Http11Processor] LENGTH: 8192 2009-10-01 20:11:30,589 ERROR [Http11Processor] ++++++++++++++++++++++++++++++++++++++++++++++ 2009-10-01 20:11:30,589 ERROR [StandardEngineValve] ----------------------------------------------------------------------------- 2009-10-01 20:11:30,589 ERROR [StandardEngineValve] 2009-10-01 20:11:30,590 ERROR [StandardEngineValve] ++++++++++++++++++++++++++++++++++++++++++++++
Therefore error happen inside tomcat ! During parsing body
of request. Often this happen during increase loading at other applications
deployed in tomcat.
I conclude several tomcat classes, which uses in JBossWeb, because don't know,
which version of tomcat used in JBossWeb 2.0.3.GA
Many thanks in advance for any some help. -
8. Re: he body of the request is lost when you send POST
johnbat26 Oct 2, 2009 6:25 AM (in response to johnbat26)I changed connector to Http11NioConnector:
<Connector port="8080" address="${jboss.bind.address}" protocol="org.apache.coyote.http11.Http11NioProtocol" redirectPort="8443"/>
this problem persist :(