axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Amit G Soni" <Ami...@mphasis.com>
Subject RE: soap header in axis2
Date Thu, 28 Dec 2006 14:53:45 GMT
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:pzfreo@gmail.com] 
Sent: Thursday, December 28, 2006 8:01 PM
To: axis-user@ws.apache.org
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 <Amit.G@mphasis.com> 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:pzfreo@gmail.com]
> Sent: Thursday, December 28, 2006 6:30 PM
> To: axis-user@ws.apache.org
> 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 <Amit.G@mphasis.com> 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:pzfreo@gmail.com]
> > Sent: Thursday, December 28, 2006 4:17 PM
> > To: axis-user@ws.apache.org
> > 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 <Amit.G@mphasis.com> 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
> > paul@wso2.com
> >
> > "Oxygenating the Web Service Platform", www.wso2.com
> >
> >
---------------------------------------------------------------------
> > To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
> > For additional commands, e-mail: axis-user-help@ws.apache.org
> >
> >
> >
---------------------------------------------------------------------
> > To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
> > For additional commands, e-mail: axis-user-help@ws.apache.org
> >
> >
>
>
> --
> Paul Fremantle
> VP/Technology, WSO2 and OASIS WS-RX TC Co-chair
>
> http://bloglines.com/blog/paulfremantle
> paul@wso2.com
>
> "Oxygenating the Web Service Platform", www.wso2.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-user-help@ws.apache.org
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-user-help@ws.apache.org
>
>
>


-- 
Paul Fremantle
VP/Technology, WSO2 and OASIS WS-RX TC Co-chair

http://bloglines.com/blog/paulfremantle
paul@wso2.com

"Oxygenating the Web Service Platform", www.wso2.com

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


Mime
View raw message