You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ode.apache.org by Rich Taylor <bh...@gmail.com> on 2007/07/10 21:30:05 UTC

WS-Addressing MessageID Header?

I'm trying to invoke an external service that fully supports WS-Addressing
but it is complaining that I'm missing the "MessageID" header.  I verified
that the soap request going off to the service does have the wsa:To and
wsa:Action headers in place, but _not_ the wsa:MessageID.    Has anyone else
had issues with this?   I'm using the trunk as of a few days ago.

I had a look at org.apache.ode.axis2.ExternalService and I don't see any
calls to Options.setMessageId() while setting up the Axis2 soap client.
This implies to me that Ode doesn't support that header, hence WS-Addressing
completely, but I might be missing something.

Here is the header of the message being sent from Ode to the  external
service:
<?xml version='1.0' encoding='UTF-8'?>
   <soapenv:Envelope xmlns:soapenv="
http://schemas.xmlsoap.org/soap/envelope/">
      <soapenv:Header>
         <addr:To xmlns:addr="http://www.w3.org/2005/08/addressing">
http://server1:8889/vhi-ws/model/CICSAcctsDemo</addr:To>
         <addr:Action xmlns:addr="http://www.w3.org/2005/08/addressing
"></addr:Action>
      </soapenv:Header>
      <soapenv:Body>
...


Here is the response from the server:
<?xml version="1.0" encoding="UTF-8"?>
   <soapenv:Envelope xmlns:vhi-fault="urn:xmlns:foo:vhi-ws:vhi-fault"
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="
http://www.w3.org/2001/XMLSchema" xmlns:wsa="
http://www.w3.org/2005/08/addressing" xmlns:wsrf-bf="
http://docs.oasis-open.org/wsrf/bf-2" xmlns:wsrf-r="
http://docs.oasis-open.org/wsrf/r-2"
xmlns:vhi-resource="urn:xmlns:foo:vhi-ws:vhi-resource">
      <soapenv:Header>

<wsa:MessageID>urn:uuid:e2a82fc9-2a7d-4100-ade7-0911ee502aa5</wsa:MessageID>
         <wsa:To></wsa:To>
         <wsa:RelatesTo></wsa:RelatesTo>

<wsa:Action>urn:xmlns:foo:vhi-ws:CICSAcctsDemo/CICSAcctsDemoPortType/GetAccountHistoryResponse</wsa:Action>
         <wsa:FaultDetail>
            <wsa:ProblemHeaderQName>wsa:MessageID</wsa:ProblemHeaderQName>
         </wsa:FaultDetail>
      </soapenv:Header>
      <soapenv:Body>
         <soapenv:Fault>
            <faultcode>wsa:MessageAddressingHeaderRequired</faultcode>
            <faultstring>A required header representing a Message Addressing
Property is not present.</faultstring>
            <detail>
               <vhi-fault:MessageAddressingHeaderRequiredFault>
                  <wsrf-bf:Timestamp>2007-07-10T12:09:07</wsrf-bf:Timestamp>
                  <wsrf-bf:Originator>
                     <wsa:Address>
http://server1:8889/vhi-ws/model/CICSAcctsDemo</wsa:Address>
                  </wsrf-bf:Originator>
                  <wsrf-bf:Description>A required header representing a
Message Addressing Property is not present.</wsrf-bf:Description>
               </vhi-fault:MessageAddressingHeaderRequiredFault>
            </detail>
         </soapenv:Fault>
      </soapenv:Body>
   </soapenv:Envelope>


Thanks,
Rich

Re: WS-Addressing MessageID Header?

Posted by Rich Taylor <bh...@gmail.com>.
Ok I wrote up an issue for this.  I'm not going to tackle this one myself
for fear that I am missing something.  I'm relatively new to the Ode source
and BPEL in general.  Thanks, Rich

On 7/11/07, Alex Boisvert <bo...@intalio.com> wrote:
>
> Hi Rich,
>
> Yes, that looks like a bug since we're breaking the WS-A spec here.  I'm
> guessing we can just stuff a UUID in the MessageID.  Can you file an
> issue?
> We'll get to it shortly or if you want to try it yourself, we can apply
> the
> patch that works for you.
>
> alex
>
>
> On 7/10/07, Rich Taylor <bh...@gmail.com> wrote:
> >
> > I'm trying to invoke an external service that fully supports
> WS-Addressing
> > but it is complaining that I'm missing the "MessageID" header.  I
> verified
> > that the soap request going off to the service does have the wsa:To and
> > wsa:Action headers in place, but _not_ the wsa:MessageID.    Has anyone
> > else
> > had issues with this?   I'm using the trunk as of a few days ago.
> >
> > I had a look at org.apache.ode.axis2.ExternalService and I don't see any
> > calls to Options.setMessageId() while setting up the Axis2 soap client.
> > This implies to me that Ode doesn't support that header, hence
> > WS-Addressing
> > completely, but I might be missing something.
> >
> > Here is the header of the message being sent from Ode to the  external
> > service:
> > <?xml version='1.0' encoding='UTF-8'?>
> >    <soapenv:Envelope xmlns:soapenv="
> > http://schemas.xmlsoap.org/soap/envelope/">
> >       <soapenv:Header>
> >          <addr:To xmlns:addr="http://www.w3.org/2005/08/addressing">
> > http://server1:8889/vhi-ws/model/CICSAcctsDemo</addr:To>
> >          <addr:Action xmlns:addr="http://www.w3.org/2005/08/addressing
> > "></addr:Action>
> >       </soapenv:Header>
> >       <soapenv:Body>
> > ...
> >
> >
> > Here is the response from the server:
> > <?xml version="1.0" encoding="UTF-8"?>
> >    <soapenv:Envelope xmlns:vhi-fault="urn:xmlns:foo:vhi-ws:vhi-fault"
> > xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="
> > http://www.w3.org/2001/XMLSchema" xmlns:wsa="
> > http://www.w3.org/2005/08/addressing" xmlns:wsrf-bf="
> > http://docs.oasis-open.org/wsrf/bf-2" xmlns:wsrf-r="
> > http://docs.oasis-open.org/wsrf/r-2"
> > xmlns:vhi-resource="urn:xmlns:foo:vhi-ws:vhi-resource">
> >       <soapenv:Header>
> >
> >
> >
> <wsa:MessageID>urn:uuid:e2a82fc9-2a7d-4100-ade7-0911ee502aa5</wsa:MessageID>
> >          <wsa:To></wsa:To>
> >          <wsa:RelatesTo></wsa:RelatesTo>
> >
> >
> >
> <wsa:Action>urn:xmlns:foo:vhi-ws:CICSAcctsDemo/CICSAcctsDemoPortType/GetAccountHistoryResponse</wsa:Action>
> >          <wsa:FaultDetail>
> >
> <wsa:ProblemHeaderQName>wsa:MessageID</wsa:ProblemHeaderQName>
> >          </wsa:FaultDetail>
> >       </soapenv:Header>
> >       <soapenv:Body>
> >          <soapenv:Fault>
> >             <faultcode>wsa:MessageAddressingHeaderRequired</faultcode>
> >             <faultstring>A required header representing a Message
> > Addressing
> > Property is not present.</faultstring>
> >             <detail>
> >                <vhi-fault:MessageAddressingHeaderRequiredFault>
> >
> >
> <wsrf-bf:Timestamp>2007-07-10T12:09:07</wsrf-bf:Timestamp>
> >                   <wsrf-bf:Originator>
> >                      <wsa:Address>
> > http://server1:8889/vhi-ws/model/CICSAcctsDemo</wsa:Address>
> >                   </wsrf-bf:Originator>
> >                   <wsrf-bf:Description>A required header representing a
> > Message Addressing Property is not present.</wsrf-bf:Description>
> >                </vhi-fault:MessageAddressingHeaderRequiredFault>
> >             </detail>
> >          </soapenv:Fault>
> >       </soapenv:Body>
> >    </soapenv:Envelope>
> >
> >
> > Thanks,
> > Rich
> >
>

Re: WS-Addressing MessageID Header?

Posted by Alex Boisvert <bo...@intalio.com>.
Hi Rich,

Yes, that looks like a bug since we're breaking the WS-A spec here.  I'm
guessing we can just stuff a UUID in the MessageID.  Can you file an issue?
We'll get to it shortly or if you want to try it yourself, we can apply the
patch that works for you.

alex


On 7/10/07, Rich Taylor <bh...@gmail.com> wrote:
>
> I'm trying to invoke an external service that fully supports WS-Addressing
> but it is complaining that I'm missing the "MessageID" header.  I verified
> that the soap request going off to the service does have the wsa:To and
> wsa:Action headers in place, but _not_ the wsa:MessageID.    Has anyone
> else
> had issues with this?   I'm using the trunk as of a few days ago.
>
> I had a look at org.apache.ode.axis2.ExternalService and I don't see any
> calls to Options.setMessageId() while setting up the Axis2 soap client.
> This implies to me that Ode doesn't support that header, hence
> WS-Addressing
> completely, but I might be missing something.
>
> Here is the header of the message being sent from Ode to the  external
> service:
> <?xml version='1.0' encoding='UTF-8'?>
>    <soapenv:Envelope xmlns:soapenv="
> http://schemas.xmlsoap.org/soap/envelope/">
>       <soapenv:Header>
>          <addr:To xmlns:addr="http://www.w3.org/2005/08/addressing">
> http://server1:8889/vhi-ws/model/CICSAcctsDemo</addr:To>
>          <addr:Action xmlns:addr="http://www.w3.org/2005/08/addressing
> "></addr:Action>
>       </soapenv:Header>
>       <soapenv:Body>
> ...
>
>
> Here is the response from the server:
> <?xml version="1.0" encoding="UTF-8"?>
>    <soapenv:Envelope xmlns:vhi-fault="urn:xmlns:foo:vhi-ws:vhi-fault"
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="
> http://www.w3.org/2001/XMLSchema" xmlns:wsa="
> http://www.w3.org/2005/08/addressing" xmlns:wsrf-bf="
> http://docs.oasis-open.org/wsrf/bf-2" xmlns:wsrf-r="
> http://docs.oasis-open.org/wsrf/r-2"
> xmlns:vhi-resource="urn:xmlns:foo:vhi-ws:vhi-resource">
>       <soapenv:Header>
>
>
> <wsa:MessageID>urn:uuid:e2a82fc9-2a7d-4100-ade7-0911ee502aa5</wsa:MessageID>
>          <wsa:To></wsa:To>
>          <wsa:RelatesTo></wsa:RelatesTo>
>
>
> <wsa:Action>urn:xmlns:foo:vhi-ws:CICSAcctsDemo/CICSAcctsDemoPortType/GetAccountHistoryResponse</wsa:Action>
>          <wsa:FaultDetail>
>             <wsa:ProblemHeaderQName>wsa:MessageID</wsa:ProblemHeaderQName>
>          </wsa:FaultDetail>
>       </soapenv:Header>
>       <soapenv:Body>
>          <soapenv:Fault>
>             <faultcode>wsa:MessageAddressingHeaderRequired</faultcode>
>             <faultstring>A required header representing a Message
> Addressing
> Property is not present.</faultstring>
>             <detail>
>                <vhi-fault:MessageAddressingHeaderRequiredFault>
>
>                   <wsrf-bf:Timestamp>2007-07-10T12:09:07</wsrf-bf:Timestamp>
>                   <wsrf-bf:Originator>
>                      <wsa:Address>
> http://server1:8889/vhi-ws/model/CICSAcctsDemo</wsa:Address>
>                   </wsrf-bf:Originator>
>                   <wsrf-bf:Description>A required header representing a
> Message Addressing Property is not present.</wsrf-bf:Description>
>                </vhi-fault:MessageAddressingHeaderRequiredFault>
>             </detail>
>          </soapenv:Fault>
>       </soapenv:Body>
>    </soapenv:Envelope>
>
>
> Thanks,
> Rich
>