You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Vishal Choudhari (JIRA)" <ji...@apache.org> on 2015/09/02 06:11:45 UTC
[jira] [Created] (AXIS2-5719) Unable to generate webservice client when ‘wsdl:part’ defined with attribute ‘type’ instead of ‘element’ using wsdl2code plugin
Vishal Choudhari created AXIS2-5719:
---------------------------------------
Summary: Unable to generate webservice client when ‘wsdl:part’ defined with attribute ‘type’ instead of ‘element’ using wsdl2code plugin
Key: AXIS2-5719
URL: https://issues.apache.org/jira/browse/AXIS2-5719
Project: Axis2
Issue Type: Bug
Components: codegen
Affects Versions: 1.6.3
Environment: Development
Reporter: Vishal Choudhari
Priority: Blocker
Using maven plugin for below mentioned ‘test.wsdl’ schema, webservice axis2 client is generated successfully as expected.
However, when wsdl:part has been changed from ‘<wsdl:part element="mws:Header" name="HeaderMsg" />’ to ‘<wsdl:part type="mws:HeaderType" name="HeaderMsg" />’, webservice axis2 client code generation is failing with below compilation error, even though changes made to wsdl are schema compliant. Is this a issue with axis2 library to handle this scenario? Please suggest.
Maven Plugin used for client code generation :
<plugin>
<groupId>org.apache.axis2</groupId>
<artifactId>axis2-wsdl2code-maven-plugin</artifactId>
<version>1.6.3</version>
<executions>
<execution>
<goals>
<goal>wsdl2code</goal>
</goals>
<configuration>
<packageName>sample.ws.stub</packageName>
<wsdlFile>file:///c:/test.wsdl</wsdlFile>
<databindingName>xmlbeans</databindingName>
</configuration>
</execution>
</executions>
</plugin>
Working Schema (test.wsdl) :
<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:mws="http://schemas.company.net/header"
xmlns:tns="http://schemas.company.com/test"
name="test" targetNamespace="http://schemas.company.com/test">
<wsdl:types>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://schemas.company.com/test" elementFormDefault="qualified">
<xsd:element name="Request" type="tns:RequestType" />
<xsd:complexType name="RequestType">
<xsd:sequence>
<xsd:element name="el1" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="Response" type="tns:ResponseType" />
<xsd:complexType name="ResponseType">
<xsd:sequence>
<xsd:element name="el2" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://schemas.company.net/header" targetNamespace="http://schemas.company.net/header" elementFormDefault="qualified">
<xsd:element name="Header" type="tns:HeaderType" />
<xsd:complexType name="HeaderType">
<xsd:sequence>
<xsd:element name="user" type="xsd:string" />
<xsd:element name="password" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
</wsdl:types>
<wsdl:message name="RequestMsg">
<wsdl:part element="tns:Request" name="RequestMsg" />
</wsdl:message>
<wsdl:message name="ResponseMsg">
<wsdl:part element="tns:Response" name="ResponseMsg" />
</wsdl:message>
<wsdl:message name="HeaderMsg">
<wsdl:part element="mws:Header" name="HeaderMsg" />
</wsdl:message>
<wsdl:portType name="Test">
<wsdl:operation name="Test">
<wsdl:input message="tns:RequestMsg" />
<wsdl:output message="tns:ResponseMsg" />
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="TestSoapBinding" type="tns:Test">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="Test">
<soap:operation soapAction="Test" />
<wsdl:input>
<soap:body use="literal" parts="RequestMsg" />
<soap:header use="literal" part="HeaderMsg" message="tns:HeaderMsg" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="TestService">
<wsdl:port name="Test" binding="tns:TestSoapBinding">
<soap:address location="http://server:9081/services/KKTEST2" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
Non-Working Schema :
when changed above schema for wsdl:part to use attribute ‘type’ instead of ‘element’, following compilation error is coming.
<wsdl:part type="mws:HeaderType" name="HeaderMsg" />
Compilation Error:
[INFO] -------------------------------------------------------------
[ERROR] C:\WorkSpace\test-wsdl2code\target\generated-sources\axis2\wsdl2code\src\sample\ws\stub\TestServiceStub.java:[150,16] cannot find symbol
symbol : variable param2
location: class sample.ws.stub.TestServiceStub
[ERROR] C:\WorkSpace\test-wsdl2code\target\generated-sources\axis2\wsdl2code\src\sample\ws\stub\TestServiceStub.java:[151,69] cannot find symbol
symbol : variable param2
location: class sample.ws.stub.TestServiceStub
[ERROR] C:\WorkSpace\test-wsdl2code\target\generated-sources\axis2\wsdl2code\src\sample\ws\stub\TestServiceStub.java:[269,12] cannot find symbol
symbol : variable param2
location: class sample.ws.stub.TestServiceStub
[ERROR] C:\WorkSpace\test-wsdl2code\target\generated-sources\axis2\wsdl2code\src\sample\ws\stub\TestServiceStub.java:[270,65] cannot find symbol
symbol : variable param2
location: class sample.ws.stub.TestServiceStub
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@axis.apache.org
For additional commands, e-mail: java-dev-help@axis.apache.org