Thanks Nandana,

 

I removed Timestamp from the server side and it seems to work.

 

--kumar

 

________________________________

From: Nandana Mihindukulasooriya [mailto:[email protected]] 
Sent: Sunday, February 15, 2009 3:39 PM
To: [email protected]
Subject: Re: Rampart - axis2 fault

 

Hi Kumar,
       You have set the actions to "UsernameToken Timestamp" but your
SOAP UI is a missing a timestamp in the security header. That is the
reason for the actions mismatch error. Can you
 configure the SOAP UI to send a timestamp as well and try again.
Hopefully that will solve the problem. 

thanks,
nandana

On Tue, Feb 10, 2009 at 2:59 AM, Iyengar, Kumar <[email protected]>
wrote:

Thanks Nandana for the quick response. Here is the XML that Soap UI
sends. I have set the action in services.xml to 'UsernameToken
Timestamp' and so SoapUI is sending the password bobPW as a digest

 

Host: localhost:8080

Content-Length: 1053

SOAPAction: "urn:echo"

User-Agent: Jakarta Commons-HttpClient/3.0.1

Content-Type: text/xml;charset=UTF-8

 

<soapenv:Envelope xmlns:sam="http://sample02.samples.rampart.apache.org";
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";>

   <soapenv:Header>

      <wsse:Security soapenv:mustUnderstand="1"
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wsse
curity-secext-1.0.xsd">

         <wsse:UsernameToken wsu:Id="UsernameToken-2960804"
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssec
urity-utility-1.0.xsd">

            <wsse:Username>bob</wsse:Username>

            <wsse:Password
Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-t
oken-profile-1.0#PasswordDigest">b+iddlgeF2hcpof8WQ/iEYo5QEw=</wsse:Pass
word>

            <wsse:Nonce>B1NdVICiOB2XBBZHQ66ijg==</wsse:Nonce>

            <wsu:Created>2009-02-09T21:16:43.652Z</wsu:Created>

         </wsse:UsernameToken>

      </wsse:Security>

   </soapenv:Header>

   <soapenv:Body>

      <sam:echo>

         <!--Optional:-->

         <sam:param0>How R U</sam:param0>

      </sam:echo>

   </soapenv:Body>

</soapenv:Envelope>

 

I will look at the samples. Unfortunately at this point, I have to get
an app working (with Username Token and eventually X509) without
depending on Policy. I installed the Sample02, 03 onto a Tomcat server
that has Axis2 installed along with Rampart. I can get a simple request
without any username token working with SoapUI as the client.

 

Thanks for any help,

--kumar

________________________________

From: Nandana Mihindukulasooriya [mailto:[email protected]] 
Sent: Monday, February 09, 2009 12:07 PM
To: [email protected]
Subject: Re: Rampart - axis2 fault

 

Hi Kumar,

      Can you please post the SOAP message sent by SOAP UI ? Anyway if
you starting to use Rampart, I would recommend you to use policy based
approach which is more interoperable and most of the development for new
specifications is only available in the policy based configuration. You
can look at Rampart policy samples in the binary distribution and these
two articles in WSO2 Oxygen Tank will also help you to get started. 

http://wso2.org/library/3190
https://wso2.org/library/3415

thanks,
nandana

On Tue, Feb 10, 2009 at 1:12 AM, Iyengar, Kumar <[email protected]>
wrote:

Hi all,

 

Thanks for the help earlier. I managed to get a bit further. I am trying
to get the Rampart sample programs working but am getting the following
error:

 

[ERROR] WSDoAllReceiver: security processing failed (actions mismatch)

org.apache.axis2.AxisFault: WSDoAllReceiver: security processing failed
(actions mismatch)

            at
org.apache.rampart.handler.WSDoAllReceiver.processBasic(WSDoAllReceiver.
java:344)

            at
org.apache.rampart.handler.WSDoAllReceiver.processMessage(WSDoAllReceive
r.java:86)

            at
org.apache.rampart.handler.WSDoAllHandler.invoke(WSDoAllHandler.java:72)

            at org.apache.axis2.engine.Phase.invoke(Phase.java:317)

            at
org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:264)

            at
org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:163)

            at
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostReques
t(HTTPTransportUtils.java:275)

            at
org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:133)

            at
javax.servlet.http.HttpServlet.service(HttpServlet.java:709)

            at
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

            at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:252)

            at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:173)

            at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
e.java:213)

            at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
e.java:178)

            at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
:126)

            at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
:105)

            at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
java:107)

            at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:1
48)

            at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:86
9)

            at
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.proc
essConnection(Http11BaseProtocol.java:664)

            at
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint
.java:527)

            at
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollow
erWorkerThread.java:80)

            at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool
.java:684)

            at java.lang.Thread.run(Thread.java:595)

 

Does anyone know what Axis2 is expecting? I have Axis2 setup with
Tomcat.

 

I tried sample02 and sample03 and my services.xml has the following
syntax:

 

<action>

            <items>UsernameToken Timestamp<items>

            <passwordCallbackClass>...<passwordCallback>

</action>

 

I tried removing and adding Timestamp and keep getting the 'actions
mismatch' error.

 

I am using Soap UI. I am assuming this should not matter since it does
send the Soap Header according to the standard.

 

Thanks for any help,

 

--kumar

 




-- 
Nandana Mihindukulasooriya  
WSO2 inc.

http://nandana83.blogspot.com/
http://www.wso2.org




-- 
Nandana Mihindukulasooriya  
WSO2 inc.

http://nandana83.blogspot.com/
http://www.wso2.org

Reply via email to