[prev in list] [next in list] [prev in thread] [next in thread] 

List:       soap-user
Subject:    Re: SOAPAction header must be last?
From:       David.Pool () kp ! org
Date:       2003-03-29 0:08:41
[Download RAW message or body]

Well actually I was using "NetTool" from CapeClear to investigate this. If 
you are not familiar with this tool, it has two parts. One is called "HTTP 
Tool" which lets you construct a HTTP request and send it to the server. 
The second tool is "Tunnel Monitor", which captures the request and 
response and displays them, like the TCPTunnelGui. I was using the HTTP 
Tool which let me discover the problem with the SOAPAction header.

Server side I've got WebSphere 4.04 running with SOAP version 2.2, I 
believe.

When the HTTP headers look like this, the SOAP service response correctly:
POST /MemberWebService/servlet/rpcrouter HTTP/1.0
Host: localhost:5555
Content-Type: text/xml; charset=utf-8
Content-Length: 818
SOAPAction: ""

If the HTTP headers are like this, I get a fault:
POST /MemberWebService/servlet/rpcrouter HTTP/1.0
Host: localhost:5555
Content-Type: text/xml; charset=utf-8
SOAPAction: ""
Content-Length: 818

This is the fault:
<SOAP-ENV:Fault>
<faultcode>SOAP-ENV:Protocol</faultcode>
<faultstring>Content length must be specified.</faultstring>
<faultactor>/MemberWebService/servlet/rpcrouter</faultactor>
</SOAP-ENV:Fault>

I discovered this using an Axis client. My SOAP clients seem to always put 
the SOAPAction header last, so it's never been a problem. I'll send code 
if you want, but I don't believe that can influence the way the HTTP 
headers are written, or read.

I agree it's odd, and I'm wondering if it's a WebSphere problem of some 
kind.





Scott Nichol <snicholnews@scottnichol.com>
03/28/2003 02:36 PM
Please respond to soap-user

 
        To:     soap-user@ws.apache.org
        cc: 
        Subject:        Re: SOAPAction header must be last?


This behavior has never been reported before.  It is odd since the 
server code runs as a servlet; the servlet container parsers the 
headers which Apache SOAP accesses through the servlet API.

Can you provide the code that would allow me to reproduce this?

On 17 Mar 2003 at 15:37, David.Pool@kp.org wrote:

> I've discovered that the SOAPAction header must be the last HTTP header. 

> If it is not any headers following that are ignored, and usually an 
error 
> is generated as a result of this. For example, if "Content-length" 
follows 
> "SOAPAction", a Fault is generated saying "Content length must be 
> specified.". Is this a known bug or "limitation" of ApacheSOAP?
> 
> Thanks,
> David
> 
> 


Scott Nichol

Do not reply directly to this e-mail address,
as it is filtered to only receive e-mail from
specific mailing lists.





[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic