Details
Description
I am developing web service client and service with digital signature to sign soap message on Wesbphere 7 using CXF 2.6.1.
I have folllowed the instruction to make CXF working on Websphere by following link:
http://cxf.apache.org/docs/application-server-specific-configuration-guide.html#ApplicationServerSpecificConfigurationGuide-ForWebSphere6.1.0.29%2CV7andV8
The web service/client works fine without digital signature.
When I add settings related to digital signature in cxf-servlet.xml and cxf.xml and along with crypto properties the client fails with follwoing error. I also added all required jars for security:
Caused by: java.lang.ClassCastException: com.ibm.xml.crypto.dsig.dom.FactoryImpl incompatible with javax.xml.crypto.dsig.XMLSignatureFactory
at javax.xml.crypto.dsig.XMLSignatureFactory.findInstance(XMLSignatureFactory.java:202)
at javax.xml.crypto.dsig.XMLSignatureFactory.getInstance(XMLSignatureFactory.java:186)
at org.apache.ws.security.message.WSSecSignature.init(WSSecSignature.java:128)
at org.apache.ws.security.message.WSSecSignature.<init>(WSSecSignature.java:119)
at org.apache.ws.security.action.SignatureAction.execute(SignatureAction.java:38)
at org.apache.ws.security.handler.WSHandler.doSenderAction(WSHandler.java:205)
at org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor.access$200(WSS4JOutInterceptor.java:52)
at org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor$WSS4JOutInterceptorInternal.handleMessage(WSS4JOutInterceptor.java:260)
at org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor$WSS4JOutInterceptorInternal.handleMessage(WSS4JOutInterceptor.java:136)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:262)
at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:532)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:464)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:367)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:320)
at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:89)
at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:134)
... 39 more
Any idea why this error occurs when adding WS Security? Is there any work around for this issue?
Thanks,
Ojas
Attachments
Issue Links
- is blocked by
-
WSS-410 Reduce dependency on xmlsec library
- Closed