cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jervis Liu (JIRA)" <j...@apache.org>
Subject [jira] Created: (CXF-269) CXF can not handle an empty reponse when using oneway operation.
Date Mon, 27 Nov 2006 07:44:21 GMT
CXF can not handle an empty reponse when using oneway operation.
----------------------------------------------------------------

                 Key: CXF-269
                 URL: http://issues.apache.org/jira/browse/CXF-269
             Project: CXF
          Issue Type: Bug
            Reporter: Jervis Liu


I am doing an interop test between CXF and Artix. What I found is that the hello_world sample
does not work anymore (yes, it was working before, so this is a bug introduced to cxf recently).

    [exec]   [xs-exec]      [java] Invoking greetMeOneWay...
    [exec]   [xs-exec]      [java] Exception in thread "main" org.apache.cxf.binding.soap.SoapFault:
Error reading XMLS
reamReader.
    [exec]   [xs-exec]      [java]     at org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(
eadHeadersInterceptor.java:113)
    [exec]   [xs-exec]      [java]     at org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(
eadHeadersInterceptor.java:45)
    [exec]   [xs-exec]      [java]     at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.
ava:147)
    [exec]   [xs-exec]      [java]     at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:251)
    [exec]   [xs-exec]      [java]     at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(
TTPConduit.java:485)
    [exec]   [xs-exec]      [java]     at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.doClose(HTTPCon

The reponse from Artix is as below:
Content-Type: text/xml
Content-Length: 0
Connection: Keep-Alive
Server: Artix/4.0

I believe this a valid reponse, but CXF can not handle. Digging into the code, I think the
following code snippet from HTTPCondit (line 461) are problematic:

            if (exchange != null
                && exchange.isOneWay()
                && responseCode != HttpURLConnection.HTTP_ACCEPTED) {
                //oneway operation
                connection.getInputStream().close();
                return;
            }

However, as I am not 100% sure what impact we may have on partial response if I change this
code, so I will leave this bug to someone more familiar with 
partial/decoupled response to fix. Basicly we should close the connection if received reponse
is for a one way operation.



-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message