Uploaded image for project: 'Spring Web Services'
  1. Spring Web Services
  2. SWS-610

Incompatibility with WS-I requirement R2750

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.0 M3, 1.5.10
    • Component/s: None
    • Labels:
      None

      Description

      According to WS-I Basic Profile 1.1 requirement R2750:

      A CONSUMER MUST ignore an envelope carried in a HTTP response message in a one-way operation.

      This doesn't seem to be the case with Spring WS. When calling a one-way soap service that returns an empty soap envelope, an exception is thrown.

      This is the soap response:

      <SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
         <SOAP:Header/>
         <SOAP:Body/>
      </SOAP:Envelope>
      

      And this is the exception:

      org.springframework.ws.client.WebServiceTransformerException: Transformation error: javax.xml.transform.TransformerException: Source object passed to ''{0}'' has no contents.; 
      nested exception is javax.xml.transform.TransformerException: javax.xml.transform.TransformerException: Source object passed to ''{0}'' has no contents.
      	at org.springframework.ws.client.core.WebServiceTemplate.doSendAndReceive(WebServiceTemplate.java:572)
      	at org.springframework.ws.client.core.WebServiceTemplate.sendAndReceive(WebServiceTemplate.java:502)
      	at org.springframework.ws.client.core.WebServiceTemplate.doSendAndReceive(WebServiceTemplate.java:457)
      	at org.springframework.ws.client.core.WebServiceTemplate.sendSourceAndReceiveToResult(WebServiceTemplate.java:403)
      	at org.springframework.ws.client.core.WebServiceTemplate.sendSourceAndReceiveToResult(WebServiceTemplate.java:394)
      	at org.springframework.ws.client.core.WebServiceTemplate.sendSourceAndReceiveToResult(WebServiceTemplate.java:384)
      	<...custom code...>
      Caused by: javax.xml.transform.TransformerException: javax.xml.transform.TransformerException: Source object passed to ''{0}'' has no contents.
      	at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:720)
      	at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:313)
      	at org.springframework.ws.client.core.WebServiceTemplate$4.extractData(WebServiceTemplate.java:407)
      	at org.springframework.ws.client.core.WebServiceTemplate$SourceExtractorMessageExtractor.extractData(WebServiceTemplate.java:771)
      	at org.springframework.ws.client.core.WebServiceTemplate.doSendAndReceive(WebServiceTemplate.java:560)
      	... 33 more
      Caused by: javax.xml.transform.TransformerException: Source object passed to ''{0}'' has no contents.
      	at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transformIdentity(TransformerImpl.java:668)
      	at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:708)
      	... 37 more
      

        Attachments

          Activity

            People

            • Assignee:
              arjen.poutsma Arjen Poutsma
              Reporter:
              cott Christian Ott
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0d
                0d
                Logged:
                Time Spent - 1h
                1h