12 Replies Latest reply on Jan 22, 2013 4:51 AM by mageshbk

    soapClient - why is the SOAPAction parameter mandatory ?

    simplex-software

      Greetings,

       

      I need to invoke an external web service from an ESB service and the natural way to do it seems to be through the SOAPAction. I'm using ESB 4.10 included in JBoss SOA-P 5.2. The exrenal web service is not managed by the organization and, as such, there is no other option then to use it as it is. And, for the givent end-point it doesn't declare any soapAction. This is absolutely legal as the WS-I Profile 1 mentions that this parameter is not mandatory.

       

      The problem I have is that, if I don't provide this parameter in my SOAPAction based action, or if I provide it with and empty value ("") the server raises the following exception:

       

      Caused by: org.jboss.soa.esb.ConfigurationException: Required configuration property 'SOAPAction' not defined on configuration 'action'.

          at org.jboss.soa.esb.helpers.ConfigTree.getRequiredAttribute(ConfigTree.java:244)

          at org.jboss.soa.esb.actions.soap.SOAPClient.<init>(SOAPClient.java:305)

          ... 66 more

      So, my questions are:

       

      1. Why is that exception raised when the soapAction property, which is optional, is not defined ?

      2. How to deal with web services which WSDL, as it's the most often the case, don't mention SOAPAction values ?

       

      Many thanks in advance for your help.

       

      Nicolas