Looks like your signature keystore doesn't contain the certificate required to verify trust in the signed response from the server. You will need to either have the server's signing cert in your keystore, or more typically the issuing CA certificate of that cert.
If you turn on debug logging it should tell you more. You can log the messages by adding new LoggingOutInterceptor() or new LoggingInInterceptor() to the interceptor chain. Colm. On Thu, Jan 18, 2018 at 11:46 AM, Al Grant <[email protected]> wrote: > Hi, > > Full trace is : > > Jan 19, 2018 12:29:19 AM > org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean > buildServiceFromWSDL > INFO: Creating Service {urn:sale.test.au/schema/common}SaleService from > WSDL: http://testsigningonly.com/SalesService.svc?singleWsdl > Jan 19, 2018 12:29:20 AM > org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean > buildServiceFromWSDL > INFO: Creating Service {urn:sale.test.au/schema/common}SaleService from > WSDL: http://testsigningonly.com/SalesService.svc?singleWsdl > SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". > SLF4J: Defaulting to no-operation (NOP) logger implementation > SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further > details. > Jan 19, 2018 12:29:42 AM org.apache.cxf.phase.PhaseInterceptorChain > doDefaultLogging > WARNING: Interceptor for > {urn:sale.test.au/schema/common}SaleService#{urn:sale. > test.au/schema/common}SetEpisode > has thrown exception, unwinding now > org.apache.cxf.binding.soap.SoapFault: The signature or decryption was > invalid > at > org.apache.cxf.ws.security.wss4j.WSS4JUtils.createSoapFault(WSS4JUtils. > java:236) > at > org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor.handleMessageInternal( > WSS4JInInterceptor.java:340) > at > org.apache.cxf.ws.security.wss4j.handleMessage( > WSS4JInInterceptor.java:175) > at > org.apache.cxf.ws.security.wss4j.PolicyBasedWSS4JInInterceptor. > handleMessage(PolicyBasedWSS4JInInterceptor.java:79) > at > org.apache.cxf.ws.security.wss4j.PolicyBasedWSS4JInInterceptor. > handleMessage(PolicyBasedWSS4JInInterceptor.java:66) > at > org.apache.cxf.phase.PhaseInterceptorChain.doIntercept( > PhaseInterceptorChain.java:308) > at org.apache.cxf.endpoint.ClientImpl.onMessage( > ClientImpl.java:797) > at > org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream. > handleResponseInternal(HTTPConduit.java:1680) > at > org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream. > handleResponse(HTTPConduit.java:1557) > at > org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close( > HTTPConduit.java:1358) > at org.apache.cxf.transport.AbstractConduit.close( > AbstractConduit.java:56) > at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit. > java:658) > at > org.apache.cxf.interceptor.MessageSenderInterceptor$ > MessageSenderEndingInterceptor.handleMessage( > MessageSenderInterceptor.java:62) > at > org.apache.cxf.phase.PhaseInterceptorChain.doIntercept( > PhaseInterceptorChain.java:308) > at org.apache.cxf.endpoint.ClientImpl.doInvoke( > ClientImpl.java:516) > at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:425) > at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:326) > at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:279) > at org.apache.cxf.frontend.ClientProxy.invokeSync( > ClientProxy.java:96) > at org.apache.cxf.jaxws.JaxWsClientProxy.invoke( > JaxWsClientProxy.java:139) > at com.sun.proxy.$Proxy39.setEpisode(Unknown Source) > at com.CmsExport.createEpisode(CmsExport.java:132) > at com.JFrameTest.writefiletoDB(JFrameTest.java:180) > at com.JFrameTest$FileWorkerThread.run(JFrameTest.java:994) > Caused by: org.apache.wss4j.common.ext.WSSecurityException: The signature > or > decryption was invalid > at > org.apache.wss4j.dom.processor.SignatureProcessor.handleToken( > SignatureProcessor.java:205) > at > org.apache.wss4j.dom.engine.WSSecurityEngine.processSecurityHeader( > WSSecurityEngine.java:340) > at > org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor.handleMessageInternal( > WSS4JInInterceptor.java:284) > ... 22 more > > Exception in thread "Thread-2" javax.xml.ws.soap.SOAPFaultException: The > signature or decryption was invalid > at org.apache.cxf.jaxws.JaxWsClientProxy.invoke( > JaxWsClientProxy.java:161) > at com.sun.proxy.$Proxy39.setEpisode(Unknown Source) > at com.CmsExport.createEpisode(CmsExport.java:132) > at com.JFrameTest.writefiletoDB(JFrameTest.java:180) > at com.JFrameTest$FileWorkerThread.run(JFrameTest.java:994) > Caused by: org.apache.wss4j.common.ext.WSSecurityException: The signature > or > decryption was invalid > at > org.apache.wss4j.dom.processor.SignatureProcessor.handleToken( > SignatureProcessor.java:205) > at > org.apache.wss4j.dom.engine.WSSecurityEngine.processSecurityHeader( > WSSecurityEngine.java:340) > at > org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor.handleMessageInternal( > WSS4JInInterceptor.java:284) > at > org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor.handleMessage( > WSS4JInInterceptor.java:175) > at > org.apache.cxf.ws.security.wss4j.PolicyBasedWSS4JInInterceptor. > handleMessage(PolicyBasedWSS4JInInterceptor.java:79) > at > org.apache.cxf.ws.security.wss4j.PolicyBasedWSS4JInInterceptor. > handleMessage(PolicyBasedWSS4JInInterceptor.java:66) > at > org.apache.cxf.phase.PhaseInterceptorChain.doIntercept( > PhaseInterceptorChain.java:308) > at org.apache.cxf.endpoint.ClientImpl.onMessage( > ClientImpl.java:797) > at > org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream. > handleResponseInternal(HTTPConduit.java:1680) > at > org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream. > handleResponse(HTTPConduit.java:1557) > at > org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close( > HTTPConduit.java:1358) > at org.apache.cxf.transport.AbstractConduit.close( > AbstractConduit.java:56) > at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit. > java:658) > at > org.apache.cxf.interceptor.MessageSenderInterceptor$ > MessageSenderEndingInterceptor.handleMessage( > MessageSenderInterceptor.java:62) > at > org.apache.cxf.phase.PhaseInterceptorChain.doIntercept( > PhaseInterceptorChain.java:308) > at org.apache.cxf.endpoint.ClientImpl.doInvoke( > ClientImpl.java:516) > at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:425) > at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:326) > at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:279) > at org.apache.cxf.frontend.ClientProxy.invokeSync( > ClientProxy.java:96) > at org.apache.cxf.jaxws.JaxWsClientProxy.invoke( > JaxWsClientProxy.java:139) > ... 4 more > > > I only have access to the client - so I dont know what if any output on the > server there is. > > I am not sure how to check if this is before or after the message is > sent...tcpdump or? One of my ToDo's is to get a log of messages. > > > > -- > Sent from: http://cxf.547215.n5.nabble.com/cxf-user-f547216.html > -- Colm O hEigeartaigh Talend Community Coder http://coders.talend.com
