[
https://issues.apache.org/jira/browse/AXIS2-1931?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12462715
]
Davide De Benedictis commented on AXIS2-1931:
---------------------------------------------
I downloaded the nightly built and the problem is still there.
The problem lies in the wsdl element names: "return".
esterday I dowloaded the 1.1 src and I modified and recompiled the
sources solving (apparently) the problem.
Given that I was getting the "return" element name on the
automatically generated wsdl I just changed two definitions:
In org.apache.axis2.rpc.receivers.RPCUtil.java at line 45
private static String RETURN_WRAPPER = "return";
to
private static String RETURN_WRAPPER = "_return";
In org.apache.ws.java2wsdl.SchemaGenerator at line 216
generateSchemaForType(sequence, returnType, "return");
to
generateSchemaForType(sequence, returnType, "_return");
This worked for me, I hope helps.
Bye
> wsdl output parameter named "return"
> ------------------------------------
>
> Key: AXIS2-1931
> URL: https://issues.apache.org/jira/browse/AXIS2-1931
> Project: Apache Axis 2.0 (Axis2)
> Issue Type: Bug
> Components: wsdl
> Affects Versions: 1.1
> Environment: ALL
> Reporter: Davide De Benedictis
>
> Output parameters contained into an automagically generated wsdl file are
> named "return" by default.
> Generating client artifacts with thirdy parties tool as WSTOOLS boundled with
> JBossWS1.04GA result in invalid Java attribute class names. So wsdl must be
> corrected by hand. A simple workaround would be putting a "_" (underscore)
> before the output parameter name.
> One serviceImpl method snippet:
> public String getcurrentTAGs ()
> {
> // business code here....
> return tagTable.size();
> }
> The complete automatic generated WSDL:
> <wsdl:definitions xmlns:axis2="http://neo.sogei.com"
> xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
> xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
> xmlns:ns0="http://neo.sogei.com/xsd"
> xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"
> xmlns:ns1="http://org.apache.axis2/xsd"
> xmlns:xs="http://www.w3.org/2001/XMLSchema"
> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> targetNamespace="http://neo.sogei.com">
> <wsdl:documentation>NEOService</wsdl:documentation>
> <wsdl:types>
> <xs:schema xmlns:ns="http://neo.sogei.com/xsd"
> attributeFormDefault="qualified" elementFormDefault="qualified"
> targetNamespace="http://neo.sogei.com/xsd">
> <xs:element name="getAlertFileResponse">
> <xs:complexType>
> <xs:sequence>
> <xs:element name="return" nillable="true" type="xs:string"/>
> </xs:sequence>
> </xs:complexType>
> </xs:element>
> <xs:element name="getConfigurationFileResponse">
> <xs:complexType>
> <xs:sequence>
> <xs:element name="return" nillable="true" type="xs:string"/>
> </xs:sequence>
> </xs:complexType>
> </xs:element>
> <xs:element name="getcurrentTAGsResponse">
> <xs:complexType>
> <xs:sequence>
> <xs:element name="return" nillable="true" type="xs:string"/>
> </xs:sequence>
> </xs:complexType>
> </xs:element>
> <xs:element name="getProcessorInfo">
> <xs:complexType>
> <xs:sequence>
> <xs:element name="processorInstance" nillable="true"
> type="xs:string"/>
> </xs:sequence>
> </xs:complexType>
> </xs:element>
> <xs:element name="getProcessorInfoResponse">
> <xs:complexType>
> <xs:sequence>
> <xs:element maxOccurs="unbounded" name="return" nillable="true"
> type="xs:string"/>
> </xs:sequence>
> </xs:complexType>
> </xs:element>
> <xs:element name="getProcessorInstancesResponse">
> <xs:complexType>
> <xs:sequence>
> <xs:element maxOccurs="unbounded" name="return" nillable="true"
> type="xs:string"/>
> </xs:sequence>
> </xs:complexType>
> </xs:element>
> <xs:element name="getRunningServicesResponse">
> <xs:complexType>
> <xs:sequence>
> <xs:element maxOccurs="unbounded" name="return" nillable="true"
> type="xs:string"/>
> </xs:sequence>
> </xs:complexType>
> </xs:element>
> <xs:element name="resetProcessorTracesFault">
> <xs:complexType>
> <xs:sequence>
> <xs:element name="resetProcessorTracesFault" type="xs:anyType"/>
> </xs:sequence>
> </xs:complexType>
> </xs:element>
> <xs:element name="resetTAGTracesFault">
> <xs:complexType>
> <xs:sequence>
> <xs:element name="resetTAGTracesFault" type="xs:anyType"/>
> </xs:sequence>
> </xs:complexType>
> </xs:element>
> <xs:element name="setCSMFTraceLevel">
> <xs:complexType>
> <xs:sequence>
> <xs:element name="provider" nillable="true" type="xs:int"/>
> <xs:element name="csmf" nillable="true" type="xs:int"/>
> <xs:element name="tag" nillable="true" type="xs:int"/>
> <xs:element name="newLevel" nillable="true" type="xs:int"/>
> </xs:sequence>
> </xs:complexType>
> </xs:element>
> <xs:element name="setPSxServicePermission">
> <xs:complexType>
> <xs:sequence>
> <xs:element name="psxService" nillable="true" type="xs:int"/>
> <xs:element name="psxMessage" nillable="true" type="xs:int"/>
> <xs:element name="status" nillable="true" type="xs:boolean"/>
> </xs:sequence>
> </xs:complexType>
> </xs:element>
> <xs:element name="setProcessorTraceLevel">
> <xs:complexType>
> <xs:sequence>
> <xs:element name="PID" nillable="true" type="xs:int"/>
> <xs:element name="newLevel" nillable="true" type="xs:int"/>
> </xs:sequence>
> </xs:complexType>
> </xs:element>
> </xs:schema>
> </wsdl:types>
> <wsdl:message name="setCSMFTraceLevelMessage">
> <wsdl:part name="part1" element="ns0:setCSMFTraceLevel"/>
> </wsdl:message>
> <wsdl:message name="setPSxServicePermissionMessage">
> <wsdl:part name="part1" element="ns0:setPSxServicePermission"/>
> </wsdl:message>
> <wsdl:message name="getProcessorInfoMessage">
> <wsdl:part name="part1" element="ns0:getProcessorInfo"/>
> </wsdl:message>
> <wsdl:message name="getProcessorInfoResponse">
> <wsdl:part name="part1" element="ns0:getProcessorInfoResponse"/>
> </wsdl:message>
> <wsdl:message name="getConfigurationFileMessage"/>
> <wsdl:message name="getConfigurationFileResponse">
> <wsdl:part name="part1" element="ns0:getConfigurationFileResponse"/>
> </wsdl:message>
> <wsdl:message name="getRunningServicesMessage"/>
> <wsdl:message name="getRunningServicesResponse">
> <wsdl:part name="part1" element="ns0:getRunningServicesResponse"/>
> </wsdl:message>
> <wsdl:message name="setProcessorTraceLevelMessage">
> <wsdl:part name="part1" element="ns0:setProcessorTraceLevel"/>
> </wsdl:message>
> <wsdl:message name="resetProcessorTracesMessage"/>
> <wsdl:message name="resetProcessorTracesFault">
> <wsdl:part name="part1" element="ns0:resetProcessorTracesFault"/>
> </wsdl:message>
> <wsdl:message name="getProcessorInstancesMessage"/>
> <wsdl:message name="getProcessorInstancesResponse">
> <wsdl:part name="part1" element="ns0:getProcessorInstancesResponse"/>
> </wsdl:message>
> <wsdl:message name="getAlertFileMessage"/>
> <wsdl:message name="getAlertFileResponse">
> <wsdl:part name="part1" element="ns0:getAlertFileResponse"/>
> </wsdl:message>
> <wsdl:message name="resetTAGTracesMessage"/>
> <wsdl:message name="resetTAGTracesFault">
> <wsdl:part name="part1" element="ns0:resetTAGTracesFault"/>
> </wsdl:message>
> <wsdl:message name="getcurrentTAGsMessage"/>
> <wsdl:message name="getcurrentTAGsResponse">
> <wsdl:part name="part1" element="ns0:getcurrentTAGsResponse"/>
> </wsdl:message>
> <wsdl:portType name="NEOServicePortType">
> <wsdl:operation name="setCSMFTraceLevel">
> <wsdl:input xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
> message="axis2:setCSMFTraceLevelMessage" wsaw:Action="urn:setCSMFTraceLevel"/>
> </wsdl:operation>
> <wsdl:operation name="setPSxServicePermission">
> <wsdl:input xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
> message="axis2:setPSxServicePermissionMessage"
> wsaw:Action="urn:setPSxServicePermission"/>
> </wsdl:operation>
> <wsdl:operation name="getProcessorInfo">
> <wsdl:input xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
> message="axis2:getProcessorInfoMessage" wsaw:Action="urn:getProcessorInfo"/>
> <wsdl:output message="axis2:getProcessorInfoResponse"/>
> </wsdl:operation>
> <wsdl:operation name="getConfigurationFile">
> <wsdl:input xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
> message="axis2:getConfigurationFileMessage"
> wsaw:Action="urn:getConfigurationFile"/>
> <wsdl:output message="axis2:getConfigurationFileResponse"/>
> </wsdl:operation>
> <wsdl:operation name="getRunningServices">
> <wsdl:input xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
> message="axis2:getRunningServicesMessage"
> wsaw:Action="urn:getRunningServices"/>
> <wsdl:output message="axis2:getRunningServicesResponse"/>
> </wsdl:operation>
> <wsdl:operation name="setProcessorTraceLevel">
> <wsdl:input xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
> message="axis2:setProcessorTraceLevelMessage"
> wsaw:Action="urn:setProcessorTraceLevel"/>
> </wsdl:operation>
> <wsdl:operation name="resetProcessorTraces">
> <wsdl:input xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
> message="axis2:resetProcessorTracesMessage"
> wsaw:Action="urn:resetProcessorTraces"/>
> <wsdl:fault message="axis2:resetProcessorTracesFault"
> name="resetProcessorTracesFault"/>
> </wsdl:operation>
> <wsdl:operation name="getProcessorInstances">
> <wsdl:input xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
> message="axis2:getProcessorInstancesMessage"
> wsaw:Action="urn:getProcessorInstances"/>
> <wsdl:output message="axis2:getProcessorInstancesResponse"/>
> </wsdl:operation>
> <wsdl:operation name="getAlertFile">
> <wsdl:input xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
> message="axis2:getAlertFileMessage" wsaw:Action="urn:getAlertFile"/>
> <wsdl:output message="axis2:getAlertFileResponse"/>
> </wsdl:operation>
> <wsdl:operation name="resetTAGTraces">
> <wsdl:input xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
> message="axis2:resetTAGTracesMessage" wsaw:Action="urn:resetTAGTraces"/>
> <wsdl:fault message="axis2:resetTAGTracesFault"
> name="resetTAGTracesFault"/>
> </wsdl:operation>
> <wsdl:operation name="getcurrentTAGs">
> <wsdl:input xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
> message="axis2:getcurrentTAGsMessage" wsaw:Action="urn:getcurrentTAGs"/>
> <wsdl:output message="axis2:getcurrentTAGsResponse"/>
> </wsdl:operation>
> </wsdl:portType>
> <wsdl:binding name="NEOServiceSOAP11Binding"
> type="axis2:NEOServicePortType">
> <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
> style="document"/>
> <wsdl:operation name="setCSMFTraceLevel">
> <soap:operation soapAction="urn:setCSMFTraceLevel" style="document"/>
> <wsdl:input>
> <soap:body use="literal"/>
> </wsdl:input>
> </wsdl:operation>
> <wsdl:operation name="setPSxServicePermission">
> <soap:operation soapAction="urn:setPSxServicePermission"
> style="document"/>
> <wsdl:input>
> <soap:body use="literal"/>
> </wsdl:input>
> </wsdl:operation>
> <wsdl:operation name="getProcessorInfo">
> <soap:operation soapAction="urn:getProcessorInfo" style="document"/>
> <wsdl:input>
> <soap:body use="literal"/>
> </wsdl:input>
> <wsdl:output>
> <soap:body use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> <wsdl:operation name="getConfigurationFile">
> <soap:operation soapAction="urn:getConfigurationFile" style="document"/>
> <wsdl:input>
> <soap:body use="literal"/>
> </wsdl:input>
> <wsdl:output>
> <soap:body use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> <wsdl:operation name="getRunningServices">
> <soap:operation soapAction="urn:getRunningServices" style="document"/>
> <wsdl:input>
> <soap:body use="literal"/>
> </wsdl:input>
> <wsdl:output>
> <soap:body use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> <wsdl:operation name="setProcessorTraceLevel">
> <soap:operation soapAction="urn:setProcessorTraceLevel"
> style="document"/>
> <wsdl:input>
> <soap:body use="literal"/>
> </wsdl:input>
> </wsdl:operation>
> <wsdl:operation name="resetProcessorTraces">
> <soap:operation soapAction="urn:resetProcessorTraces" style="document"/>
> <wsdl:input>
> <soap:body use="literal"/>
> </wsdl:input>
> <wsdl:fault name="resetProcessorTracesFault">
> <soap:body use="literal"/>
> </wsdl:fault>
> </wsdl:operation>
> <wsdl:operation name="getProcessorInstances">
> <soap:operation soapAction="urn:getProcessorInstances"
> style="document"/>
> <wsdl:input>
> <soap:body use="literal"/>
> </wsdl:input>
> <wsdl:output>
> <soap:body use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> <wsdl:operation name="getAlertFile">
> <soap:operation soapAction="urn:getAlertFile" style="document"/>
> <wsdl:input>
> <soap:body use="literal"/>
> </wsdl:input>
> <wsdl:output>
> <soap:body use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> <wsdl:operation name="resetTAGTraces">
> <soap:operation soapAction="urn:resetTAGTraces" style="document"/>
> <wsdl:input>
> <soap:body use="literal"/>
> </wsdl:input>
> <wsdl:fault name="resetTAGTracesFault">
> <soap:body use="literal"/>
> </wsdl:fault>
> </wsdl:operation>
> <wsdl:operation name="getcurrentTAGs">
> <soap:operation soapAction="urn:getcurrentTAGs" style="document"/>
> <wsdl:input>
> <soap:body use="literal"/>
> </wsdl:input>
> <wsdl:output>
> <soap:body use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> </wsdl:binding>
> <wsdl:binding name="NEOServiceSOAP12Binding"
> type="axis2:NEOServicePortType">
> <soap12:binding transport="http://schemas.xmlsoap.org/soap/http"
> style="document"/>
> <wsdl:operation name="setCSMFTraceLevel">
> <soap12:operation soapAction="urn:setCSMFTraceLevel" style="document"/>
> <wsdl:input>
> <soap12:body use="literal"/>
> </wsdl:input>
> </wsdl:operation>
> <wsdl:operation name="setPSxServicePermission">
> <soap12:operation soapAction="urn:setPSxServicePermission"
> style="document"/>
> <wsdl:input>
> <soap12:body use="literal"/>
> </wsdl:input>
> </wsdl:operation>
> <wsdl:operation name="getProcessorInfo">
> <soap12:operation soapAction="urn:getProcessorInfo" style="document"/>
> <wsdl:input>
> <soap12:body use="literal"/>
> </wsdl:input>
> <wsdl:output>
> <soap12:body use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> <wsdl:operation name="getConfigurationFile">
> <soap12:operation soapAction="urn:getConfigurationFile"
> style="document"/>
> <wsdl:input>
> <soap12:body use="literal"/>
> </wsdl:input>
> <wsdl:output>
> <soap12:body use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> <wsdl:operation name="getRunningServices">
> <soap12:operation soapAction="urn:getRunningServices" style="document"/>
> <wsdl:input>
> <soap12:body use="literal"/>
> </wsdl:input>
> <wsdl:output>
> <soap12:body use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> <wsdl:operation name="setProcessorTraceLevel">
> <soap12:operation soapAction="urn:setProcessorTraceLevel"
> style="document"/>
> <wsdl:input>
> <soap12:body use="literal"/>
> </wsdl:input>
> </wsdl:operation>
> <wsdl:operation name="resetProcessorTraces">
> <soap12:operation soapAction="urn:resetProcessorTraces"
> style="document"/>
> <wsdl:input>
> <soap12:body use="literal"/>
> </wsdl:input>
> <wsdl:fault name="resetProcessorTracesFault">
> <soap12:fault use="literal" name="resetProcessorTracesFault"/>
> </wsdl:fault>
> </wsdl:operation>
> <wsdl:operation name="getProcessorInstances">
> <soap12:operation soapAction="urn:getProcessorInstances"
> style="document"/>
> <wsdl:input>
> <soap12:body use="literal"/>
> </wsdl:input>
> <wsdl:output>
> <soap12:body use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> <wsdl:operation name="getAlertFile">
> <soap12:operation soapAction="urn:getAlertFile" style="document"/>
> <wsdl:input>
> <soap12:body use="literal"/>
> </wsdl:input>
> <wsdl:output>
> <soap12:body use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> <wsdl:operation name="resetTAGTraces">
> <soap12:operation soapAction="urn:resetTAGTraces" style="document"/>
> <wsdl:input>
> <soap12:body use="literal"/>
> </wsdl:input>
> <wsdl:fault name="resetTAGTracesFault">
> <soap12:fault use="literal" name="resetTAGTracesFault"/>
> </wsdl:fault>
> </wsdl:operation>
> <wsdl:operation name="getcurrentTAGs">
> <soap12:operation soapAction="urn:getcurrentTAGs" style="document"/>
> <wsdl:input>
> <soap12:body use="literal"/>
> </wsdl:input>
> <wsdl:output>
> <soap12:body use="literal"/>
> </wsdl:output>
> </wsdl:operation>
> </wsdl:binding>
> <wsdl:binding name="NEOServiceHttpBinding" type="axis2:NEOServicePortType">
> <http:binding verb="POST"/>
> <wsdl:operation name="setCSMFTraceLevel">
> <http:operation location="setCSMFTraceLevel"/>
> <wsdl:input>
> <mime:content type="text/xml"/>
> </wsdl:input>
> </wsdl:operation>
> <wsdl:operation name="setPSxServicePermission">
> <http:operation location="setPSxServicePermission"/>
> <wsdl:input>
> <mime:content type="text/xml"/>
> </wsdl:input>
> </wsdl:operation>
> <wsdl:operation name="getProcessorInfo">
> <http:operation location="getProcessorInfo"/>
> <wsdl:input>
> <mime:content type="text/xml"/>
> </wsdl:input>
> <wsdl:output>
> <mime:content type="text/xml"/>
> </wsdl:output>
> </wsdl:operation>
> <wsdl:operation name="getConfigurationFile">
> <http:operation location="getConfigurationFile"/>
> <wsdl:input>
> <mime:content type="text/xml"/>
> </wsdl:input>
> <wsdl:output>
> <mime:content type="text/xml"/>
> </wsdl:output>
> </wsdl:operation>
> <wsdl:operation name="getRunningServices">
> <http:operation location="getRunningServices"/>
> <wsdl:input>
> <mime:content type="text/xml"/>
> </wsdl:input>
> <wsdl:output>
> <mime:content type="text/xml"/>
> </wsdl:output>
> </wsdl:operation>
> <wsdl:operation name="setProcessorTraceLevel">
> <http:operation location="setProcessorTraceLevel"/>
> <wsdl:input>
> <mime:content type="text/xml"/>
> </wsdl:input>
> </wsdl:operation>
> <wsdl:operation name="resetProcessorTraces">
> <http:operation location="resetProcessorTraces"/>
> <wsdl:input>
> <mime:content type="text/xml"/>
> </wsdl:input>
> </wsdl:operation>
> <wsdl:operation name="getProcessorInstances">
> <http:operation location="getProcessorInstances"/>
> <wsdl:input>
> <mime:content type="text/xml"/>
> </wsdl:input>
> <wsdl:output>
> <mime:content type="text/xml"/>
> </wsdl:output>
> </wsdl:operation>
> <wsdl:operation name="getAlertFile">
> <http:operation location="getAlertFile"/>
> <wsdl:input>
> <mime:content type="text/xml"/>
> </wsdl:input>
> <wsdl:output>
> <mime:content type="text/xml"/>
> </wsdl:output>
> </wsdl:operation>
> <wsdl:operation name="resetTAGTraces">
> <http:operation location="resetTAGTraces"/>
> <wsdl:input>
> <mime:content type="text/xml"/>
> </wsdl:input>
> </wsdl:operation>
> <wsdl:operation name="getcurrentTAGs">
> <http:operation location="getcurrentTAGs"/>
> <wsdl:input>
> <mime:content type="text/xml"/>
> </wsdl:input>
> <wsdl:output>
> <mime:content type="text/xml"/>
> </wsdl:output>
> </wsdl:operation>
> </wsdl:binding>
> <wsdl:service name="NEOService">
> <wsdl:port name="NEOServiceSOAP11port_http"
> binding="axis2:NEOServiceSOAP11Binding">
> <soap:address
> location="http://127.0.0.1:8080/axis2-neo/services/NEOService"/>
> </wsdl:port>
> <wsdl:port name="NEOServiceSOAP12port_http"
> binding="axis2:NEOServiceSOAP12Binding">
> <soap12:address
> location="http://127.0.0.1:8080/axis2-neo/services/NEOService"/>
> </wsdl:port>
> <wsdl:port name="NEOServiceHttpport1"
> binding="axis2:NEOServiceHttpBinding">
> <http:address
> location="http://127.0.0.1:8080/axis2-neo/rest/NEOService"/>
> </wsdl:port>
> </wsdl:service>
> </wsdl:definitions>
> A sample generated wrapper class for a return type:
> /*
> * JBossWS WS-Tools Generated Source
> *
> * Generation Date: Wed Jan 03 14:37:04 CET 2007
> *
> * This generated source code represents a derivative work of the input to
> * the generator that produced it. Consult the input for the copyright and
> * terms of use that apply to this source code.
> */
> public class GetcurrentTAGsResponse
> {
> protected java.lang.String return;
> public GetcurrentTAGsResponse()
> {
> }
> public GetcurrentTAGsResponse(java.lang.String return)
> {
> this.return=return;
> }
> public java.lang.String getReturn()
> {
> return return ;
> }
> public void setReturn(java.lang.String return)
> {
> this.return=return;
> }
> }
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]