Uploaded image for project: 'Red Hat CodeReady Studio (devstudio)'
  1. Red Hat CodeReady Studio (devstudio)
  2. JBDS-1602

Web Service Tester generates SOAP bodies that cause marshaling issues

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • 4.1.0.CR1
    • 4.0.0.GA
    • None
    • Hide

      Move the generated namespace text out of the body of the xml document to the top of it and everything executes without issues.

      Show
      Move the generated namespace text out of the body of the xml document to the top of it and everything executes without issues.

    Description

      Open JBDS 4, go to Window -> Show View -> Other -> Web Service Tester.

      If I enter my WSDL and select the appropriate Service, Port, and Operation (there's only 1), the SOAP Body gets filled in as:

      <?xml version="1.0" encoding="utf-8" standalone="yes" ?>
      <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" >
      <soap:Body>
      <getStockQuoteBySymbol xmlns = "http://www.jboss.com/webservices/StockQuoteService">
      <arg0>?</arg0>
      </getStockQuoteBySymbol>
      </soap:Body>
      </soap:Envelope>

      which seems to cause the operation invocation to choke with a NullPointerException. It appears to be a problem with unmarshalling on the Web Service side. Interesting note is that soapUI causes the same behavior when I copy the above SOAP envelope into soapUI and execute the call.

      If I change the SOAP envelope by moving the operation namespace to the top of the XML body:

      <?xml version="1.0" encoding="utf-8" standalone="yes" ?>
      <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
      xmlns:stoc = "http://www.jboss.com/webservices/StockQuoteService" >
      <soap:Body>
      <stoc:getStockQuoteBySymbol>
      <arg0>?</arg0>
      </stoc:getStockQuoteBySymbol>
      </soap:Body>
      </soap:Envelope>

      Everything executes perfectly. So, I am assuming that the Web Service Tester is generating a SOAP Body that results in a failed web service invocation. I've tried this with a few different web services (String and float args) and they all fail the same.

      I am trying to invoke a JAX-WS based web service. I have tried an ASMX-based web service up on webservicex.net (http://www.webservicex.net/stockquote.asmx?WSDL) and not had the same issue.

      Attachments

        1. jbds-1602-partial.patch
          15 kB
        2. JBDS41.patch
          82 kB
        3. Jira - JBDS-1602.zip
          15 kB
        4. testerutils.diff
          5 kB
        5. WSTester_JBDS5.patch
          152 kB

        Activity

          People

            bfitzpat_rh Brian Fitzpatrick (Inactive)
            rhbillmeyer_jira Bill Meyer (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: