Hi Samisa and Fred,
I have tested the solution given by samisa and tests are working fine. 167 tests are passing against Axis C++ services with xerces-c2_2_0. Fred, could you please comment. Thanks Chinthana -----Original Message----- From: Samisa Abeysinghe [mailto:[EMAIL PROTECTED] Sent: Monday, September 12, 2005 10:34 AM To: Apache AXIS C Developers List Subject: Re: Most of the test are failing Oh I made a little mistake, the change should be if( (m_eProtocolType == APTHTTP1_0) || (m_eProtocolType == APTHTTP1_1) ) On 9/11/05, Samisa Abeysinghe <[EMAIL PROTECTED]> wrote: > Going through the code, I basically wasted lot of time trying to fix > this problem and failed. > > However, I found a simpler solution and could make it work by making a > simple change to the client transport. > > On line 1538 of HTTPTransport.cpp we have > if( m_eProtocolType == APTHTTP1_0) > Going through the code, this means that we seem to assume that if the > server is using HTTP 1.1, it would always use chunking. This is false > for axis C++ and Apache as it could use content length while using > HTTP 1.1, and this is why the tests are failing. > > If we change line 1538 of HTTPTransport.cpp to > if( (m_eProtocolType == APTHTTP1_0) || (m_eProtocolType == APTHTTP1_0) ) > > then the problem would be solved. > > However, I did not commit this as I want to veryfy that this fix is > correct and in line with changes done by Fred. > Fred, could you please comment. > > P.S. The content length given on server message seems coorect to me as > it gives the correct body length od the HTTP message. The trailing > /r/n/r/n is part of HTTP and I do not think that the content length > header should be counting that. > > Thanks, > Samisa... > > On 9/2/05, Samisa Abeysinghe <[EMAIL PROTECTED]> wrote: > > Obviously server side content length calculation seem to be in error. > > in src/server/apache2/Apache2Transport.cpp and in > > src/server/apache/ApacheTransport.cpp files. > > > > I had a glance at the code and seems like there is a chance to miss few bytes. > > Will have a detailed look. > > > > Thanks, > > Samisa... > > > > On 9/2/05, John Hawkins <[EMAIL PROTECTED]> wrote: > > > > > > So, can you fix it Fred? > > > > > > > > > > > > > > > > > > Fred Preston/UK/[EMAIL PROTECTED] > > > > > > 02/09/2005 11:45 > > > > > > Please respond to > > > "Apache AXIS C Developers List" > > > > > > > > > To "Apache AXIS C Developers List" <[email protected]> > > > > > > cc > > > > > > Subject RE: Most of the test are failing > > > > > > > > > > > > > > > > > > > > > Hi Chinthana, > > > I've just been looking at the following response:- > > > > > > HTTP/1.1 200 OK > > > Date: Fri, 02 Sep 2005 08:30:48 GMT > > > Server: Apache/2.0.52 (Win32) > > > Content-Length: 399 > > > Content-Type: text/xml > > > > > > <?xml version='1.0' encoding='utf-8' ?> > > > <SOAP-ENV:Envelope > > > xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" > > > xmlns:xsd="http://www.w3.org/2001/XMLSchema" > > > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> > > > <SOAP-ENV:Body> > > > <ns1:addResponse > > > xmlns:ns1="http://localhost/axis/Calculator"> > > > <addReturn xsi:type="xsd:int">5</addReturn> > > > </ns1:addResponse> > > > </SOAP-ENV:Body> > > > </SOAP-ENV:Envelope> > > > > > > When I look at this in something like debug, I get the following hex > > > dump... > > > > > > -d > > > 0C61:0100 48 54 54 50 2F 31 2E 31-20 32 30 30 20 4F 4B 0D HTTP/1.1 200 > > > OK. > > > 0C61:0110 0A 44 61 74 65 3A 20 46-72 69 2C 20 30 32 20 53 .Date: Fri, 02 > > > S > > > 0C61:0120 65 70 20 32 30 30 35 20-30 38 3A 33 30 3A 34 38 ep 2005 > > > 08:30:48 > > > 0C61:0130 20 47 4D 54 0D 0A 53 65-72 76 65 72 3A 20 41 70 GMT..Server: > > > Ap > > > 0C61:0140 61 63 68 65 2F 32 2E 30-2E 35 32 20 28 57 69 6E ache/2.0.52 > > > (Win > > > 0C61:0150 33 32 29 0D 0A 43 6F 6E-74 65 6E 74 2D 4C 65 6E > > > 32)..Content-Len > > > 0C61:0160 67 74 68 3A 20 33 39 39-0D 0A 43 6F 6E 74 65 6E gth: > > > 399..Conten > > > 0C61:0170 74 2D 54 79 70 65 3A 20-74 65 78 74 2F 78 6D 6C t-Type: > > > text/xml > > > 0C61:0180 0D 0A 0D 0A 3C 3F 78 6D-6C 20 76 65 72 73 69 6F ....<?xml > > > versio > > > 0C61:0190 6E 3D 27 31 2E 30 27 20-65 6E 63 6F 64 69 6E 67 n='1.0' > > > encoding > > > 0C61:01A0 3D 27 75 74 66 2D 38 27-20 3F 3E 0D 0A 3C 53 4F ='utf-8' > > > ?>..<SO > > > 0C61:01B0 41 50 2D 45 4E 56 3A 45-6E 76 65 6C 6F 70 65 20 > > > AP-ENV:Envelope > > > 0C61:01C0 78 6D 6C 6E 73 3A 53 4F-41 50 2D 45 4E 56 3D 22 > > > xmlns:SOAP-ENV=" > > > 0C61:01D0 68 74 74 70 3A 2F 2F 73-63 68 65 6D 61 73 2E 78 > > > http://schemas.x > > > 0C61:01E0 6D 6C 73 6F 61 70 2E 6F-72 67 2F 73 6F 61 70 2F > > > mlsoap.org/soap/ > > > 0C61:01F0 65 6E 76 65 6C 6F 70 65-2F 22 20 78 6D 6C 6E 73 envelope/" > > > xmlns > > > 0C61:0200 3A 78 73 64 3D 22 68 74-74 70 3A 2F 2F 77 77 77 > > > :xsd="http://www > > > 0C61:0210 2E 77 33 2E 6F 72 67 2F-32 30 30 31 2F 58 4D 4C > > > .w3.org/2001/XML > > > 0C61:0220 53 63 68 65 6D 61 22 20-78 6D 6C 6E 73 3A 78 73 Schema" > > > xmlns:xs > > > 0C61:0230 69 3D 22 68 74 74 70 3A-2F 2F 77 77 77 2E 77 33 > > > i="http://www.w3 > > > 0C61:0240 2E 6F 72 67 2F 32 30 30-31 2F 58 4D 4C 53 63 68 > > > .org/2001/XMLSch > > > 0C61:0250 65 6D 61 2D 69 6E 73 74-61 6E 63 65 22 3E 0D 0A > > > ema-instance">.. > > > 0C61:0260 3C 53 4F 41 50 2D 45 4E-56 3A 42 6F 64 79 3E 0D > > > <SOAP-ENV:Body>. > > > 0C61:0270 0A 3C 6E 73 31 3A 61 64-64 52 65 73 70 6F 6E 73 > > > .<ns1:addRespons > > > 0C61:0280 65 20 78 6D 6C 6E 73 3A-6E 73 31 3D 22 68 74 74 e > > > xmlns:ns1="htt > > > 0C61:0290 70 3A 2F 2F 6C 6F 63 61-6C 68 6F 73 74 2F 61 78 > > > p://localhost/ax > > > 0C61:02A0 69 73 2F 43 61 6C 63 75-6C 61 74 6F 72 22 3E 0D > > > is/Calculator">. > > > 0C61:02B0 0A 3C 61 64 64 52 65 74-75 72 6E 20 78 73 69 3A .<addReturn > > > xsi: > > > 0C61:02C0 74 79 70 65 3D 22 78 73-64 3A 69 6E 74 22 3E 35 > > > type="xsd:int">5 > > > 0C61:02D0 3C 2F 61 64 64 52 65 74-75 72 6E 3E 0D 0A 3C 2F > > > </addReturn>..</ > > > 0C61:02E0 6E 73 31 3A 61 64 64 52-65 73 70 6F 6E 73 65 3E > > > ns1:addResponse> > > > 0C61:02F0 0D 0A 3C 2F 53 4F 41 50-2D 45 4E 56 3A 42 6F 64 > > > ..</SOAP-ENV:Bod > > > 0C61:0300 79 3E 0D 0A 3C 2F 53 4F-41 50 2D 45 4E 56 3A 45 > > > y>..</SOAP-ENV:E > > > 0C61:0310 6E 76 65 6C 6F 70 65 3E-0D 0A -- -- -- -- -- -- > > > nvelope>........ > > > > > > 0317 - 0184 = 791 - 388 = 403 > > > > > > The end of the HTTP header is delimited by the sequence 'CRLFCRLF'. Thus > > > the first character of the message is the following character '<', that is > > > at location 0x0184 (or 388 in decimal). If we add the content length to > > > this offset we should be at the end of the message. But, 388 + 399 is 787 > > > (or 0x0313) and if we look where this is in the message, rather than being > > > at the CRLF that follows '>' (i.e. the message delimiter) we are are > > > 'ope>CRLF' and this is why the transport is complaining. The actual message > > > length is 403 bytes which is 4 bytes bigger than the specified content > > > length. > > > > > > Regards, > > > > > > Fred Preston. > > > > > > > > > > > > "Chinthana C. Dinapala" <[EMAIL PROTECTED]> > > > > > > 02/09/2005 10:59 > > > Please respond to "Apache AXIS C Developers List" > > > To: "Apache AXIS C Developers List" > > > <[email protected]> > > > cc: > > > Subject: RE: Most of the test are failing > > > > > > > > > > > > > > > > > > > > > > > > Hi Fred, > > > > > > > > > > > > I have attached two files Calculator and MathOpsDoc. > > > > > > > > > > > > Thanks > > > > > > Chinthana > > > > > > > > > > > > > > > > > > ________________________________ > > > > > > > > > > > > > > > From:Fred Preston [mailto:[EMAIL PROTECTED] > > > Sent: Friday, September 02, 2005 3:51 PM > > > To: Apache AXIS C Developers List > > > Subject: RE: Most of the test are failing > > > > > > > > > > > > > > > Hi Chinthana, > > > Can you send me your exact response as an attachment (i.e. just as > > > it is on the wire) and I'll run it through the transport layer to see what > > > is going on... > > > > > > Regards, > > > > > > Fred Preston. > > > > > > > > > > > > > > > "Chinthana C. Dinapala" <[EMAIL PROTECTED]> > > > > > > 02/09/2005 10:15 > > > Please respond to "Apache AXIS C Developers List" > > > > > > To: "Apache AXIS C Developers List" > > > <[email protected]> > > > cc: > > > Subject: RE: Most of the test are failing > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > Hi John, > > > > > > > > > > > > I'm using axis C++ services in windows. With both xerces-c_2_6 and > > > xerces-c_2_2_0. > > > > > > > > > > > > Here is with full header. > > > > > > > > > > > > Request............................ > > > > > > > > > > > > POST /axis/Calculator HTTP/1.1 > > > > > > Host: localhost:8888 > > > > > > Content-Type: text/xml; charset=UTF-8 > > > > > > SOAPAction: "Calculator#add" > > > > > > Content-Length: 403 > > > > > > > > > > > > <?xml version='1.0' encoding='utf-8' ?> > > > > > > <SOAP-ENV:Envelope > > > xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" > > > xmlns:xsd="http://www.w3.org/2001/XMLSchema" > > > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> > > > > > > <SOAP-ENV:Body> > > > > > > <ns1:add xmlns:ns1="http://localhost/axis/Calculator"> > > > > > > <in0 xsi:type="xsd:int">2</in0> > > > > > > <in1 xsi:type="xsd:int">3</in1> > > > > > > </ns1:add> > > > > > > </SOAP-ENV:Body> > > > > > > </SOAP-ENV:Envelope> > > > > > > > > > > > > Respond................................... > > > > > > > > > > > > HTTP/1.1 200 OK > > > > > > Date: Fri, 02 Sep 2005 08:30:48 GMT > > > > > > Server: Apache/2.0.52 (Win32) > > > > > > Content-Length: 399 > > > > > > Content-Type: text/xml > > > > > > > > > > > > <?xml version='1.0' encoding='utf-8' ?> > > > > > > <SOAP-ENV:Envelope > > > xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" > > > xmlns:xsd="http://www.w3.org/2001/XMLSchema" > > > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> > > > > > > <SOAP-ENV:Body> > > > > > > <ns1:addResponse > > > xmlns:ns1="http://localhost/axis/Calculator"> > > > > > > <addReturn xsi:type="xsd:int">5</addReturn> > > > > > > </ns1:addResponse> > > > > > > </SOAP-ENV:Body> > > > > > > </SOAP-ENV:Envelope> > > > > > > > > > > > > Thanks > > > > > > Chinthana > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > ________________________________ > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > From:John Hawkins [mailto:[EMAIL PROTECTED] > > > Sent:Friday, September 02, 2005 3:08 PM > > > To:Apache AXIS C Developers List > > > Subject:Re: Most of the test are failing > > > > > > > > > > > > > > > Hi, > > > > > > Fred put in some changes yesterday, to the transport which means it handles > > > the incoming messages differently. This looks like it broke - although we > > > are not seeing any problem on AIX or windows against WAS. Perhpas this is a > > > server-side transport issue - are you using the Axis C server? > > > > > > The key bit here is what does the http header look like? Can you put up the > > > whole of the tcmpon capture so Fred can take it and see what went wrong. > > > What platform are you on? > > > > > > cheers, > > > John. > > > > > > > > > > > > > > > > > > > > > "Chinthana C. Dinapala" <[EMAIL PROTECTED]> > > > > > > 02/09/2005 09:35 > > > > > > > > > > > > > > > Please respond to > > > > > > > > > > > > "Apache AXIS C Developers List" > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > To > > > > > > > > > > > > > > > "Apache AXIS C Developers List" <[email protected]> > > > > > > > > > > > > cc > > > > > > > > > > > > > > > > > > > > > > > > > > > Subject > > > > > > > > > > > > > > > Most of the test are failing > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > Hi Folks, > > > > > > Today only following test are got client execution pass against C++ > > > services. > > > AxisBench > > > AxisBench_TTest > > > ExceptionTestDoc_TTest > > > > > > I'm getting following exception. > > > HTTPTransportException:Input streaming error while getting data HTTP header > > > message must be chunked or have a content length. > > > > > > I have checked the respond from server through TCP monitor and seems to me > > > is correct. > > > > > > For e.g. following are the request and respond from the TCP monitor. > > > > > > Request..................... > > > > > > <?xml version='1.0' encoding='utf-8' ?> > > > <SOAP-ENV:Envelope > > > xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" > > > xmlns:xsd="http://www.w3.org/2001/XMLSchema" > > > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> > > > <SOAP-ENV:Body> > > > <ns1:add xmlns:ns1="http://localhost/axis/Calculator"> > > > <in0 xsi:type="xsd:int">2</in0> > > > <in1 xsi:type="xsd:int">3</in1> > > > </ns1:add> > > > </SOAP-ENV:Body> > > > </SOAP-ENV:Envelope> > > > > > > Respond.............................. > > > > > > <?xml version='1.0' encoding='utf-8' ?> > > > <SOAP-ENV:Envelope > > > xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" > > > xmlns:xsd="http://www.w3.org/2001/XMLSchema" > > > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> > > > <SOAP-ENV:Body> > > > <ns1:addResponse > > > xmlns:ns1="http://localhost/axis/Calculator"> > > > <addReturn xsi:type="xsd:int">5</addReturn> > > > </ns1:addResponse> > > > </SOAP-ENV:Body> > > > </SOAP-ENV:Envelope> > > > > > > Thanks > > > Chinthana > > > > > > > > > Creating competitive advantage > > > > > > > > > > > > #### image001.gif has been removed from this note on September 02 2005 by > > > Fred Preston > > > > > > > > > > > > #### TCPMon_Calculator has been removed from this note on September 02 2005 > > > by Fred Preston > > > #### TCPMon_MathOpsDoc has been removed from this note on September 02 2005 > > > by Fred Preston > > > > > > > > >
