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 David Illsley <da...@gmail.com> on 2007/07/01 11:18:17 UTC

Re: [Axis2}Addressing Problem

On 30/06/07, Amila Suriarachchi <am...@gmail.com> wrote:
> thank you very much for your replay.
>
> I checked with an axis2 server and it sends the To header correctly.
> So is this a WCF bug?

Yes :-(
David

>
> I'll try to run axis2 against the mircrosoft test suite. to figure out and
> problems with axis2 before next release.
>
> thanks,
> Amila.
>
>
> On 6/29/07, David Illsley < davidillsley@gmail.com> wrote:
> >
> > I can't be sure without further digging, but it looks like the problem
> > is that the WCF endpoint has omitted the wsa:To header from the
> > response, despite the fact that the Submission spec[1] says that it's
> > mandatory:
> >
> > /wsa:To
> >     This REQUIRED element (of type xs:anyURI) provides the value for
> > the [destination] property.
> >
> > David
> > [1]
> http://www.w3.org/Submission/2004/SUBM-ws-addressing-20040810/
> >
> > On 29/06/07, Amila Suriarachchi < amilasuriarachchi@gmail.com> wrote:
> > > I generated Code for the following wsdl [1] which is listed in the
> microsoft
> > > interop site.
> > > used the following command to codegen with a build I locally created for
> the
> > > current svn.
> > >
> > > sh wsdl2java.sh -uri
> > >
> http://131.107.72.15/WSAddressingCR_Service_WCF/WSAddressingAugust2004.svc?wsdl
> > > -o ~/projects/microsoftInterop/addressing/ -ap -uw -u
> -p
> > > org.tempuri.submission.echo
> > >
> > > try to send a request to CustomBinding_Echo2 in following way
> > >
> > > public void testCustomBinding_Echo2() {
> > >         try {
> > >             WSAddressingCRCustomBinding_Echo2Stub stub
> =
> > > new WSAddressingCRCustomBinding_Echo2Stub(
> > >                     configurationContext,
> > >                     "
> > >
> http://131.107.72.15/WSAddressingCR_Service_WCF/WSAddressingAugust2004.svc/Soap11/Manual
> ");
> > >
> > > stub._getServiceClient().getOptions().setProperty(
> > > AddressingConstants.WS_ADDRESSING_VERSION,
> > >
> > > AddressingConstants.Submission.WSA_NAMESPACE);
> > >
> > > stub._getServiceClient().getOptions().setProperty(
> AddressingConstants.INCLUDE_OPTIONAL_HEADERS
> > > ,true);
> > >
> > >            // this is to redirect the message to tcpmon with out
> changing
> > > the To field
> > >
> > > stub._getServiceClient().getOptions().setProperty(
> Constants.Configuration.TRANSPORT_URL,
> > >
> > > "
> http://localhost:8085/WSAddressingCR_Service_WCF/WSAddressingAugust2004.svc/Soap11/Manual
> ");
> > >
> > >             String result = stub.Echo("Test String");
> > >             assertEquals(result,"Test String");
> > >        } catch (AxisFault axisFault) {
> > >             axisFault.printStackTrace();
> > >              fail();
> > >         } catch (java.rmi.RemoteException e) {
> > >             fail();
> > >         }
> > > }
> > >
> > > here configuration context is point to defult axis2.xml and repository.
> > >
> > > I got the follwing exception
> > > org.apache.axis2.AxisFault: A required message information header, To,
> > > MessageID, or Action, is not present.
> > >     at
> > >
> org.apache.axis2.addressing.AddressingFaultsHelper.triggerAddressingFault
> (AddressingFaultsHelper.java
> > > :352)
> > >     at
> > >
> org.apache.axis2.addressing.AddressingFaultsHelper.triggerMessageAddressingRequiredFault(AddressingFaultsHelper.java:272)
> > >     at
> > >
> org.apache.axis2.handlers.addressing.AddressingSubmissionInHandler.checkForMandatoryHeaders
> > > (AddressingSubmissionInHandler.java:53)
> > >     at
> > >
> org.apache.axis2.handlers.addressing.AddressingInHandler.extractAddressingInformation(AddressingInHandler.java:185)
> > >     at
> > >
> org.apache.axis2.handlers.addressing.AddressingInHandler.invoke
> > > (AddressingInHandler.java:94)
> > >     at
> org.apache.axis2.engine.Phase.invoke(Phase.java:288)
> > >     at
> > >
> org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:225)
> > >     at
> > > org.apache.axis2.engine.AxisEngine.receive
> (AxisEngine.java
> > > :146)
> > >     at
> > >
> org.apache.axis2.description.OutInAxisOperationClient.handleResponse(OutInAxisOperation.java:345)
> > >     at
> > >
> org.apache.axis2.description.OutInAxisOperationClient.send
> (OutInAxisOperation.java:388)
> > >     at
> > >
> org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:202)
> > >     at
> > >
> org.apache.axis2.client.OperationClient.execute(OperationClient.java
> :142)
> > >     at
> > >
> org.tempuri.submission.echo.WSAddressingCRCustomBinding_Echo2Stub.Echo
> > > (WSAddressingCRCustomBinding_Echo2Stub.java:178)
> > >     at
> > >
> org.tempuri.submission.echo.WSAddressingCRSubmissionTest.testCustomBinding_Echo2
> (WSAddressingCRSubmissionTest.java:184)
> > >     at sun.reflect.NativeMethodAccessorImpl.invoke0
> (Native
> > > Method)
> > >     at
> > >
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java
> :39)
> > >     at
> > >
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> > >     at java.lang.reflect.Method.invoke (Method.java:585)
> > >
> > > Here is the request and response messages
> > > <?xml version='1.0' encoding='UTF-8'?>
> > >    <soapenv:Envelope xmlns:wsa="
> > > http://schemas.xmlsoap.org/ws/2004/08/addressing "
> > >
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
> > >       <soapenv:Header>
> > >
> > > <wsa:To>
> http://131.107.72.15/WSAddressingCR_Service_WCF/WSAddressingAugust2004.svc/Soap11/Manual</wsa:To>
> > >          <wsa:ReplyTo>
> > >
> > > <wsa:Address>
> http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:Address>
> > >          </wsa:ReplyTo>
> > >
> > >
> <wsa:MessageID>urn:uuid:A26E71AFEBE8477B8D1183128682560</wsa:MessageID>
> > >          <wsa:Action>http://example.org/action/echoIn
> > > </wsa:Action>
> > >       </soapenv:Header>
> > >       <soapenv:Body>
> > >          <s1:echoIn xmlns:s1=" http://example.org/echo">Test
> > > String</s1:echoIn>
> > >       </soapenv:Body>
> > >    </soapenv:Envelope>0
> > >
> > > response
> > > <s:Envelope
> > > xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"
> > > xmlns:a="
> > > http://schemas.xmlsoap.org/ws/2004/08/addressing ">
> > >    <s:Header>
> > >       <a:Action s:mustUnderstand="1">
> > > http://example.org/action/echoOut</a:Action>
> > >
> > >
> <a:RelatesTo>urn:uuid:A26E71AFEBE8477B8D1183128682560</a:RelatesTo>
> > >    </s:Header>
> > >    <s:Body>
> > >       <echoOut xmlns=" http://example.org/echo ">Test String</echoOut>
> > >    </s:Body></s:Envelope>
> > >
> > > A part from CustomBinding_Echo2 and CustomBinding_Echo3 ports in
> submmision
> > > wsdl all other ports works fine.
> > > (i.e final version wsdl works fine for all casses)
> > >
> > > Can someone please explain the reason?
> > >
> > > Thanks
> > > Amila.
> > >
> > > [1]
> > >
> http://131.107.72.15/WSAddressingCR%5FService%5FWCF/WSAddressingAugust2004.svc?wsdl
> > >
> [2]http://131.107.72.15/WSAddressingCR%5FService%5FWCF/
> > > - first page
> > > --
> > > Amila Suriarachchi,
> > > WSO2 Inc.
> >
> >
> > --
> > David Illsley - IBM Web Services Development
> >
> >
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail:
> axis-dev-unsubscribe@ws.apache.org
> > For additional commands, e-mail: axis-dev-help@ws.apache.org
> >
> >
>
>
>
> --
> Amila Suriarachchi,
> WSO2 Inc.


-- 
David Illsley - IBM Web Services Development

---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org