cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Aki Yoshida (Created) (JIRA)" <j...@apache.org>
Subject [jira] [Created] (CXF-3926) Supporting JAXWS Provider's null response handling (the provider's invoke may return a null to indicate no response should be sent back)
Date Mon, 21 Nov 2011 16:48:51 GMT
Supporting JAXWS Provider's null response handling (the provider's invoke may return a null
to indicate no response should be sent back)
----------------------------------------------------------------------------------------------------------------------------------------

                 Key: CXF-3926
                 URL: https://issues.apache.org/jira/browse/CXF-3926
             Project: CXF
          Issue Type: Improvement
          Components: JAX-WS Runtime
    Affects Versions: 2.4.4
            Reporter: Aki Yoshida
            Assignee: Aki Yoshida
            Priority: Minor
             Fix For: 2.4.5, 2.5.1


Jaxws 2.2 section 5.1.1 states:
"When an invoke method returns null, it is considered that no response needs to be sent by
service."

This use case assumes there is no information about the operation's MEP (no wsdl, no java
annotation).

CXF currently is throwing an exception in this case as it tries to serialize the null object
in its response (or outbound) chain processing.

21.11.2011 11:56:08 org.apache.cxf.phase.PhaseInterceptorChain doDefaultLogging
WARNUNG: Interceptor for {http://server.any.test.tmp/}GreeterService#{http://server.any.test.tmp/}invoke
has thrown exception, unwinding now
java.lang.NullPointerException
	at org.apache.cxf.staxutils.StaxUtils.copy(StaxUtils.java:418)
	at org.apache.cxf.databinding.source.XMLStreamDataWriter.write(XMLStreamDataWriter.java:88)
	at org.apache.cxf.databinding.source.XMLStreamDataWriter.write(XMLStreamDataWriter.java:50)
	at org.apache.cxf.databinding.source.XMLStreamDataWriter.write(XMLStreamDataWriter.java:46)
	at org.apache.cxf.interceptor.AbstractOutDatabindingInterceptor.writeParts(AbstractOutDatabindingInterceptor.java:119)
	at org.apache.cxf.interceptor.BareOutInterceptor.handleMessage(BareOutInterceptor.java:68)
        ...

To support the behavior given by the above paragraph, we need to handle this condition, whether
a provider based service is returning a null, and if so, return no response content (i.e,
HTTP 202 with no content) instead of throwing an exception and returning a SOAP fault.

To be compatible with the old behavior (i.e, throwing an exception), we can introduce a runtime
property to enable or disable this provider's null response behavior.



--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message