Hi,

There are such constraints in my opinion that we need to follow when we use ws-addressing:

1. If the client side engage the addressing module, then an API has to be used to enforce the wsa:Action part is set. Currently we can use the options.setAction(), however this will *ALSO* set the SOAPAction in HTTP header.

2. On the server side, if addressing is *NOT* enforced for a special service, then the service should ignore any wrong parts in the wsa of the soap header.

3. On the server side, if the addressing is enforced, then the service should report fault in case of the fault in wsa part of the soap header or no addressing info in the soap header.


Dong


On 4/11/06, Eran Chinthaka <[EMAIL PROTECTED]> wrote:
The required flag is with us, except we do not have wsa:UsingAddressing
in wsdl generation.

-- Chinthaka

Glen Daniels wrote:
> Hi Eran!
>
> Eran Chinthaka wrote:
>> When you do not get an action header when addressing is engaged, u
>> should throw a fault, according to the spec. I hope you know that part.
>
> Hm.  Quick question here - I think there is (or at least should be) a
> difference between a Module being "engaged" and "required", right?  I'm
> pretty sure we had this discussion before, but the way I think this
> works is as follows:
>
> CHOICE 1 : Addressing engaged, "required" flag set false
>
> In this case the addressing handlers are deployed, and if someone sends
> us addressing headers, we'll respond with addressing headers.  When
> sending as a client, we'll use addressing on a per-message basis as
> determined by whether the client has set the correct properties.  When
> generating WSDL for a service that's been configured like this, we
> should see "wsa:UsingAddressing" without the wsdl:required attribute. In
> this configuration, we should NOT throw a fault if we receive a message
> without addressing headers (unless we're on the client side and we sent
> a request with addressing headers).
>
> CHOICE 2 : Addressing engaged, "required" flag set true
>
> This is like the last case except that we DO require addressing in all
> received messages - therefore we should throw a fault any time we don't
> see the addressing headers.
>
> CHOICE 3 : Addressing not engaged
>
> Nothing happens.
>
> -----
>
> Does this sound right?  The "required" flag above is a property in the
> addressing module's context/configuration.
>
> --Glen
>





Reply via email to