Amit
.NET cannot REQUIRE these headers. They have very well defined meaning
according to the SOAP specifications and they are not required
attributes. If .NET were to require these then it would not be
compliant with the WS-Addressing specification. In particular, Axis2
has interoperated with .NET on WS-Addressing in the past.
If its not working then its probably some other problem. Have you got
an error log from .NET?
Paul
On 1/2/07, Amit G Soni <[EMAIL PROTECTED]> wrote:
> Hi Paul,
>
> Basically I am invoking third party webservices which is in .NET and
> having these entire attributes requirement. So I think better to write
> my own Addressing handler and include in axis2.xml?
>
> What you suggest?? And if it is true then can you help me out that what
> are all things I have to do. Or any tutorial which you can aware of.
>
> Thanks,
> Amit Soni
>
> -----Original Message-----
> From: Paul Fremantle [mailto:[EMAIL PROTECTED]
> Sent: Tuesday, January 02, 2007 4:19 PM
> To: [email protected]
> Subject: Re: soap header in axis2
>
> Amit
>
> I don't believe that you need the actor - next tag. That simply
> indicates that whoever reads the header first must act upon it.
> However, almost all soap systems will behave like that.
>
> Having a mustUnderstand tag is more important. Of course if you are
> targeting a system that DOES understand WS-Addressing this will make
> no difference. The difference will come if you send the message to a
> system that doesn't understand WS-A. In that case it will not fail,
> whereas with mustUnderstand='1' it should.
>
> By the way mustUnderstand='0' can be left off as that is the default.
>
> Unfortunately, I don't believe there is any way of forcing
> mustUnderstand on in the current Axis2 Addressing module. I will raise
> a JIRA.
>
> If the server you are using does support WS-Addressing then you can
> safely leave off those attributes. Can I suggest you try it.
>
> If you really need a workaround, we can probably code up a handler
> that will fix up the headers for you.
>
> Paul
>
>
>
>
>
> On 1/2/07, Amit G Soni <[EMAIL PROTECTED]> wrote:
> > Hi Paul,
> >
> > I am able to send a request with wsse and wsa header parameter. Within
> > which wsse header tag is ok but in wsa:action and wsa:to tag I need to
> > include namespace (xmlns) and some more attributes. So the original
> > request of soap header is looks like:
> >
> > <wsa:To>urn:EvolutionBenefits:Services:V1:CardholderService</wsa:To>
> >
> > <wsa:Action>
> > http://services.bennycentral.com/Cardholder/v1:helloWorldIn
> > </wsa:Action>
> >
> > But within wsa:To and wsa:Action I need to add some attribute. So
> which
> > is looks like:
> >
> > <wsa:To xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing"
> > soapenv:actor="http://schemas.xmlsoap.org/soap/actor/next"
> > soapenv:mustUnderstand="1">
> > urn:EvolutionBenefits:Services:V1:CardholderService
> > </wsa:To>
> >
> > <wsa:Action
> xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing"
> >
> > soapenv:actor="http://schemas.xmlsoap.org/soap/actor/next"
> > soapenv:mustUnderstand="0">
> > http://services.bennycentral.com/Cardholder/v1:helloWorldIn
> > </wsa:Action>
> >
> >
> > So basically I want to include some of the attributes in wsa:Action
> and
> > wsa:To tags. So if you have some idea regarding this then please let
> me
> > know.
> >
> > Thanks,
> > Amit Soni
> >
> > -----Original Message-----
> > From: Paul Fremantle [mailto:[EMAIL PROTECTED]
> > Sent: Saturday, December 30, 2006 4:17 PM
> > To: [email protected]
> > Subject: Re: soap header in axis2
> >
> > Amit
> >
> > I haven't figured out the problem yet! I don't see anything obvious
> > with your axis2.xml.
> >
> > What happens if you try with the standard axis2.xml? Normally for a
> > client, I would use the standard axis2.xml and then add
> > ServiceClient.engageModule("rampart") in my code.
> >
> > Paul
> >
> > On 12/29/06, Amit G Soni <[EMAIL PROTECTED]> wrote:
> > > Hi Paul,
> > >
> > > I am trying rampart with version 1.0 but it gives me following error
> > > along with the mail I am also attaching the client code and
> axis2.xml
> > >
> > > [java] org.apache.axis2.deployment.DeploymentException: Invalid
> > > phases please recheck axis2.xml {0} for the handler {1}; nested
> > > exception is:
> > > [java] org.apache.axis2.deployment.DeploymentException:
> > Invalid
> > > phases please recheck axis2.xml {0} for the handler {1}
> > > [java] at
> > >
> >
> org.apache.axis2.deployment.DeploymentEngine.loadRepository(DeploymentEn
> > > gine.java:117)
> > > [java] at
> > >
> >
> org.apache.axis2.deployment.FileSystemConfigurator.getAxisConfiguration(
> > > FileSystemConfigurator.java:120)
> > > [java] at
> > >
> >
> org.apache.axis2.context.ConfigurationContextFactory.createConfiguration
> > > Context(ConfigurationContextFactory.java:38)
> > > [java] at
> > >
> >
> org.apache.axis2.context.ConfigurationContextFactory.createConfiguration
> > > ContextFromFileSystem(ConfigurationContextFactory.java:90)
> > > [java] at com.test.TestClient.main(TestClient.java:18)
> > > [java] at
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> > > Method)
> > > [java] at
> > >
> >
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
> > > a:39)
> > > [java] at
> > >
> >
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
> > > Impl.java:25)
> > > [java] at java.lang.reflect.Method.invoke(Method.java:324)
> > > [java] at
> > > org.apache.tools.ant.taskdefs.ExecuteJava.run(ExecuteJava.java:217)
> > > [java] at
> > >
> >
> org.apache.tools.ant.taskdefs.ExecuteJava.execute(ExecuteJava.java:152)
> > > [java] at
> > org.apache.tools.ant.taskdefs.Java.run(Java.java:745)
> > > [java] at
> > > org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:199)
> > > [java] at
> > > org.apache.tools.ant.taskdefs.Java.execute(Java.java:102)
> > > [java] at
> > > org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
> > > [java] at
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> > > Method)
> > > [java] at
> > >
> >
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
> > > a:39)
> > > [java] at
> > >
> >
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
> > > Impl.java:25)
> > > [java] at java.lang.reflect.Method.invoke(Method.java:324)
> > > [java] at
> > >
> >
> org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:1
> > > 05)
> > > [java] at org.apache.tools.ant.Task.perform(Task.java:342)
> > > [java] at
> > org.apache.tools.ant.Target.execute(Target.java:357)
> > > [java] at
> > > org.apache.tools.ant.Target.performTasks(Target.java:385)
> > > [java] at
> > > org.apache.tools.ant.Project.executeSortedTargets(Project.java:1292)
> > > [java] at
> > > org.apache.tools.ant.Project.executeTarget(Project.java:1261)
> > > [java] at
> > >
> >
> org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecut
> > > or.java:41)
> > > [java] at
> > > org.apache.tools.ant.Project.executeTargets(Project.java:1144)
> > > [java] at org.apache.tools.ant.Main.runBuild(Main.java:698)
> > > [java] at org.apache.tools.ant.Main.startAnt(Main.java:199)
> > > [java] at
> > > org.apache.tools.ant.launch.Launcher.run(Launcher.java:298)
> > > [java] at
> > > org.apache.tools.ant.launch.Launcher.main(Launcher.java:104)
> > > [java] Caused by:
> > org.apache.axis2.deployment.DeploymentException:
> > > Invalid phases please recheck axis2.xml {0} for the handler {1}
> > > [java] at
> > >
> >
> org.apache.axis2.deployment.util.PhasesInfo.getGlobalInflow(PhasesInfo.j
> > > ava:111)
> > > [java] at
> > >
> >
> org.apache.axis2.deployment.DeploymentEngine.validateSystemPredefinedPha
> > > ses(DeploymentEngine.java:817)
> > > [java] at
> > >
> >
> org.apache.axis2.deployment.DeploymentEngine.loadRepository(DeploymentEn
> > > gine.java:115)
> > > [java] ... 30 more
> > > [java] __________________1
> > >
> > > Thanks,
> > > Amit Soni
> > >
> > > -----Original Message-----
> > > From: Paul Fremantle [mailto:[EMAIL PROTECTED]
> > > Sent: Thursday, December 28, 2006 8:45 PM
> > > To: [email protected]
> > > Subject: Re: soap header in axis2
> > >
> > > Amit
> > >
> > > You seem to have cut out the phases from axis2.xml. The config needs
> > > the phases defined. That is how it figures out how to interleave the
> > > security handlers. If you take the standard axis2.xml and add those
> > > lines:
> > > <module ref="rampart" />
> > > <parameter name="OutflowSecurity">
> > > <action>
> > > <items>UsernameToken Timestamp</items>
> > > <user>wfws</user>
> > >
> > > <passwordCallbackClass>com.test.PWCallback</passwordCallbackClass>
> > > </action>
> > > </parameter>
> > >
> > > Paul
> > >
> > > On 12/28/06, Amit G Soni <[EMAIL PROTECTED]> wrote:
> > > > Hi Paul,
> > > >
> > > > Thanks a lot for all of your help.
> > > >
> > > > I have executed the same wsdl with axis-1.4 successfully but in
> > axis2
> > > it
> > > > gives these error. I between I have downloaded the rampart-1.0.mar
> > > file
> > > > but when I am running following line of code it gives me
> exception.
> > > >
> > > > ConfigurationContext context = ConfigurationContextFactory
> > > > .createConfigurationContextFromFileSystem(
> > > > "resources", "resources/axis2.xml");
> > > >
> > > >
> > > > log4j:WARN No appenders could be found for logger
> > > > (org.apache.axiom.om.impl.builder.StAXOMBuilder).
> > > > log4j:WARN Please initialize the log4j system properly.
> > > > org.apache.axis2.deployment.DeploymentException: Invalid phases
> > please
> > > > recheck axis2.xml {0} for the handler {1}; nested exception is:
> > > > org.apache.axis2.deployment.DeploymentException: Invalid
> > > phases
> > > > please recheck axis2.xml {0} for the handler {1}
> > > > at
> > > >
> > >
> >
> org.apache.axis2.deployment.DeploymentEngine.loadRepository(DeploymentEn
> > > > gine.java:117)
> > > > at
> > > >
> > >
> >
> org.apache.axis2.deployment.FileSystemConfigurator.getAxisConfiguration(
> > > > FileSystemConfigurator.java:120)
> > > > at
> > > >
> > >
> >
> org.apache.axis2.context.ConfigurationContextFactory.createConfiguration
> > > > Context(ConfigurationContextFactory.java:38)
> > > > at
> > > >
> > >
> >
> org.apache.axis2.context.ConfigurationContextFactory.createConfiguration
> > > > ContextFromFileSystem(ConfigurationContextFactory.java:90)
> > > > at com.test.TestClient.main(TestClient.java:15)
> > > > Caused by: org.apache.axis2.deployment.DeploymentException:
> Invalid
> > > > phases please recheck axis2.xml {0} for the handler {1}
> > > > at
> > > >
> > >
> >
> org.apache.axis2.deployment.util.PhasesInfo.getGlobalInflow(PhasesInfo.j
> > > > ava:111)
> > > > at
> > > >
> > >
> >
> org.apache.axis2.deployment.DeploymentEngine.validateSystemPredefinedPha
> > > > ses(DeploymentEngine.java:817)
> > > > at
> > > >
> > >
> >
> org.apache.axis2.deployment.DeploymentEngine.loadRepository(DeploymentEn
> > > > gine.java:115)
> > > > ... 4 more
> > > > Exception in thread "main"
> > > >
> > > > I have attached the axis2.xml file along with this also.
> > > >
> > > > Thanks,
> > > > Amit Soni
> > > >
> > > > -----Original Message-----
> > > > From: Paul Fremantle [mailto:[EMAIL PROTECTED]
> > > > Sent: Thursday, December 28, 2006 8:01 PM
> > > > To: [email protected]
> > > > Subject: Re: soap header in axis2
> > > >
> > > > Amit
> > > >
> > > > You seem to have found a bug in the WSDL2Java toolkit. I can't see
> > > > anything obviously wrong with your WSDL, and it validates with
> both
> > > > Eclipse and Axis1.4. Can you please raise a JIRA including your
> > > > WSDL/XSDs as an attachment?
> > > >
> > > > Here is the link to rampart1.0 in the meantime:
> > > >
> > http://apache.rmplc.co.uk/ws/axis2/modules/rampart/1_0/rampart-1.0.mar
> > > >
> > > > Paul
> > > >
> > > > On 12/28/06, Amit G Soni <[EMAIL PROTECTED]> wrote:
> > > > > Hi Paul,
> > > > >
> > > > > I am trying to find rampath-1.0 but I am not able to fine any
> link
> > > > from
> > > > > which version 1.0 I can download.
> > > > >
> > > > > But after that I am trying the same with Axis2-1.1
> > > > >
> > > > > But in this case it gives me following exception.
> > > > >
> > > > > C:\axis211>wsdl2java -uri c:\test\CardholderService.wsdl -p
> > com.test
> > > > -d
> > > > > none
> > > > > Using AXIS2_HOME: C:\Java\axis2-1.1
> > > > > Using JAVA_HOME: C:\Java\j2sdk1.4.2_13
> > > > > Retrieving schema at 'CardholderData.xsd', relative to
> > > > 'file:/c:/test/'.
> > > > > Retrieving schema at 'CardholderMessages.xsd', relative to
> > > > > 'file:/c:/test/'.
> > > > > Retrieving schema at 'CardholderData.xsd', relative to
> > > > > 'file:/c:/test/CardholderMessages.xsd'.
> > > > > Retrieving schema at 'OperationResults.xsd', relative to
> > > > > 'file:/c:/test/CardholderMessages.xsd'.
> > > > > Retrieving schema at 'OperationResults.xsd', relative to
> > > > > 'file:/c:/test/'.
> > > > > Dec 28, 2006 7:10:25 PM
> > > > > org.apache.axis2.description.WSDL11ToAxisServiceBuilder
> > > > populateService
> > > > > SEVERE: java.lang.NullPointerException
> > > > > Exception in thread "main"
> > > > > org.apache.axis2.wsdl.codegen.CodeGenerationException: Error
> > parsing
> > > > > WSDL
> > > > > at
> > > > >
> > > >
> > >
> >
> org.apache.axis2.wsdl.codegen.CodeGenerationEngine.<init>(CodeGeneration
> > > > > Engine.java:112)
> > > > > at
> org.apache.axis2.wsdl.WSDL2Code.main(WSDL2Code.java:32)
> > > > > at
> org.apache.axis2.wsdl.WSDL2Java.main(WSDL2Java.java:21)
> > > > > Caused by: org.apache.axis2.AxisFault: null; nested exception
> is:
> > > > > java.lang.NullPointerException
> > > > > at
> > > > >
> > > >
> > >
> >
> org.apache.axis2.description.WSDL11ToAxisServiceBuilder.populateService(
> > > > > WSDL11ToAxisServiceBuilder.java:250)
> > > > > at
> > > > >
> > > >
> > >
> >
> org.apache.axis2.wsdl.codegen.CodeGenerationEngine.<init>(CodeGeneration
> > > > > Engine.java:103)
> > > > > ... 2 more
> > > > > Caused by: java.lang.NullPointerException
> > > > > at
> > > > >
> > > >
> > >
> >
> org.apache.axis2.description.WSDL11ToAxisServiceBuilder.populateService(
> > > > > WSDL11ToAxisServiceBuilder.java:235)
> > > > > ... 3 more
> > > > >
> > > > > Can you have any idea why it is happens.
> > > > >
> > > > > I am also attaching my wsdl file along with the mail.
> > > > >
> > > > > Thanks,
> > > > > Amit Soni
> > > > >
> > > > >
> > > > > -----Original Message-----
> > > > > From: Paul Fremantle [mailto:[EMAIL PROTECTED]
> > > > > Sent: Thursday, December 28, 2006 6:30 PM
> > > > > To: [email protected]
> > > > > Subject: Re: soap header in axis2
> > > > >
> > > > > Amit
> > > > >
> > > > > No, rampart 1.1 is expected to be used with Axis2 1.1.
> > > > >
> > > > > If you can move to 1.1 you should, because of the large number
> of
> > > bugs
> > > > > fixed!
> > > > >
> > > > > Otherwise there is rampart1.0 available.
> > > > >
> > > > > Paul
> > > > >
> > > > > On 12/28/06, Amit G Soni <[EMAIL PROTECTED]> wrote:
> > > > > > Hi Paul,
> > > > > >
> > > > > > Thanks, for reply.
> > > > > >
> > > > > > I am using axis2-1.0.
> > > > > >
> > > > > > Is rampart1.1 is compatible with axis2-1.0 because I am
> getting
> > > some
> > > > > > errors when I am initializing the Configuration. I have
> attached
> > > the
> > > > > > axis2.xml file along with the mail. Following line of code
> gives
> > > me
> > > > an
> > > > > > error.
> > > > > >
> > > > > >
> > > > > > ConfigurationContext context = ConfigurationContextFactory
> > > > > > .createConfigurationContextFromFileSystem(
> > > > > > "resources", "resources/axis2.xml");
> > > > > >
> > > > > > If you have some idea then please let me know.
> > > > > >
> > > > > >
> > > > > > axis2.xml
> > > > > >
> > > > > > <?xml version="1.0" encoding="UTF-8"?>
> > > > > > <axisconfig name="AxisJava2.0">
> > > > > > <module ref="rampart" />
> > > > > > <parameter name="OutflowSecurity">
> > > > > > <action>
> > > > > > <items>UsernameToken Timestamp</items>
> > > > > > <user>wfws</user>
> > > > > >
> > > > > >
> > <passwordCallbackClass>com.test.PWCallback</passwordCallbackClass>
> > > > > > </action>
> > > > > > </parameter>
> > > > > >
> > > > > > <parameter name="hotdeployment"
> > > locked="false">true</parameter>
> > > > > > <parameter name="hotupdate"
> locked="false">false</parameter>
> > > > > > <parameter name="enableMTOM"
> > locked="false">false</parameter>
> > > > > > <parameter name="sendStacktraceDetailsWithFaults"
> > > > > > locked="false">true</parameter>
> > > > > > <parameter name="DrillDownToRootCauseForFaultReason"
> > > > > > locked="false">false</parameter>
> > > > > > <parameter name="userName"
> locked="false">admin</parameter>
> > > > > > <parameter name="password"
> locked="false">axis2</parameter>
> > > > > > <parameter name="manageTransportSession"
> > > > > > locked="false">false</parameter>
> > > > > > <parameter name="enableRESTInAxis2MainServlet"
> > > > > > locked="true">true</parameter>
> > > > > > <parameter name="disableREST"
> > locked="true">false</parameter>
> > > > > > <parameter name="disableSeparateEndpointForREST"
> > > > > > locked="true">false</parameter>
> > > > > >
> > > > > > <messageReceivers>
> > > > > > <messageReceiver
> > > > mep="http://www.w3.org/2004/08/wsdl/in-only"
> > > > > >
> > > > > >
> class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/>
> > > > > > <messageReceiver
> > > mep="http://www.w3.org/2004/08/wsdl/in-out"
> > > > > >
> > > > > >
> class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
> > > > > > </messageReceivers>
> > > > > >
> > > > > > <transportReceiver name="http"
> > > > > >
> > > > > > class="org.apache.axis2.transport.http.SimpleHTTPServer">
> > > > > > <parameter name="port" locked="false">6060</parameter>
> > > > > > </transportReceiver>
> > > > > >
> > > > > > <transportReceiver name="tcp"
> > > > > >
> > > > > class="org.apache.axis2.transport.tcp.TCPServer">
> > > > > > <parameter name="port" locked="false">6061</parameter>
> > > > > > </transportReceiver>
> > > > > >
> > > > > > <transportSender name="jms"
> > > > > >
> > > > > class="org.apache.axis2.transport.jms.JMSSender"/>
> > > > > > <transportSender name="tcp"
> > > > > >
> > > > > > class="org.apache.axis2.transport.tcp.TCPTransportSender"/>
> > > > > > <transportSender name="local"
> > > > > >
> > > > > >
> class="org.apache.axis2.transport.local.LocalTransportSender"/>
> > > > > > <transportSender name="http"
> > > > > >
> > > > > >
> > > class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
> > > > > > <parameter name="PROTOCOL"
> > > > locked="false">HTTP/1.1</parameter>
> > > > > > <parameter name="Transfer-Encoding"
> > > > > > locked="false">chunked</parameter>
> > > > > > </transportSender>
> > > > > > <transportSender name="https"
> > > > > >
> > > > > >
> > > class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
> > > > > > <parameter name="PROTOCOL"
> > > > locked="false">HTTP/1.1</parameter>
> > > > > > <parameter name="Transfer-Encoding"
> > > > > > locked="false">chunked</parameter>
> > > > > > </transportSender>
> > > > > >
> > > > > > <phaseOrder type="InFlow">
> > > > > > <!-- System pre-defined phases -->
> > > > > > <phase name="Transport">
> > > > > > <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>
> > > > > > <phase name="Security"/>
> > > > > > <phase name="PreDispatch"/>
> > > > > > <phase name="Dispatch"
> > > > > > class="org.apache.axis2.engine.DispatchPhase">
> > > > > > <handler name="AddressingBasedDispatcher"
> > > > > >
> > > > > > class="org.apache.axis2.engine.AddressingBasedDispatcher">
> > > > > > <order phase="Dispatch"/>
> > > > > > </handler>
> > > > > >
> > > > > > <handler name="SOAPMessageBodyBasedDispatcher"
> > > > > >
> > > > > >
> class="org.apache.axis2.engine.SOAPMessageBodyBasedDispatcher">
> > > > > > <order phase="Dispatch"/>
> > > > > > </handler>
> > > > > > <handler name="InstanceDispatcher"
> > > > > >
> > > > > class="org.apache.axis2.engine.InstanceDispatcher">
> > > > > > <order phase="Dispatch"/>
> > > > > > </handler>
> > > > > > </phase>
> > > > > > <phase name="OperationInPhase"/>
> > > > > > </phaseOrder>
> > > > > > <phaseOrder type="OutFlow">
> > > > > > <phase name="OperationOutPhase"/>
> > > > > > <phase name="PolicyDetermination"/>
> > > > > > <phase name="MessageOut"/>
> > > > > > <phase name="Security"/>
> > > > > > </phaseOrder>
> > > > > > <phaseOrder type="InFaultFlow">
> > > > > > <phase name="PreDispatch"/>
> > > > > > <phase name="Dispatch"
> > > > > > class="org.apache.axis2.engine.DispatchPhase">
> > > > > > <handler name="RequestURIBasedDispatcher"
> > > > > >
> > > > > > class="org.apache.axis2.engine.RequestURIBasedDispatcher">
> > > > > > <order phase="Dispatch"/>
> > > > > > </handler>
> > > > > >
> > > > > > <handler name="SOAPActionBasedDispatcher"
> > > > > >
> > > > > > class="org.apache.axis2.engine.SOAPActionBasedDispatcher">
> > > > > > <order phase="Dispatch"/>
> > > > > > </handler>
> > > > > >
> > > > > > <handler name="AddressingBasedDispatcher"
> > > > > >
> > > > > > class="org.apache.axis2.engine.AddressingBasedDispatcher">
> > > > > > <order phase="Dispatch"/>
> > > > > > </handler>
> > > > > >
> > > > > > <handler name="SOAPMessageBodyBasedDispatcher"
> > > > > >
> > > > > >
> class="org.apache.axis2.engine.SOAPMessageBodyBasedDispatcher">
> > > > > > <order phase="Dispatch"/>
> > > > > > </handler>
> > > > > > <handler name="InstanceDispatcher"
> > > > > >
> > > > > class="org.apache.axis2.engine.InstanceDispatcher">
> > > > > > <order phase="Dispatch"/>
> > > > > > </handler>
> > > > > > </phase>
> > > > > > <phase name="OperationInFaultPhase"/>
> > > > > > </phaseOrder>
> > > > > > <phaseOrder type="OutFaultFlow">
> > > > > > <phase name="OperationOutFaultPhase"/>
> > > > > > <phase name="PolicyDetermination"/>
> > > > > > <phase name="MessageOut"/>
> > > > > > </phaseOrder>
> > > > > > </axisconfig>
> > > > > >
> > > > > >
> > > > > > Thanks,
> > > > > > Amit Soni
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > > -----Original Message-----
> > > > > > From: Paul Fremantle [mailto:[EMAIL PROTECTED]
> > > > > > Sent: Thursday, December 28, 2006 4:17 PM
> > > > > > To: [email protected]
> > > > > > Subject: Re: soap header in axis2
> > > > > >
> > > > > > Amit
> > > > > >
> > > > > > You need to engage the addressing and rampart (security)
> > modules.
> > > > > > These modules add in the correct headers.
> > > > > >
> > > > > > The addressing module is shipped as part of the core axis2
> > distro.
> > > > You
> > > > > > just need to add it into your classpath. The correct action
> and
> > to
> > > > > > headers should be described in the WSDL and should appear
> > > > > > automatically.
> > > > > >
> > > > > > Rampart (security headers) is a bit trickier. You can find the
> > > > rampart
> > > > > > module here:
> > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> http://www.apache.org/dyn/mirrors/mirrors.cgi/ws/rampart/1_1/rampart-1.1
> > > > > > .zip
> > > > > >
> > > > > > If you look in the samples the BASIC sample number 2,
> > > > > > (\samples\basic\sample02) shows how to enable username/token.
> > You
> > > > > > should do sample01 as well first.
> > > > > >
> > > > > > Paul
> > > > > >
> > > > > >
> > > > > > On 12/28/06, Amit G Soni <[EMAIL PROTECTED]> wrote:
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > Hi list,
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > I am generating axis2 client from Server WSDL. But server
> side
> > > > they
> > > > > > require
> > > > > > > security and some soap header. The way I have implemented
> the
> > > > client
> > > > > > is
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > wsdl2java -uri c:\test\MyService.wsdl -p com.test -d
> xmlbeans
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > After this I wrote my own test client class.
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > package com.test;
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > import
> > > > > > > com.xxx.services.my.v1.messages.HelloWorldRequestDocument;
> > > > > > >
> > > > > > > import
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> com.xxx.services.my.v1.messages.HelloWorldRequestDocument.HelloWorldRequ
> > > > > > est;
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > public class TestClient {
> > > > > > >
> > > > > > > public static void main(String args[]) {
> > > > > > >
> > > > > > > try {
> > > > > > >
> > > > > > > MyServicePortStub stub =
> > new
> > > > > > > MyServicePortStub();
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > HelloWorldRequestDocument req =
> > > > > > > HelloWorldRequestDocument.Factory.newInstance();
> > > > > > >
> > > > > > > HelloWorldRequest r =
> > > > > > > req.addNewHelloWorldRequest();
> > > > > > >
> > > > > > >
> > > > > > > r.setOptionalMessage("testmessage");
> > > > > > >
> > > > > > > stub.helloWorld(req);
> > > > > > >
> > > > > > > }catch(Exception e) {
> > > > > > >
> > > > > > > e.printStackTrace();
> > > > > > >
> > > > > > > }
> > > > > > >
> > > > > > > }
> > > > > > >
> > > > > > > }
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > Using this client I have monitored the soap request using
> > > > tcpmonitor
> > > > > > and the
> > > > > > > soap request is like
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > <?xml version='1.0' encoding='UTF-8'?>
> > > > > > >
> > > > > > > <soapenv:Envelope
> > > > > > > xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
> > > > > > >
> > > > > > > <soapenv:Header />
> > > > > > >
> > > > > > > <soapenv:Body>
> > > > > > >
> > > > > > > <helloWorldRequest
> > > > > > > xmlns="http://services.bennycentral.com/my/v1/messages">
> > > > > > >
> > > > > > > <OptionalMessage>testmessage</OptionalMessage>
> > > > > > >
> > > > > > > </helloWorldRequest>
> > > > > > >
> > > > > > > </soapenv:Body>
> > > > > > >
> > > > > > > </soapenv:Envelope>
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > But I want to include following header elements in
> > > <soapenv:Header
> > > > > />
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > <wsa:Action
> > > > > > > soapenv:actor="http://schemas.xmlsoap.org/soap/actor/next"
> > > > > > > soapenv:mustUnderstand="1"
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing">http://serv
> > > > > > ices.xxx.com/xxx/v1:helloWorldIn</wsa:Action>
> > > > > > >
> > > > > > >
> <wsa:To>urn:EvolutionBenefits:Services:V1:xxxService</wsa:To>
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > <wsse:Security soap:mustUnderstand = "1" xmlns:wsse =
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-sece
> > > > > > xt-1.0.xsd">
> > > > > > >
> > > > > > > <wsse:UsernameToken xmlns:wsu =
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-util
> > > > > > ity-1.0.xsd"
> > > > > > > wsu:Id =
> > > > > > > "SecurityToken-46eb6dc1-4792-4031-bc01-4692be8f1c2b">
> > > > > > >
> > > > > > > <wsse:Username>xxx</wsse:Username>
> > > > > > >
> > > > > > > <wsse:Password Type =
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-
> > > > > > profile-1.0#PasswordText">xxx</wsse:Password>
> > > > > > >
> > > > > > > <wsse:Nonce>Ood0sa4w4gMvvA4MIK3Q7g==</wsse:Nonce>
> > > > > > >
> > > > > > > <wsu:Created>2005-12-08T23:46:20Z</wsu:Created>
> > > > > > >
> > > > > > > </wsse:UsernameToken>
> > > > > > >
> > > > > > > </wsse:Security>
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > So any one of you has any idea of how to include above
> header
> > > > > elements
> > > > > > then
> > > > > > > please let me know.
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > Thanks,
> > > > > > >
> > > > > > > Amit Soni
> > > > > >
> > > > > >
> > > > > > --
> > > > > > Paul Fremantle
> > > > > > VP/Technology, WSO2 and OASIS WS-RX TC Co-chair
> > > > > >
> > > > > > http://bloglines.com/blog/paulfremantle
> > > > > > [EMAIL PROTECTED]
> > > > > >
> > > > > > "Oxygenating the Web Service Platform", www.wso2.com
> > > > > >
> > > > > >
> > > >
> > ---------------------------------------------------------------------
> > > > > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > > > > For additional commands, e-mail: [EMAIL PROTECTED]
> > > > > >
> > > > > >
> > > > > >
> > > >
> > ---------------------------------------------------------------------
> > > > > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > > > > For additional commands, e-mail: [EMAIL PROTECTED]
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > > > --
> > > > > Paul Fremantle
> > > > > VP/Technology, WSO2 and OASIS WS-RX TC Co-chair
> > > > >
> > > > > http://bloglines.com/blog/paulfremantle
> > > > > [EMAIL PROTECTED]
> > > > >
> > > > > "Oxygenating the Web Service Platform", www.wso2.com
> > > > >
> > > > >
> > >
> ---------------------------------------------------------------------
> > > > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > > > For additional commands, e-mail: [EMAIL PROTECTED]
> > > > >
> > > > >
> > > > >
> > > > >
> > >
> ---------------------------------------------------------------------
> > > > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > > > For additional commands, e-mail: [EMAIL PROTECTED]
> > > > >
> > > > >
> > > > >
> > > >
> > > >
> > > > --
> > > > Paul Fremantle
> > > > VP/Technology, WSO2 and OASIS WS-RX TC Co-chair
> > > >
> > > > http://bloglines.com/blog/paulfremantle
> > > > [EMAIL PROTECTED]
> > > >
> > > > "Oxygenating the Web Service Platform", www.wso2.com
> > > >
> > > >
> > ---------------------------------------------------------------------
> > > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > > For additional commands, e-mail: [EMAIL PROTECTED]
> > > >
> > > >
> > > >
> > > >
> > ---------------------------------------------------------------------
> > > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > > For additional commands, e-mail: [EMAIL PROTECTED]
> > > >
> > > >
> > > >
> > >
> > >
> > > --
> > > Paul Fremantle
> > > VP/Technology, WSO2 and OASIS WS-RX TC Co-chair
> > >
> > > http://bloglines.com/blog/paulfremantle
> > > [EMAIL PROTECTED]
> > >
> > > "Oxygenating the Web Service Platform", www.wso2.com
> > >
> > >
> ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > For additional commands, e-mail: [EMAIL PROTECTED]
> > >
> > >
> > >
> > >
> ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > For additional commands, e-mail: [EMAIL PROTECTED]
> > >
> > >
> > >
> >
> >
> > --
> > Paul Fremantle
> > VP/Technology, WSO2 and OASIS WS-RX TC Co-chair
> >
> > http://bloglines.com/blog/paulfremantle
> > [EMAIL PROTECTED]
> >
> > "Oxygenating the Web Service Platform", www.wso2.com
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
>
>
> --
> Paul Fremantle
> VP/Technology, WSO2 and OASIS WS-RX TC Co-chair
>
> http://bloglines.com/blog/paulfremantle
> [EMAIL PROTECTED]
>
> "Oxygenating the Web Service Platform", www.wso2.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
--
Paul Fremantle
VP/Technology, WSO2 and OASIS WS-RX TC Co-chair
http://bloglines.com/blog/paulfremantle
[EMAIL PROTECTED]
"Oxygenating the Web Service Platform", www.wso2.com