org.apache.axis2.engine.AddressingBasedDispatcher can be engaged this
way:
1. Remove all other dispatchers except
org.apache.axis2.engine.AddressingBasedDispatcher in axis2.xml
<phaseOrder type="InFlow">
<!-- System pre defined phases -->
<phase name="Transport">
<handler name="AddressingBasedDispatcher"
class="org.apache.axis2.engine.AddressingBasedDispatcher">
<order phase="Transport"/>
</handler>
<!-- handler name="RequestURIBasedDispatcher"
class="org.apache.axis2.engine.RequestURIBasedDispatcher">
<order phase="Transport"/>
</handler>
<handler name="SOAPActionBasedDispatcher"
class="org.apache.axis2.engine.SOAPActionBasedDispatcher">
<order phase="Transport"/>
</handler-->
</phase>
2. Add addressing module ref in axis2.xml
<module ref="addressing"/>
4. Add addressing-1.09.mar to the classpath
5. In the service client code engage the WS-Addressing module like this:
stub = new Axis2SampleDocLitServiceStub();
stub._getServiceClient().getOptions().setTo(new
EndpointReference("http://localhost:8080/axis2/services/Axis2SampleDocLi
tService"));
stub._getServiceClient().getOptions().setTransportInProtocol(Constants.T
RANSPORT_HTTP);
stub._getServiceClient().engageModule(new
QName(Constants.MODULE_ADDRESSING));
6. Now service request will have WS-Addressing headers in it:
POST /axis2/services/Axis2SampleDocLitService HTTP/1.1 SOAPAction:
"echoString" User-Agent: Axis2 Host: 127.0.0.1:7070 Transfer-Encoding:
chunked Content-Type: text/xml; charset=UTF-8 266 <?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:7070/axis2/services/Axis2SampleDocLitService</w
sa:To>
<wsa:ReplyTo>
<wsa:Address>http://www.w3.org/2005/08/addressing/anonymous</wsa:Address
>
</wsa:ReplyTo>
<wsa:MessageID>urn:uuid:FAD4DA98156D9EE2F811611845611221</wsa:MessageID>
<wsa:Action>echoString</wsa:Action>
</soapenv:Header>
<soapenv:Body>
<echoStringParam
xmlns="http://userguide.axis2.apache.org/xsd">echo</echoStringParam>
</soapenv:Body>
</soapenv:Envelope>
7. Axis engine will now call findService and findOperation methods of
org.apache.axis2.engine.AddressingBasedDispatcher to get the service
method.
-----Original Message-----
From: Eran Chinthaka [mailto:[EMAIL PROTECTED]
Sent: Tuesday, October 17, 2006 11:59 PM
To: [email protected]
Subject: Re: dispatchers types in AXIS2
Yadav, Yogendra (IT) wrote:
> Thanx for the info. Please also tell me what should I do to make use
> of these dispatchers:
> 1. Is dispatch mechanism specified in WSDL?
> or
> 2. Is this a parameter provided to wsdl2java during code generation?
You have this question even after reading this
(http://www.wso2.net/tutorials/axis2/java/2006/06/18/operation-service-m
essage-is-destined-to)?
--------------------------------------------------------
NOTICE: If received in error, please destroy and notify sender. Sender does not
intend to waive confidentiality or privilege. Use of this email is prohibited
when received in error.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]