Re: SOAPAction and Default Action

Anish,

R2745 in BP 1.1 [1] defines both the absence of SOAPAction or it's value 
as empty string as empty string in the HTTP header field. I interpret 
that as empty string is not a valid value and thus implicit Action 
header should be generated in the SOAP message if SOAPAction is either 
not present or present with an empty string.

[1] http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html#R2745

-Arun

Anish Karmarkar wrote:
> Prasad,
> 
> I tend to think the exact opposite. An empty string is a value, so I 
> tend to think of #2 as having specified the SOAPAction value.
> 
> -Anish
> -- 
> 
> Prasad Yendluri wrote:
>> Hi Arun,
>>
>> Since it says "where a SOAPAction _value _is specified",  I tend to 
>> think it covers #2 also, as a value had not been specified for 
>> SOAPAction, considering empty string is not a "value". I agree however 
>> that it would be clearer to exclude SOAPAction empty string case 
>> explicitly.
>>
>> Regards,
>> Prasad
>>
>> Arun Gupta wrote:
>>>
>>> Section 4.4.1 of WSDL Binding [1] says:
>>>
>>> -- cut here --
>>> In the absence of a wsaw:Action attribute on a WSDL input element 
>>> where a SOAPAction value is specified, the value of the [action] 
>>> property for the input message is the value of the SOAPAction specified.
>>> -- cut here --
>>>
>>> Consider the following 3 different SOAP bindings for an operation in 
>>> WSDL 1.1:
>>>
>>> 1). <soap:operation soapAction="bindingSOAPAction"/>
>>>
>>> 2). <soap:operation soapAction=""/>
>>>
>>> 3). <soap:operation/>
>>>
>>> In 1)., SOAPAction is clearly specified. In 3). SOAPAction is clearly 
>>> not specified. Should 2). be considered as specified or not specified ?
>>>
>>> A literal reading of the spec will mean that SOAPAction is specified, 
>>> even though blank. I've seen 2). as a more common style in WSDLs. If 
>>> there happens to more than one operation in a portType (not uncommon 
>>> at all) and all the operation use 2)., then all the operations will 
>>> have exactly same wsa:Action within a portType.
>>>
>>> I think the wording of the spec should be changed to specify that 
>>> only a non-empty SOAPAction overrides the default Action.
>>>
>>> [1] http://www.w3.org/TR/2006/CR-ws-addr-wsdl-20060529/#explicitaction
>>>
>>> Thanks,
>>> -Arun

-- 
got Web Services ?
Download and Contribute Web Services Interoperability Technology (WSIT)
http://java.sun.com/webservices/interop

Received on Friday, 21 July 2006 01:58:54 UTC