Hi
 
I have a need to originate a call to invoke a web service (say, WS2) from 
another web service (say,  WS1) - both web services are deployed in Axis2. I 
also should use Rampart and Sandesha2. I am using Axis 1.4.1 + Rampart 1.3 and 
Sandesha 1.3 To implement the calling logic in WS1 I used code from client 
samples that use 'engageModule("sandesha2") and engageModule("rampart")'. Lets 
call this client code I have used on server side as "ClientStub".
 
Now, two issues:
1.  if I run a client to invoke WS2 it gets required response but after that, 
the client prints following error message:
org.apache.axis2.AxisFault: Must Understand check failed for header 
http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.
0.xsd ... How to fix this? Rampart and Sandesha are engaged on the server side 
- can verify this by my log messages printing on server side.
 
2. If I make a call from the client to WS1 which in turn calls WS2 then I do 
not get a response. From my logs I see that WS1 loads Sandesha and Rampart 
modules when it invokes ClientStub and eventually call lands in WS2 but am not 
getting any value returned back. What can be going wrong? (WS1 by itself works 
fine.)
 
(I also see
https://issues.apache.org/jira/browse/SANDESHA2-133?page=com.atlassian.jira.
plugin.system.issuetabpanels:comment-tabpanel
<https://issues.apache.org/jira/browse/SANDESHA2-133?page=com.atlassian.jira
plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12591999#act
ion_12591999> &focusedCommentId=12591999#action_12591999 this error on the back 
end)
 
 
I guess this is not something being done for the first time so would anyone 
have samples (including the services.xml with rampart and sandesha setup) that 
they can share so that I can start building on top of those?
 
Here is the full exception:
[ERROR] Must Understand check failed for header 
http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.
0.xsd : Security
 
org.apache.axis2.AxisFault: Must Understand check failed for header 
http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.
0.xsd : Security
 
at org.apache.axis2.engine.AxisEngine.checkMustUnderstand(AxisEngine.java:102)
 at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:166)
 at 
org.apache.sandesha2.workers.SenderWorker.checkForSyncResponses(SenderWorkerjava:657)
 at org.apache.sandesha2.workers.SenderWorker.run(SenderWorker.java:337)
 
at 
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1061)
 at 
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:575)
  at java.lang.Thread.run(Unknown Source)
 [WARN] Sandesha2 sender thread has not received a valid synchronous response.
 org.apache.axis2.AxisFault: Must Understand check failed for header 
http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.
0.xsd : Security
at org.apache.axis2.engine.AxisEngine.checkMustUnderstand(AxisEngine.java:102)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:166)
at 
org.apache.sandesha2.workers.SenderWorker.checkForSyncResponses(SenderWorkerjava:657)
at org.apache.sandesha2.workers.SenderWorker.run(SenderWorker.java:337)
at 
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1061)
at 
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:575)
at java.lang.Thread.run(Unknown Source)
[INFO] Verification successful for URI "#Timestamp-6621330"
[ERROR] Sandesha2 got an exception when sending a message:
java.lang.NullPointerException.
java.lang.NullPointerException
at 
org.apache.rampart.RampartMessageData.getSecConvTokenId(RampartMessageData.java:478)
at 
org.apache.rampart.builder.SymmetricBindingBuilder.doSignBeforeEncrypt(SymmetricBindingBuilder.java:347)
at 
org.apache.rampart.builder.SymmetricBindingBuilder.build(SymmetricBindingBuilder.java:80)
 at org.apache.rampart.MessageBuilder.build(MessageBuilder.java:128)
 at org.apache.rampart.handler.RampartSender.invoke(RampartSender.java:64)
 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.resumeSend(AxisEngine.java:370)
 at org.apache.sandesha2.workers.SenderWorker.run(SenderWorker.java:287)
 at 
org.apache.sandesha2.msgprocessors.MakeConnectionProcessor.replyToPoll(MakeConnectionProcessor.java:200)
 at 
org.apache.sandesha2.msgprocessors.SequenceProcessor.processReliableMessage(SequenceProcessor.java:233)
 at 
org.apache.sandesha2.msgprocessors.SequenceProcessor.processSequenceHeader(SequenceProcessor.java:80)
 at 
org.apache.sandesha2.handlers.SandeshaInHandler.invoke(SandeshaInHandler.java:141)
 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.processHTTPPostRequest(HTTPTransportUtils.java:275)
 at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:133)
 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
 
at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
 at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
 at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
 at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
 at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
 at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
 at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
 at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
 at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
 at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
 at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
 at java.lang.Thread.run(Unknown Source)
 ----------------------------------------------------------------------------
-------------------------------------------------


      

Reply via email to