Hello Sagar
But are this lines present before you call the sender
// invoke the start method first using it's StartPaylod
options.setAction("urn:tryEcho"); // this should add
the wsa:Action to your request message
sender.setOptions(options);
Regards
Josef Stadelmann
-----Ursprüngliche Nachricht-----
Von: Sagar Yerunkar [mailto:[EMAIL PROTECTED]
Gesendet: Mittwoch, 28. März 2007 07:15
An: [email protected]
Betreff: Re: AW: AW: [AXIS2] - Engaging addressing module on client
Hello,
I have engaged the addressing module on the cliente as well as the service.
For the service, i checked the admin page and confirmed that the addressing
module has been engaged.
On the client side, i have included the addressing .mar file in my classpath.
Hence i got this in my output
Mar 28, 2007 10:39:41 AM org.apache.axis2.deployment.DeploymentEngine doDeploy
INFO: Deploying module : addressing-1.1.1
and the following code did not throw any exceptions
try {
serviceClient.engageModule(new QName("addressing"));
} catch (AxisFault e) {
e.printStackTrace();
}
Regards,
Sagar M. Yerunkar
"Stadelmann Josef" <[EMAIL PROTECTED]>
03/28/2007 10:20 AM
Please respond to
[email protected]
To
<[email protected]>
cc
Subject
AW: AW: [AXIS2] - Engaging addressing module on client
Hello Sagar,
Is the addressing module deployed and ENGAGED both on client and server?
Josef
-----Ursprüngliche Nachricht-----
Von: Sagar Yerunkar [mailto:[EMAIL PROTECTED]
Gesendet: Mittwoch, 28. März 2007 06:24
An: [email protected]
Betreff: Re: AW: [AXIS2] - Engaging addressing module on client
Hello,
I checked my services.xml. It already has the actionMapping tag. However, the
<wsa:Action> header is not being added to the soap message.
<serviceGroup>
<service name="OwnService">
<description>
Own WS, two methods: tryPing and tryEcho
</description>
<parameter name="ServiceClass"
locked="false">userguide.OwnService</parameter>
<operation name="tryEcho">
<messageReceiver
class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>\
<actionMapping>urn:tryEcho</actionMapping>
</operation>
<operation name="tryPing">
<messageReceiver
class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/>
<actionMapping>urn:tryPing</actionMapping>
</operation>
</service>
</serviceGroup>
Regards,
Sagar M. Yerunkar
"Stadelmann Josef" <[EMAIL PROTECTED]>
03/27/2007 08:28 PM
Please respond to
[email protected]
To
<[email protected]>
cc
Subject
AW: [AXIS2] - Engaging addressing module on client
Hi Sagar
in your reply message you find
<wsa:Action>http://www.w3.org/2005/08/addressing/fault</wsa:Action>
Axis2 intends to say in conjuntion with
<wsa:FaultDetail>
<wsa:ProblemHeaderQName>wsa:Action</wsa:ProblemHeaderQName>
</wsa:FaultDetail>
and
<soapenv:Fault>
<faultcode>wsa:MessageAddressingHeaderRequired</faultcode>
<faultstring>A required header representing a Message Addressing
Property is not present</faultstring>
<detail />
</soapenv:Fault>
that you did not send a <wsa:Action header
Try adding an wsa:Action Header as shown below in the request message. This
header is missing, and that is what
axis2 intends to say you.
Check for ActionMapping in your service.xml, add it if not there, then you
migth have something like
......
<file:///C:/axis2-1.1/samples/userguide/src/userguide/example5/META-INF/services.xml#>
- <operation name="echo">
<messageReceiver class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"
/>
<actionMapping>urn:echo</actionMapping>
</operation>
.....
So yopur actionMaping wanted has to go into a SoapHeader
<wsa:Action>urn:echo</wsa:Action>
Regards
Josef
-----Ursprüngliche Nachricht-----
Von: Sagar Yerunkar [mailto:[EMAIL PROTECTED]
Gesendet: Dienstag, 27. März 2007 14:56
An: [email protected]
Betreff: Re: [AXIS2] - Engaging addressing module on client
Hello,
I have further noticed that if i only include the addressing .mar file in the
classpath (without changing any code), i get the exception
org.apache.axis2.AxisFault: A required header representing a Message Addressing
Property is not present
at
org.apache.axis2.util.CallbackReceiver.receive(CallbackReceiver.java:65)
at org.apache.axis2.engine.AxisEngine.receiveFault(AxisEngine.java:610)
at
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:326)
at
org.apache.axis2.transport.http.HTTPWorker.service(HTTPWorker.java:230)
at ...
My soap reqest is being sent but i get an Error in the reply
Here is my soap request caught using TCP Monitor:
POST /axis2/services/OwnService HTTP/1.1
SOAPAction: "urn:anonOutInOp"
User-Agent: Axis2
Host: 127.0.0.1:9000
Transfer-Encoding: chunked
Content-Type: text/xml; charset=UTF-8
27e
<?xml version='1.0' encoding='UTF-8'?>
<soapenv:Envelope xmlns:wsa="http://www.w3.org/2005/08/addressing"
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header>
<wsa:To>http://localhost:9000/axis2/services/OwnService</wsa:To>
<wsa:ReplyTo>
<wsa:Address>http://www.w3.org/2005/08/addressing/anonymous</wsa:Address>
</wsa:ReplyTo>
<wsa:MessageID>urn:uuid:9B8FDACFBCA1263A121174999707376</wsa:MessageID>
< wsa:Action>urn:echo</wsa:Action> !!! depends on what you have in
service.xml as ActionMapping for the method wanted, I asume urn:echo
</soapenv:Header>
<soapenv:Body>
<example1:tryEcho xmlns:example1="http://example1.org/example1"
sleepTime="4000" code="0">
<example1:Text>Payload echo string</example1:Text>
</example1:tryEcho>
</soapenv:Body>
</soapenv:Envelope>0
Here is my soap response :
HTTP/1.1 500 Internal Server Error
Server: Apache-Coyote/1.1
Content-Type: text/xml;charset=UTF-8
Transfer-Encoding: chunked
Date: Tue, 27 Mar 2007 12:48:28 GMT
Connection: close
3cc
<?xml version='1.0' encoding='UTF-8'?>
<soapenv:Envelope xmlns:wsa="http://www.w3.org/2005/08/addressing"
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header>
<wsa:To>http://www.w3.org/2005/08/addressing/anonymous</wsa:To>
<wsa:ReplyTo>
<wsa:Address>http://www.w3.org/2005/08/addressing/none</wsa:Address>
</wsa:ReplyTo>
<wsa:MessageID>urn:uuid:AF393873831A7C3EF31174999708410</wsa:MessageID>
<wsa:Action>http://www.w3.org/2005/08/addressing/fault</wsa:Action>
<wsa:RelatesTo
wsa:RelationshipType="http://www.w3.org/2005/08/addressing/reply">urn:uuid:9B8FDACFBCA1263A121174999707376</wsa:RelatesTo>
<wsa:FaultDetail>
<wsa:ProblemHeaderQName>wsa:Action</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 />
</soapenv:Fault>
</soapenv:Body>
</soapenv:Envelope>0
I have engaged the addressing module on the server side.
Kindly help.
Regards,
Sagar M. Yerunkar
"Thilina Gunarathne" <[EMAIL PROTECTED]>
03/25/2007 10:13 AM
Please respond to
[email protected]
To
[email protected]
cc
Subject
Re: [AXIS2] - Engaging addressing module on client
> How do i specify a .mar file in the classpath? Eclipse allows me to add no
> files other than jars and zips to the classpath.
Yes.. If you are using Eclipse your choices are limited to the second option...
ConfigurationContext configContext =
ConfigurationContextFactory.createConfigurationContextFromFileSystem("repository","path
to axis2.xml or null");
ServiceClient sender = new ServiceClient(configContext, null);
~Thilina
>
> Please can someone guide me?
>
> Regards,
>
> Sagar M. Yerunkar
>
> ______________________________________________________________________
>
--
Thilina Gunarathne - http://www.wso2.com - http://thilinag.blogspot.com
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
______________________________________________________________________
______________________________________________________________________
______________________________________________________________________
______________________________________________________________________
______________________________________________________________________
______________________________________________________________________