3 Replies Latest reply: Nov 21, 2012 12:36 PM by HakanBiroglu RSS

    Unable to generate outbound  ws-security soap header

    662556
      Hi

      I am trying to consume external web service which has ws-security. I get the following exception in IB log file when the service is invoked. The soap body is generating properly and the service invoked but the web service faults with Invalid security.


      AxisFault
      faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.generalException
      faultSubcode:
      faultString: PSDoAllHandler: Signature: no crypto property file; nested exception is:
           org.apache.ws.security.WSSecurityException: PSDoAllHandler: Signature: no crypto property file
      faultActor:
      faultNode:
      faultDetail:
           {http://xml.apache.org/axis/}hostname:soatest2

      PSDoAllHandler: Signature: no crypto property file; nested exception is:
           org.apache.ws.security.WSSecurityException: PSDoAllHandler: Signature: no crypto property file
           at com.peoplesoft.pt.security.wss.PSDoAllSender.invoke(PSDoAllSender.java:218)
           at com.peoplesoft.pt.security.wss.PSGatewaySenderHandler.invoke(PSGatewaySenderHandler.java:224)
           at com.peoplesoft.pt.integrationgateway.listeningconnector.http.HttpListeningConnectorUtility.invokeSenderWSSecurity(HttpListeningConnectorUtility.java:1228)
           at com.peoplesoft.pt.integrationgateway.targetconnector.HttpTargetConnector.send(HttpTargetConnector.java:608)
           at com.peoplesoft.pt.integrationgateway.service.BasicConnectorInvocator.execute(BasicConnectorInvocator.java:131)
           at com.peoplesoft.pt.integrationgateway.framework.GatewayManager.invokeService(GatewayManager.java:147)
           at com.peoplesoft.pt.integrationgateway.framework.GatewayManager.connect(GatewayManager.java:189)
           at com.peoplesoft.pt.integrationgateway.listeningconnector.PeopleSoftListeningConnector.doPost(PeopleSoftListeningConnector.java:182)
           at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
           at com.peoplesoft.pt.integrationgateway.listeningconnector.PeopleSoftListeningConnector.service(PeopleSoftListeningConnector.java:87)
           at javax.servlet.http.HttpServlet.service(HttpServlet.java:821)
           at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
           at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
           at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
           at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:27)
           at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57)
           at com.peoplesoft.pt.integrationgateway.common.IBFilter.doFilter(IBFilter.java:85)
           at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57)
           at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
           at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
           at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
           at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
           at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
           at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
           at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
           at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
           at weblogic.work.ExecuteThread.run(ExecuteThread.java:176)
      Caused by: org.apache.ws.security.WSSecurityException: PSDoAllHandler: Signature: no crypto property file
           at com.peoplesoft.pt.security.wss.PSDoAllHandler.loadSignatureCrypto(PSDoAllHandler.java:731)
           at com.peoplesoft.pt.security.wss.PSDoAllHandler.doSenderAction(PSDoAllHandler.java:156)
           at com.peoplesoft.pt.security.wss.PSDoAllSender.invoke(PSDoAllSender.java:190)
           ... 26 more
        • 1. Re: Unable to generate outbound  ws-security soap header
          HakanBiroglu
          How did you setup the following WS security?
          Authentication Token: SAML Token or Username Token
          Encrypt
          Digitally Signed
          Use Default User ID
          Use External User ID

          Based on this you need to take different steps.
          What does the request look like?

          Please have a look at PeopleBooks for the different options on WS- Security
          PeopleBooks > PeopleTools 8.52: PeopleSoft Integration Broker Administration > Setting Up Secure Integration Environments > Implementing Web Services Security
          • 2. Re: Unable to generate outbound  ws-security soap header
            662556
            needed ws-security.

            Authentication type : username token and check "use External User ID".

            I have gone through the documentation and no luck.

            The request looks like:

            <?xml version="1.0"?>
            <SOAP-ENV:Envelope xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Body><execute xmlns="http://service.axf.imaging.oracle/"><request xmlns=""><username>VP1</username><commandNamespace>StartInvoiceProcess</commandNamespace><solutionNamespace>InvoiceProcess</solutionNamespace><userContext/><systemName>PSFT</systemName><role>guest</role><conversationId/><userContext/><requestParameters/></request></execute></SOAP-ENV:Body></SOAP-ENV:Envelope>
            • 3. Re: Unable to generate outbound  ws-security soap header
              HakanBiroglu
              Do you have encryption enabled?
              Because the error looks like an encryption error.