Note that there are some explanatory texts on larger screens.

plurals
  1. POException classes generated using Axis2 wsdl2java don't extend Exception
    primarykey
    data
    text
    <p>I'm trying to generate a client using wsdl2java. The wsdl is as follows:</p> <pre><code> &lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;wsdl:definitions targetNamespace="http://admin.ws.csd.rsa.com" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="http://admin.ws.csd.rsa.com" xmlns:intf="http://admin.ws.csd.rsa.com" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt; &lt;!--WSDL created by Apache Axis version: 1.4 Built on Apr 22, 2006 (06:55:48 PDT)--&gt; &lt;wsdl:types&gt; &lt;schema elementFormDefault="qualified" targetNamespace="http://admin.ws.csd.rsa.com" xmlns="http://www.w3.org/2001/XMLSchema"&gt; &lt;element name="getUserStatus"&gt; &lt;complexType&gt; &lt;sequence&gt; &lt;element name="in0" type="impl:AdminRequest"/&gt; &lt;/sequence&gt; &lt;/complexType&gt; &lt;/element&gt; &lt;complexType name="GenericRequest"&gt; &lt;sequence&gt; &lt;element name="adminID" nillable="true" type="xsd:string"/&gt; &lt;element name="orgName" nillable="true" type="xsd:string"/&gt; &lt;element name="userName" nillable="true" type="xsd:string"/&gt; &lt;/sequence&gt; &lt;/complexType&gt; &lt;complexType name="AdminRequest"&gt; &lt;complexContent&gt; &lt;extension base="impl:GenericRequest"&gt; &lt;sequence&gt; &lt;element name="userStatus" nillable="true" type="xsd:string"/&gt; &lt;/sequence&gt; &lt;/extension&gt; &lt;/complexContent&gt; &lt;/complexType&gt; &lt;element name="getUserStatusResponse"&gt; &lt;complexType&gt; &lt;sequence&gt; &lt;element name="getUserStatusReturn" type="impl:AdminResponse"/&gt; &lt;/sequence&gt; &lt;/complexType&gt; &lt;/element&gt; &lt;complexType name="GenericResponse"&gt; &lt;sequence&gt; &lt;element name="status" nillable="true" type="xsd:string"/&gt; &lt;/sequence&gt; &lt;/complexType&gt; &lt;complexType name="UserChange"&gt; &lt;sequence&gt; &lt;element name="date" nillable="true" type="xsd:string"/&gt; &lt;element name="description" nillable="true" type="xsd:string"/&gt; &lt;element name="type" nillable="true" type="xsd:string"/&gt; &lt;/sequence&gt; &lt;/complexType&gt; &lt;complexType name="ArrayOfUserChange"&gt; &lt;sequence&gt; &lt;element maxOccurs="unbounded" minOccurs="0" name="userChangeHistory" type="impl:UserChange"/&gt; &lt;/sequence&gt; &lt;/complexType&gt; &lt;complexType name="AdminResponse"&gt; &lt;complexContent&gt; &lt;extension base="impl:GenericResponse"&gt; &lt;sequence&gt; &lt;element name="userChangeHistory" nillable="true" type="impl:ArrayOfUserChange"/&gt; &lt;element name="userStatus" nillable="true" type="xsd:string"/&gt; &lt;/sequence&gt; &lt;/extension&gt; &lt;/complexContent&gt; &lt;/complexType&gt; &lt;complexType name="AdminServiceException"&gt; &lt;sequence/&gt; &lt;/complexType&gt; &lt;element name="fault" type="impl:AdminServiceException"/&gt; &lt;element name="unlockUser"&gt; &lt;complexType&gt; &lt;sequence&gt; &lt;element name="in0" type="impl:AdminRequest"/&gt; &lt;/sequence&gt; &lt;/complexType&gt; &lt;/element&gt; &lt;element name="unlockUserResponse"&gt; &lt;complexType&gt; &lt;sequence&gt; &lt;element name="unlockUserReturn" type="impl:AdminResponse"/&gt; &lt;/sequence&gt; &lt;/complexType&gt; &lt;/element&gt; &lt;element name="deleteUser"&gt; &lt;complexType&gt; &lt;sequence&gt; &lt;element name="in0" type="impl:AdminRequest"/&gt; &lt;/sequence&gt; &lt;/complexType&gt; &lt;/element&gt; &lt;element name="deleteUserResponse"&gt; &lt;complexType&gt; &lt;sequence&gt; &lt;element name="deleteUserReturn" type="impl:AdminResponse"/&gt; &lt;/sequence&gt; &lt;/complexType&gt; &lt;/element&gt; &lt;element name="getUserChangeHistory"&gt; &lt;complexType&gt; &lt;sequence&gt; &lt;element name="in0" type="impl:AdminRequest"/&gt; &lt;/sequence&gt; &lt;/complexType&gt; &lt;/element&gt; &lt;element name="getUserChangeHistoryResponse"&gt; &lt;complexType&gt; &lt;sequence&gt; &lt;element name="getUserChangeHistoryReturn" type="impl:AdminResponse"/&gt; &lt;/sequence&gt; &lt;/complexType&gt; &lt;/element&gt; &lt;element name="lockUser"&gt; &lt;complexType&gt; &lt;sequence&gt; &lt;element name="in0" type="impl:AdminRequest"/&gt; &lt;/sequence&gt; &lt;/complexType&gt; &lt;/element&gt; &lt;element name="lockUserResponse"&gt; &lt;complexType&gt; &lt;sequence&gt; &lt;element name="lockUserReturn" type="impl:AdminResponse"/&gt; &lt;/sequence&gt; &lt;/complexType&gt; &lt;/element&gt; &lt;element name="setUserStatus"&gt; &lt;complexType&gt; &lt;sequence&gt; &lt;element name="in0" type="impl:AdminRequest"/&gt; &lt;/sequence&gt; &lt;/complexType&gt; &lt;/element&gt; &lt;element name="setUserStatusResponse"&gt; &lt;complexType&gt; &lt;sequence&gt; &lt;element name="setUserStatusReturn" type="impl:AdminResponse"/&gt; &lt;/sequence&gt; &lt;/complexType&gt; &lt;/element&gt; &lt;/schema&gt; &lt;/wsdl:types&gt; &lt;wsdl:message name="lockUserRequest"&gt; &lt;wsdl:part element="impl:lockUser" name="parameters"/&gt; &lt;/wsdl:message&gt; &lt;wsdl:message name="unlockUserRequest"&gt; &lt;wsdl:part element="impl:unlockUser" name="parameters"/&gt; &lt;/wsdl:message&gt; &lt;wsdl:message name="setUserStatusRequest"&gt; &lt;wsdl:part element="impl:setUserStatus" name="parameters"/&gt; &lt;/wsdl:message&gt; &lt;wsdl:message name="getUserStatusResponse"&gt; &lt;wsdl:part element="impl:getUserStatusResponse" name="parameters"/&gt; &lt;/wsdl:message&gt; &lt;wsdl:message name="getUserStatusRequest"&gt; &lt;wsdl:part element="impl:getUserStatus" name="parameters"/&gt; &lt;/wsdl:message&gt; &lt;wsdl:message name="getUserChangeHistoryResponse"&gt; &lt;wsdl:part element="impl:getUserChangeHistoryResponse" name="parameters"/&gt; &lt;/wsdl:message&gt; &lt;wsdl:message name="getUserChangeHistoryRequest"&gt; &lt;wsdl:part element="impl:getUserChangeHistory" name="parameters"/&gt; &lt;/wsdl:message&gt; &lt;wsdl:message name="AdminServiceException"&gt; &lt;wsdl:part element="impl:fault" name="fault"/&gt; &lt;/wsdl:message&gt; &lt;wsdl:message name="lockUserResponse"&gt; &lt;wsdl:part element="impl:lockUserResponse" name="parameters"/&gt; &lt;/wsdl:message&gt; &lt;wsdl:message name="deleteUserRequest"&gt; &lt;wsdl:part element="impl:deleteUser" name="parameters"/&gt; &lt;/wsdl:message&gt; &lt;wsdl:message name="deleteUserResponse"&gt; &lt;wsdl:part element="impl:deleteUserResponse" name="parameters"/&gt; &lt;/wsdl:message&gt; &lt;wsdl:message name="unlockUserResponse"&gt; &lt;wsdl:part element="impl:unlockUserResponse" name="parameters"/&gt; &lt;/wsdl:message&gt; &lt;wsdl:message name="setUserStatusResponse"&gt; &lt;wsdl:part element="impl:setUserStatusResponse" name="parameters"/&gt; &lt;/wsdl:message&gt; &lt;wsdl:portType name="UserAdminService"&gt; &lt;wsdl:operation name="getUserStatus"&gt; &lt;wsdl:input message="impl:getUserStatusRequest" name="getUserStatusRequest"/&gt; &lt;wsdl:output message="impl:getUserStatusResponse" name="getUserStatusResponse"/&gt; &lt;wsdl:fault message="impl:AdminServiceException" name="AdminServiceException"/&gt; &lt;/wsdl:operation&gt; &lt;wsdl:operation name="unlockUser"&gt; &lt;wsdl:input message="impl:unlockUserRequest" name="unlockUserRequest"/&gt; &lt;wsdl:output message="impl:unlockUserResponse" name="unlockUserResponse"/&gt; &lt;wsdl:fault message="impl:AdminServiceException" name="AdminServiceException"/&gt; &lt;/wsdl:operation&gt; &lt;wsdl:operation name="deleteUser"&gt; &lt;wsdl:input message="impl:deleteUserRequest" name="deleteUserRequest"/&gt; &lt;wsdl:output message="impl:deleteUserResponse" name="deleteUserResponse"/&gt; &lt;wsdl:fault message="impl:AdminServiceException" name="AdminServiceException"/&gt; &lt;/wsdl:operation&gt; &lt;wsdl:operation name="getUserChangeHistory"&gt; &lt;wsdl:input message="impl:getUserChangeHistoryRequest" name="getUserChangeHistoryRequest"/&gt; &lt;wsdl:output message="impl:getUserChangeHistoryResponse" name="getUserChangeHistoryResponse"/&gt; &lt;wsdl:fault message="impl:AdminServiceException" name="AdminServiceException"/&gt; &lt;/wsdl:operation&gt; &lt;wsdl:operation name="lockUser"&gt; &lt;wsdl:input message="impl:lockUserRequest" name="lockUserRequest"/&gt; &lt;wsdl:output message="impl:lockUserResponse" name="lockUserResponse"/&gt; &lt;wsdl:fault message="impl:AdminServiceException" name="AdminServiceException"/&gt; &lt;/wsdl:operation&gt; &lt;wsdl:operation name="setUserStatus"&gt; &lt;wsdl:input message="impl:setUserStatusRequest" name="setUserStatusRequest"/&gt; &lt;wsdl:output message="impl:setUserStatusResponse" name="setUserStatusResponse"/&gt; &lt;wsdl:fault message="impl:AdminServiceException" name="AdminServiceException"/&gt; &lt;/wsdl:operation&gt; &lt;/wsdl:portType&gt; &lt;wsdl:binding name="AdaptiveAuthenticationAdminSoapBinding" type="impl:UserAdminService"&gt; &lt;wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/&gt; &lt;wsdl:operation name="getUserStatus"&gt; &lt;wsdlsoap:operation soapAction=""/&gt; &lt;wsdl:input name="getUserStatusRequest"&gt; &lt;wsdlsoap:body use="literal"/&gt; &lt;/wsdl:input&gt; &lt;wsdl:output name="getUserStatusResponse"&gt; &lt;wsdlsoap:body use="literal"/&gt; &lt;/wsdl:output&gt; &lt;wsdl:fault name="AdminServiceException"&gt; &lt;wsdlsoap:fault name="AdminServiceException" use="literal"/&gt; &lt;/wsdl:fault&gt; &lt;/wsdl:operation&gt; &lt;wsdl:operation name="unlockUser"&gt; &lt;wsdlsoap:operation soapAction=""/&gt; &lt;wsdl:input name="unlockUserRequest"&gt; &lt;wsdlsoap:body use="literal"/&gt; &lt;/wsdl:input&gt; &lt;wsdl:output name="unlockUserResponse"&gt; &lt;wsdlsoap:body use="literal"/&gt; &lt;/wsdl:output&gt; &lt;wsdl:fault name="AdminServiceException"&gt; &lt;wsdlsoap:fault name="AdminServiceException" use="literal"/&gt; &lt;/wsdl:fault&gt; &lt;/wsdl:operation&gt; &lt;wsdl:operation name="deleteUser"&gt; &lt;wsdlsoap:operation soapAction=""/&gt; &lt;wsdl:input name="deleteUserRequest"&gt; &lt;wsdlsoap:body use="literal"/&gt; &lt;/wsdl:input&gt; &lt;wsdl:output name="deleteUserResponse"&gt; &lt;wsdlsoap:body use="literal"/&gt; &lt;/wsdl:output&gt; &lt;wsdl:fault name="AdminServiceException"&gt; &lt;wsdlsoap:fault name="AdminServiceException" use="literal"/&gt; &lt;/wsdl:fault&gt; &lt;/wsdl:operation&gt; &lt;wsdl:operation name="getUserChangeHistory"&gt; &lt;wsdlsoap:operation soapAction=""/&gt; &lt;wsdl:input name="getUserChangeHistoryRequest"&gt; &lt;wsdlsoap:body use="literal"/&gt; &lt;/wsdl:input&gt; &lt;wsdl:output name="getUserChangeHistoryResponse"&gt; &lt;wsdlsoap:body use="literal"/&gt; &lt;/wsdl:output&gt; &lt;wsdl:fault name="AdminServiceException"&gt; &lt;wsdlsoap:fault name="AdminServiceException" use="literal"/&gt; &lt;/wsdl:fault&gt; &lt;/wsdl:operation&gt; &lt;wsdl:operation name="lockUser"&gt; &lt;wsdlsoap:operation soapAction=""/&gt; &lt;wsdl:input name="lockUserRequest"&gt; &lt;wsdlsoap:body use="literal"/&gt; &lt;/wsdl:input&gt; &lt;wsdl:output name="lockUserResponse"&gt; &lt;wsdlsoap:body use="literal"/&gt; &lt;/wsdl:output&gt; &lt;wsdl:fault name="AdminServiceException"&gt; &lt;wsdlsoap:fault name="AdminServiceException" use="literal"/&gt; &lt;/wsdl:fault&gt; &lt;/wsdl:operation&gt; &lt;wsdl:operation name="setUserStatus"&gt; &lt;wsdlsoap:operation soapAction=""/&gt; &lt;wsdl:input name="setUserStatusRequest"&gt; &lt;wsdlsoap:body use="literal"/&gt; &lt;/wsdl:input&gt; &lt;wsdl:output name="setUserStatusResponse"&gt; &lt;wsdlsoap:body use="literal"/&gt; &lt;/wsdl:output&gt; &lt;wsdl:fault name="AdminServiceException"&gt; &lt;wsdlsoap:fault name="AdminServiceException" use="literal"/&gt; &lt;/wsdl:fault&gt; &lt;/wsdl:operation&gt; &lt;/wsdl:binding&gt; &lt;wsdl:service name="UserAdminServiceService"&gt; &lt;wsdl:port binding="impl:AdaptiveAuthenticationAdminSoapBinding" name="AdaptiveAuthenticationAdmin"&gt; &lt;wsdlsoap:address location="http://myserver:83/AdaptiveAuthenticationAdmin/services/AdaptiveAuthenticationAdmin"/&gt; &lt;/wsdl:port&gt; &lt;/wsdl:service&gt; &lt;/wsdl:definitions&gt; </code></pre> <p>The issue I'm finding if that want to unpack the classes (using option -u), the class AdminServiceException does not extend java.lang.Exception, and therefore the code doesn't compile, since that it can not throw that class. So the situation is like this:</p> <p>If I pack the classes(no option -u), the class is defined as follows:</p> <pre><code> public class AdminServiceException extends java.lang.Exception{....} </code></pre> <p>but if I use option -u, the class is generated as follows:</p> <pre><code> public class AdminServiceException implements org.apache.axis2.databinding.ADBBean{....} </code></pre> <p>which is not correct, since it can not be thrown. Any ideas?</p> <p>EDIT:</p> <p>I just modified the WSDL to make it simplier. It's as follows:</p> <pre><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;wsdl:definitions targetNamespace="http://admin.ws.csd.rsa.com" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="http://admin.ws.csd.rsa.com" xmlns:intf="http://admin.ws.csd.rsa.com" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt; &lt;!--WSDL created by Apache Axis version: 1.4 Built on Apr 22, 2006 (06:55:48 PDT)--&gt; &lt;wsdl:types&gt; &lt;schema elementFormDefault="qualified" targetNamespace="http://admin.ws.csd.rsa.com" xmlns="http://www.w3.org/2001/XMLSchema"&gt; &lt;element name="myRequest"&gt; &lt;complexType&gt; &lt;sequence&gt; &lt;element name="userName" nillable="true" type="xsd:string"/&gt; &lt;/sequence&gt; &lt;/complexType&gt; &lt;/element&gt; &lt;element name="myResponse"&gt; &lt;complexType&gt; &lt;sequence&gt; &lt;element name="userStatus" nillable="true" type="xsd:string"/&gt; &lt;/sequence&gt; &lt;/complexType&gt; &lt;/element&gt; &lt;complexType name="AdminServiceException"&gt; &lt;sequence/&gt; &lt;/complexType&gt; &lt;element name="fault" type="impl:AdminServiceException"/&gt; &lt;/schema&gt; &lt;/wsdl:types&gt; &lt;wsdl:message name="getUserStatusResponse"&gt; &lt;wsdl:part element="impl:myResponse" name="parameters"/&gt; &lt;/wsdl:message&gt; &lt;wsdl:message name="getUserStatusRequest"&gt; &lt;wsdl:part element="impl:myRequest" name="parameters"/&gt; &lt;/wsdl:message&gt; &lt;wsdl:message name="AdminServiceException"&gt; &lt;wsdl:part element="impl:fault" name="fault"/&gt; &lt;/wsdl:message&gt; &lt;wsdl:portType name="UserAdminService"&gt; &lt;wsdl:operation name="getUserStatus"&gt; &lt;wsdl:input message="impl:getUserStatusRequest" name="getUserStatusRequest"/&gt; &lt;wsdl:output message="impl:getUserStatusResponse" name="getUserStatusResponse"/&gt; &lt;wsdl:fault message="impl:AdminServiceException" name="AdminServiceException"/&gt; &lt;/wsdl:operation&gt; &lt;/wsdl:portType&gt; &lt;wsdl:binding name="AdaptiveAuthenticationAdminSoapBinding" type="impl:UserAdminService"&gt; &lt;wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/&gt; &lt;wsdl:operation name="getUserStatus"&gt; &lt;wsdlsoap:operation soapAction=""/&gt; &lt;wsdl:input name="getUserStatusRequest"&gt; &lt;wsdlsoap:body use="literal"/&gt; &lt;/wsdl:input&gt; &lt;wsdl:output name="getUserStatusResponse"&gt; &lt;wsdlsoap:body use="literal"/&gt; &lt;/wsdl:output&gt; &lt;wsdl:fault name="AdminServiceException"&gt; &lt;wsdlsoap:fault name="AdminServiceException" use="literal"/&gt; &lt;/wsdl:fault&gt; &lt;/wsdl:operation&gt; &lt;/wsdl:binding&gt; &lt;wsdl:service name="UserAdminServiceService"&gt; &lt;wsdl:port binding="impl:AdaptiveAuthenticationAdminSoapBinding" name="AdaptiveAuthenticationAdmin"&gt; &lt;wsdlsoap:address location="http://server:83/AdaptiveAuthenticationAdmin/services/AdaptiveAuthenticationAdmin"/&gt; &lt;/wsdl:port&gt; &lt;/wsdl:service&gt; &lt;/wsdl:definitions&gt; </code></pre> <p>I created the code using wsdl2java as follows:</p> <pre><code>/opt/eco/ecoprd/axis2-1.6.1/bin &gt;&gt; ./wsdl2java.sh -u -uri test2.wsdl -or Using AXIS2_HOME: /opt/eco/ecoprd/axis2-1.6.1 Using JAVA_HOME: /usr/local/jdk1.6.0_16 Retrieving document at 'test2.wsdl'. </code></pre> <p>But when I try to compile the code:</p> <pre><code>/opt/eco/ecoprd/axis2-1.6.1/bin &gt;&gt; javac -cp $CLASSPATH src/com/rsa/csd/ws/admin/*.java src/com/rsa/csd/ws/admin/Fault.java:95: cannot find symbol symbol : method serialize(javax.xml.namespace.QName,javax.xml.stream.XMLStreamWriter) location: class com.rsa.csd.ws.admin.AdminServiceException localFault.serialize(MY_QNAME,xmlWriter); ^ src/com/rsa/csd/ws/admin/Fault.java:278: cannot find symbol symbol : method getPullParser(javax.xml.namespace.QName) location: class com.rsa.csd.ws.admin.AdminServiceException return localFault.getPullParser(MY_QNAME); ^ src/com/rsa/csd/ws/admin/Fault.java:326: cannot find symbol symbol : variable Factory location: class com.rsa.csd.ws.admin.AdminServiceException object.setFault(com.rsa.csd.ws.admin.AdminServiceException.Factory.parse(reader)); ^ src/com/rsa/csd/ws/admin/ExtensionMapper.java:28: cannot find symbol symbol : variable Factory location: class com.rsa.csd.ws.admin.AdminServiceException return com.rsa.csd.ws.admin.AdminServiceException.Factory.parse(reader); ^ Note: src/com/rsa/csd/ws/admin/UserAdminServiceServiceStub.java uses unchecked or unsafe operations. Note: Recompile with -Xlint:unchecked for details. 4 errors </code></pre>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload