cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andrei Shakirin (Created) (JIRA)" <>
Subject [jira] [Created] (CXF-4248) DocLiteralInInterceptor throws NPE if oneWay operation sends non-empty response
Date Thu, 19 Apr 2012 08:27:43 GMT
DocLiteralInInterceptor throws NPE if oneWay operation sends non-empty response

                 Key: CXF-4248
             Project: CXF
          Issue Type: Improvement
            Reporter: Andrei Shakirin
            Priority: Minor
         Attachments: HTTPConduit.patch


Test case: Web service provides oneWay operation (SoapUI mock), but sends non-empty SOAP response
Expected: response will be ignored
Actual: DocLiteralInInterceptor throws NPE
Caused by: java.lang.NullPointerException
        at org.apache.cxf.interceptor.DocLiteralInInterceptor.shouldWrapParameters(
        at org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage(
        at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(
        at org.apache.cxf.endpoint.ClientImpl.onMessage(
        at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(
        at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(
        at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(
        at org.apache.cxf.transport.AbstractConduit.close(
        at org.apache.cxf.transport.http.HTTPConduit.close(
        at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSende

Fix proposal: I have discovered that there are some cases when oneWay response can be proceeded.
Regarding Basic Profile 1.1: 
R2714 For one-way operations, an HTTP Response MESSAGE MAY contain an envelope.
One-way operations typically do not produce SOAP responses. However, some INSTANCEs may choose
to communicate infrastructure-related faults (e.g. MustUnderstand, VersionMismatch) in the
HTTP Response message.
In addition to this, the use of some protocol extensions (e.g.
WS-ReliableMessaging) may create the possibility for non-empty responses to one-way messages.
For these reasons the Basic Profile 1.1 requirement that the HTTP Response message not contain
a SOAP envelope has been relaxed.

I would propose to process oneWay response only in following cases:
A) if RM is active (check RMMessageConstants.RM_PROPERTIES_OUTBOUND, RMMessageConstants.RM_PROPERTIES_INBOUND)
B) if user activate it with org.apache.cxf.transport.processOneWayResponse property on consumer

In other case oneWay response will be ignored by client.

Patch is attached.


This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:!default.jspa
For more information on JIRA, see:


View raw message