Uploaded image for project: 'Axis2'
  1. Axis2
  2. AXIS2-3704

SOAP Action is not set by service Client when its invoked via a WSDL

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Critical
    • Resolution: Fixed
    • None
    • 1.4
    • None
    • None

    Description

      I was trying accessing an external webservice using service client as follows,

      ServiceClient serviceClient = new ServiceClient(null, new URL("http://www.webservicex.net/CurrencyConvertor.asmx?wsdl"), new QName("http://www.webserviceX.NET/","CurrencyConvertor"), "CurrencyConvertorSoap");
      StAXOMBuilder stAXOMBuilder = new StAXOMBuilder(new ByteArrayInputStream(
      "<ConversionRate><FromCurrency>USD</FromCurrency><ToCurrency>LKR</ToCurrency></ConversionRate>".getBytes()));
      OMElement omElement = serviceClient.sendReceive(
      new QName("http://www.webserviceX.NET/", "ConversionRate"), stAXOMBuilder.getDocumentElement());
      System.out.println(omElement.toString());

      But this call was failing with the exception "System.Web.Services.Protocols.SoapException: Server did not recognize the value of HTTP Header SOAPAction: ."

      The request sent by the client had the header SOAPAction: "" whereas the WSDL had <soap:operation soapAction="http://www.webserviceX.NET/ConversionRate" style="document"/>

      debugging through I noticed the following lines in WSDL11ToAxisServiceBuilder (Line 2340)

      if (isServerSide)

      { axisBindingOperation.getAxisOperation().setSoapAction(soapActionURI); }

      else

      { axisBindingOperation.getAxisOperation().setOutputAction(soapActionURI); }

      and CommonsHTTPTransportSender has the following in line 200

      soapActionString = messageContext.getAxisOperation()
      .getSoapAction();

      Now this looks like a bug to me. Does anybody have a clue as to why we dont set the soapAction on the axisoperation when the axisService is on the client side?

      Thanks,
      Keith.

      Attachments

        Activity

          People

            Unassigned Unassigned
            keithgchapman Keith Godwin Chapman
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: