cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jesus CASTILLO (JIRA)" <>
Subject [jira] [Created] (CXF-4812) NPE on MessageModeInInterceptor when sending empty SOAPBody
Date Tue, 05 Feb 2013 17:48:11 GMT
Jesus CASTILLO created CXF-4812:

             Summary: NPE on MessageModeInInterceptor when sending empty SOAPBody
                 Key: CXF-4812
             Project: CXF
          Issue Type: Bug
          Components: JAX-WS Runtime, Soap Binding
    Affects Versions: 2.7.0
         Environment: Tested on Eclipse IDE environment on a maven-based project.
CXF version is 2.7.0
Java is JDK1.6.0_37

            Reporter: Jesus CASTILLO

I'm getting a NPE on MessageModeInInterceptor when sending a SOAP message with empty body.
In addition, no WSDL and using JAX-WS Dispatch API and Provider interface with SOAPMessage.

Everything is fine if the SOAPBody contains a payload but it fails when is empty. This is
the stack trace.

        at org.apache.cxf.jaxws.interceptors.MessageModeInInterceptor.handleMessage(
        at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(
        at org.apache.cxf.transport.ChainInitiationObserver.onMessage(
        at org.apache.cxf.transport.http_jetty.JettyHTTPDestination.serviceRequest(
        at org.apache.cxf.transport.http_jetty.JettyHTTPDestination.doService(
        at org.apache.cxf.transport.http_jetty.JettyHTTPHandler.handle(
        at org.eclipse.jetty.server.handler.ContextHandler.doHandle(
        at org.eclipse.jetty.server.handler.ContextHandler.doScope(
        at org.eclipse.jetty.server.handler.ScopedHandler.handle(
        at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(
        at org.eclipse.jetty.server.handler.HandlerWrapper.handle(
        at org.eclipse.jetty.server.Server.handle(
        at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(
        at org.eclipse.jetty.server.AbstractHttpConnection.content(
        at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(
        at org.eclipse.jetty.http.HttpParser.parseNext(
        at org.eclipse.jetty.http.HttpParser.parseAvailable(
        at org.eclipse.jetty.server.AsyncHttpConnection.handle(
        at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(
        at org.eclipse.jetty.util.thread.QueuedThreadPool$

and that line in the interceptor is:

    public void handleMessage(Message message) throws Fault {
        if (!bindingName.equals(message.getExchange().get(BindingOperationInfo.class)
                               .getBinding().getName())) {

It seems that the BindingOperationInfo is not found in the exchange.

This is the Test scenario:

1. Tested on CXF 2.7.0
2. NO WSDL. It's pure SOAP messaging. 
3. Soap 1.2 Binding although tested with 1.1. and is the same error.
4. Client side using JAX-WS Dispatch API with SOAPMessage.
5. Server side using JAX-WS Provider interface with SOAPMessage.



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

View raw message