Missing output parameters in wrapped method implementations generate NPE
------------------------------------------------------------------------

                 Key: CXF-3836
                 URL: https://issues.apache.org/jira/browse/CXF-3836
             Project: CXF
          Issue Type: Bug
          Components: JAX-WS Runtime
    Affects Versions: 2.4.2, 2.3.6
            Reporter: Scott S. McCoy


When implementing an interface generated from a WSDL which has an output 
parameter stored in a holder, as in

{{{
        @WebParam(mode = WebParam.Mode.OUT, name = "created", targetNamespace = 
"")
        javax.xml.ws.Holder<java.lang.Boolean> created
}}}

Failing to provide a value in the supplied holder results in an NPE, 
originating from the runtime-generated WrapperTypeHelper class, e.g.

{{{
java.lang.NullPointerException
        at 
com.vindicia.soap.v3_6.account.UpdateResponse_WrapperTypeHelper1.createWrapperObject(Unknown
 Source)
        at 
org.apache.cxf.jaxws.interceptors.WrapperClassOutInterceptor.handleMessage(WrapperClassOutInterceptor.java:105)
}}}

This fails to inform the user of the cause of the issue or how to diagnose it.  
Instead, required parameters should be validated to atleast be not null before 
they are assumed to have been provided.

I have validated this behavior on 2.4.2, 2.4.0 and 2.3.6.

The work-around for the user is of course to provide a non-null value in the 
holder object.

--
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

        

Reply via email to