-
Bug
-
Resolution: Done
-
Minor
-
None
-
None
-
Workaround Exists
-
When the SEI has parameters like:
public BondSVO getBond(String inp1, String inp2, String[] inp3)
the generated jaxrpc-mapping.xml looks like
<java-xml-type-mapping>
<java-type>org.jboss.test.ws.jsr181.webservice.Sample_getBond_RequestStruct</java-type>
<root-type-qname xmlns:typeNS='http://org.jboss.ws/samples/jsr109pojo/types'>typeNS:getBond</root-type-qname>
<qname-scope>complexType</qname-scope>
<variable-mapping>
<java-variable-name>arrayOfString_3</java-variable-name>
<xml-element-name>arrayOfString_3</xml-element-name>
</variable-mapping>
<variable-mapping>
<java-variable-name>string_1</java-variable-name>
<xml-element-name>String_1</xml-element-name>
</variable-mapping>
<variable-mapping>
<java-variable-name>string_2</java-variable-name>
<xml-element-name>String_2</xml-element-name>
</variable-mapping>
</java-xml-type-mapping>
where the array should have actually come as the last parameter.
This leads to the following exception:
org.jboss.ws.WSException: Cannot find java method: getBond
at org.jboss.ws.metadata.OperationMetaData.getJavaMethod(OperationMetaData.java:208)
at org.jboss.ws.metadata.EndpointMetaData.getOperation(EndpointMetaData.java:324)
at org.jboss.ws.jaxrpc.MetaDataSynchronization.synchronizeServiceEndpointInterface(MetaDataSynchronization.java:57)
at org.jboss.ws.jaxrpc.ServiceImpl.createProxy(ServiceImpl.java:338)
at org.jboss.ws.jaxrpc.ServiceImpl.getPort(ServiceImpl.java:303)