[ https://issues.apache.org/jira/browse/CXF-3836?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Scott S. McCoy updated CXF-3836: -------------------------------- Description: When implementing an interface generated from a WSDL which has an output parameter stored in a holder, as in {code} @WebParam(mode = WebParam.Mode.OUT, name = "created", targetNamespace = "") javax.xml.ws.Holder<java.lang.Boolean> created {code} Failing to provide a value in the supplied holder results in an NPE, originating from the runtime-generated WrapperTypeHelper class, e.g. {code} 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) {code} 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. It is worth noting this appears to only happen for output parameters that are normally mapped to primitive types. was: When implementing an interface generated from a WSDL which has an output parameter stored in a holder, as in {code} @WebParam(mode = WebParam.Mode.OUT, name = "created", targetNamespace = "") javax.xml.ws.Holder<java.lang.Boolean> created {/code} Failing to provide a value in the supplied holder results in an NPE, originating from the runtime-generated WrapperTypeHelper class, e.g. {code} 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) {/code} 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. It is worth noting this appears to only happen for output parameters that are normally mapped to primitive types. > 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.3.6, 2.4.2 > Reporter: Scott S. McCoy > > When implementing an interface generated from a WSDL which has an output > parameter stored in a holder, as in > {code} > @WebParam(mode = WebParam.Mode.OUT, name = "created", targetNamespace > = "") > javax.xml.ws.Holder<java.lang.Boolean> created > {code} > Failing to provide a value in the supplied holder results in an NPE, > originating from the runtime-generated WrapperTypeHelper class, e.g. > {code} > 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) > {code} > 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. > It is worth noting this appears to only happen for output parameters that are > normally mapped to primitive types. -- 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