You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by Steve Loughran <st...@iseran.com> on 2003/08/08 00:43:13 UTC

MustUnderstand faults

When getting a DIME service to work w/ WSE1.0, I discovered that WSE was 
send a MustUnderstand header with WS-routing info. Axis, not 
understanding such headers, threw an exception.

Unfortunately, the exception got thrown after the pivot point was 
reached -as far as my service cared, all was well, yet the fault was 
still being thrown.

1. What is the rules about when mustunderstand headers are processed? Is 
that they must be understood or faulted, but there is no rule as to 
whether the action can be dispatched first.

2. how about we add some xml element to an AxisFault/SOAPFault that 
indicates that an exception was thrown *After* the pivot point. CORBA 
does this with its exceptions, and it may be useful for clients.

If I'm going to write (2), what is the best way for me to go about doing 
  it.

-steve


Re: MustUnderstand faults

Posted by Steve Loughran <st...@iseran.com>.
Simon Fell wrote:

> On Thu, 07 Aug 2003 15:43:13 -0700, in soap you wrote:
> 
> 
>>When getting a DIME service to work w/ WSE1.0, I discovered that WSE was 
>>send a MustUnderstand header with WS-routing info. Axis, not 
>>understanding such headers, threw an exception.
>>
>>Unfortunately, the exception got thrown after the pivot point was 
>>reached -as far as my service cared, all was well, yet the fault was 
>>still being thrown.
>>
>>1. What is the rules about when mustunderstand headers are processed? Is 
>>that they must be understood or faulted, but there is no rule as to 
>>whether the action can be dispatched first.
>>
>>2. how about we add some xml element to an AxisFault/SOAPFault that 
>>indicates that an exception was thrown *After* the pivot point. CORBA 
>>does this with its exceptions, and it may be useful for clients.
>>
>>If I'm going to write (2), what is the best way for me to go about doing 
>> it.
>>
>>-steve
> 
> 
> The SOAP spec calls for the message to be only processed if it fully
> understands all the mandatory parts. Sounds to me that your service
> should never get called in this case.

which means of course, that all MU handlers must be on the inbound path 
of the message, before it gets to the pivot point. Hmmm.

I still like the idea of an element in a soapfault that says whether 
something got to the method or not, as it can be used in other faults.


Re: MustUnderstand faults

Posted by Steve Loughran <st...@iseran.com>.
Rick Kellogg wrote:

> Someone documented this issue on the Axis Wiki.  I think it was someone
> from Microsoft actually but cannot be sure. 
> 
> Take a look:
> http://nagoya.apache.org/wiki/apachewiki.cgi?AxisProjectPages/DotNetInte
> rop
> 

It was me. The issue is not turning off the headers, so much as the fact 
that the MU test was happening after the pivot.



RE: MustUnderstand faults

Posted by Rick Kellogg <rm...@earthlink.net>.
Someone documented this issue on the Axis Wiki.  I think it was someone
from Microsoft actually but cannot be sure. 

Take a look:
http://nagoya.apache.org/wiki/apachewiki.cgi?AxisProjectPages/DotNetInte
rop

Rick


-----Original Message-----
From: Simon Fell [mailto:soap@zaks.demon.co.uk] 
Sent: Thursday, August 07, 2003 9:14 PM
To: axis-dev@ws.apache.org
Subject: Re: MustUnderstand faults

On Thu, 07 Aug 2003 15:43:13 -0700, in soap you wrote:

>
>When getting a DIME service to work w/ WSE1.0, I discovered that WSE
was 
>send a MustUnderstand header with WS-routing info. Axis, not 
>understanding such headers, threw an exception.
>
>Unfortunately, the exception got thrown after the pivot point was 
>reached -as far as my service cared, all was well, yet the fault was 
>still being thrown.
>
>1. What is the rules about when mustunderstand headers are processed?
Is 
>that they must be understood or faulted, but there is no rule as to 
>whether the action can be dispatched first.
>
>2. how about we add some xml element to an AxisFault/SOAPFault that 
>indicates that an exception was thrown *After* the pivot point. CORBA 
>does this with its exceptions, and it may be useful for clients.
>
>If I'm going to write (2), what is the best way for me to go about
doing 
>  it.
>
>-steve

The SOAP spec calls for the message to be only processed if it fully
understands all the mandatory parts. Sounds to me that your service
should never get called in this case.

Cheers
Simon
www.pocketsoap.com



Re: MustUnderstand faults

Posted by Simon Fell <so...@zaks.demon.co.uk>.
On Thu, 07 Aug 2003 15:43:13 -0700, in soap you wrote:

>
>When getting a DIME service to work w/ WSE1.0, I discovered that WSE was 
>send a MustUnderstand header with WS-routing info. Axis, not 
>understanding such headers, threw an exception.
>
>Unfortunately, the exception got thrown after the pivot point was 
>reached -as far as my service cared, all was well, yet the fault was 
>still being thrown.
>
>1. What is the rules about when mustunderstand headers are processed? Is 
>that they must be understood or faulted, but there is no rule as to 
>whether the action can be dispatched first.
>
>2. how about we add some xml element to an AxisFault/SOAPFault that 
>indicates that an exception was thrown *After* the pivot point. CORBA 
>does this with its exceptions, and it may be useful for clients.
>
>If I'm going to write (2), what is the best way for me to go about doing 
>  it.
>
>-steve

The SOAP spec calls for the message to be only processed if it fully
understands all the mandatory parts. Sounds to me that your service
should never get called in this case.

Cheers
Simon
www.pocketsoap.com