When code is generated from the wsdl file using axis2 the order of the parameters is incorrect ----------------------------------------------------------------------------------------------
Key: ODE-235 URL: https://issues.apache.org/jira/browse/ODE-235 Project: ODE Issue Type: Improvement Components: Axis2 Integration Affects Versions: 1.2 Environment: axis2 1.3 Reporter: Douglas Scott Jackson After using wsdl2java from axis2 to generate code and test code for the pmapi.wsdl, I ran some tests against the process and instance management APIs. The code generated passed the parts in a different order than ode expected them. This caused failures when invoking the ode endpoints. Modifying the pmapi.wsdl by adding parameterOrder to the requests with 3 or more parts solved the problem. Attached is a patch which fixes the wsdl file so that it will generate the correct code with axis2 wsdl2java. Index: axis2/src/main/wsdl/pmapi.wsdl =================================================================== --- axis2/src/main/wsdl/pmapi.wsdl (revision 615241) +++ axis2/src/main/wsdl/pmapi.wsdl (working copy) @@ -237,7 +237,7 @@ <output message="tns:listAllProcessesOutput"/> <fault name="ManagementFault" message="tns:managementFault"/> </operation> - <operation name="listProcessesCustom"> + <operation name="listProcessesCustom" parameterOrder="filter orderKeys customizer"> <input message="tns:listProcessesCustomInput"/> <output message="tns:listProcessesCustomOutput"/> <fault name="ManagementFault" message="tns:managementFault"/> @@ -252,12 +252,12 @@ <output message="tns:getProcessInfoCustomOutput"/> <fault name="ManagementFault" message="tns:managementFault"/> </operation> - <operation name="setProcessProperty"> + <operation name="setProcessProperty" parameterOrder="pid propertyName propertyValue"> <input message="tns:setProcessPropertyInput"/> <output message="tns:setProcessPropertyOutput"/> <fault name="ManagementFault" message="tns:managementFault"/> </operation> - <operation name="setProcessPropertyNode"> + <operation name="setProcessPropertyNode" parameterOrder="pid propertyName propertyValue"> <input message="tns:setProcessPropertyNodeInput"/> <output message="tns:setProcessPropertyNodeOutput"/> <fault name="ManagementFault" message="tns:managementFault"/> @@ -280,7 +280,7 @@ </portType> <portType name="InstanceManagementPortType"> - <operation name="listInstances"> + <operation name="listInstances" parameterOrder="filter order limit"> <input message="tns:listInstancesInput"/> <output message="tns:listInstancesOutput"/> <fault name="ManagementFault" message="tns:managementFault"/> @@ -320,7 +320,7 @@ <output message="tns:getVariableInfoOutput"/> <fault name="ManagementFault" message="tns:managementFault"/> </operation> - <operation name="listEvents"> + <operation name="listEvents" parameterOrder="instanceFilter eventFilter maxCount"> <input message="tns:listEventsInput"/> <output message="tns:listEventsOutput"/> <fault name="ManagementFault" message="tns:managementFault"/> @@ -355,7 +355,7 @@ <output message="tns:deleteOutput"/> <fault name="ManagementFault" message="tns:managementFault"/> </operation> - <operation name="recoverActivity"> + <operation name="recoverActivity" parameterOrder="iid aid action"> <input message="tns:recoverActivityInput"/> <output message="tns:recoverActivityOutput"/> <fault name="ManagementFault" message="tns:managementFault"/> -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.