[
https://issues.apache.org/jira/browse/CAMEL-6720?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Claus Ibsen resolved CAMEL-6720.
--------------------------------
Resolution: Fixed
Assignee: Claus Ibsen
Fix Version/s: (was: Future)
2.18.0
2.17.1
2.16.4
Thanks Movee for the idea for the fix.
> SoapJaxbDataFormat not handling correctly SOAP action with request wrapper
> element
> ----------------------------------------------------------------------------------
>
> Key: CAMEL-6720
> URL: https://issues.apache.org/jira/browse/CAMEL-6720
> Project: Camel
> Issue Type: Bug
> Components: camel-soap
> Affects Versions: 2.12.0
> Reporter: Ondrej Fischer
> Assignee: Claus Ibsen
> Priority: Minor
> Fix For: 2.16.4, 2.17.1, 2.18.0
>
> Attachments: ServiceInterfaceStrategy.java
>
>
> If an interface to be used as SOAP service interface is configured to have
> parameters wrapped in a request wrapper element (eg. using @RequestWrapper),
> then an attempt to invoke a its method will throw NPE:
> {code}
> java.lang.NullPointerException
> at
> org.apache.camel.dataformat.soap.name.ServiceInterfaceStrategy.findQNameForSoapActionOrType(ServiceInterfaceStrategy.java:207)
> at
> org.apache.camel.dataformat.soap.SoapJaxbDataFormat.createContentFromObject(SoapJaxbDataFormat.java:208)
> at
> org.apache.camel.dataformat.soap.Soap11DataFormatAdapter.doMarshal(Soap11DataFormatAdapter.java:77)
> at
> org.apache.camel.dataformat.soap.SoapJaxbDataFormat.marshal(SoapJaxbDataFormat.java:141)
> at
> org.apache.camel.processor.MarshalProcessor.process(MarshalProcessor.java:59)
> {code}
> The reason for this is sequence of following:
> # The ServiceInterfaceStrategy is creating a mapping of methods to MethodInfo.
> # In case of RequestWrapper, the wrapper class is used as a single input
> TypeInfo, and no TypeInfo is being held for the real parameters.
> # At method invocation, it tries to lookup the TypeInfo in the MethodInfo,
> but for the real parameter class, and it only contains mapping for the
> request wrapper. So it fails with NPE.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)