Hi guys,

I'm doing a doctor app where, I need to call a web service(legacy) that
implements ws-security, rampart, which uses username token in SSL. When
trying to call the service following SOAP message ends up as a response in
the ESB log with the proceeding exception.


ERROR - AxisEngine InvalidSecurity
org.apache.axis2.AxisFault: InvalidSecurity
    at
org.apache.rampart.handler.PostDispatchVerificationHandler.invoke(PostDispatchVerificationHandler.java:164)
    at org.apache.axis2.engine.Phase.invokeHandler(Phase.java:340)
    at org.apache.axis2.engine.Phase.invoke(Phase.java:313)
    at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:261)
    at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:167)
    at
org.apache.synapse.transport.passthru.ClientWorker.run(ClientWorker.java:261)
    at
org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
    at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:748)
[2017-11-10 22:38:05,475] ERROR - ClientWorker Fault processing response
message through Axis2
org.apache.axis2.AxisFault: InvalidSecurity
    at
org.apache.rampart.handler.PostDispatchVerificationHandler.invoke(PostDispatchVerificationHandler.java:164)
    at org.apache.axis2.engine.Phase.invokeHandler(Phase.java:340)
    at org.apache.axis2.engine.Phase.invoke(Phase.java:313)
    at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:261)
    at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:167)
    at
org.apache.synapse.transport.passthru.ClientWorker.run(ClientWorker.java:261)
    at
org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
    at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:748)

but when I encode username and password in the header as follows and send
the request it works fine.

 <header name="Authorization"
                 scope="transport"
                 value="Basic dGhpdnlhOnRoaXZ5YTEyMw=="/>


I did configure the rampart module as said in this question
<https://stackoverflow.com/questions/20182314/error-engine-axisengine-an-unsupported-signature-or-encryption-algorithm-was-us>.
Have written a password callback handler class and have added it to the
<ESB_HOME>/repository/components/lib is been successfully called. I have
written a policy file in a registry resource and doing the necessary
configurations

Your guidance is more appreciated.


Thanks,
Thivya

-- 

*Thivya Mahenthirarasa*

*Software Engineer -Support Team | WSO2*


*Email: [email protected] <[email protected]>*

*Mobile: +94766461966 <http://wso2.com/signature>*
*Web: http://wso2.com <http://wso2.com>*
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to