is my webservice too complicated to be handled by jbossws?
mmarcom Oct 3, 2006 5:02 PMhi all,
i am trying to deploy an EJB3 as webservice....
i have no problem on the serverside... however, i have PLENTY of problems while generating the clientside classes...and i am wondering if my webservice is too complicatedt o be handled by jboss ws..
here's code of interface of my ws
/** * Copyright @ 2006 * By Marco Mistroni */ package com.mm.j2me.ejb; import java.rmi.RemoteException; import javax.ejb.*; import javax.jws.WebService; import javax.jws.soap.SOAPBinding; import org.jboss.ws.annotation.PortComponent; import com.mm.j2me.core.Agency; import com.mm.j2me.core.WSFacade; @WebService (name="WSFacade", targetNamespace="http://org.jboss.ws/samples/jsr181ejb", serviceName="WSFacade", endpointInterface="com.mm.j2me.ejb.WSRemoteSEI") @SOAPBinding (style = SOAPBinding.Style.RPC) @PortComponent(transportGuarantee="NONE", contextRoot = "/", urlPattern="/v1/soap/WSFacade") public interface WSRemoteSEI extends Remote { public Agency[] testWebServiceMethod() throws RemoteException; }
here's code of agency class (a simple javabean)
public class AgencyEEjb implements java.io.Serializable, Agency { /** * */ private static final long serialVersionUID = -7142342824458448020L; private String emailAddress; private int id; private String jobHunter; private String name; private String phoneNumber; private String site; public AgencyEEjb() { } public AgencyEEjb(String emailAddress, String jobHunter, String name, String phoneNumber, String site) { this.emailAddress = emailAddress; this.jobHunter = jobHunter; this.name = name; this.phoneNumber = phoneNumber; this.site = site; } public String getEmailAddress() { // TODO Auto-generated method stub return emailAddress; } @Id @GeneratedValue public int getId() { return id; } public String getJobHunter() { // TODO Auto-generated method stub return jobHunter; } public String getName() { // TODO Auto-generated method stub return name; } public String getPhoneNumber() { // TODO Auto-generated method stub return phoneNumber; } public String getSite() { // TODO Auto-generated method stub return site; } public void setEmailAddress(String email) { this.emailAddress = email; } public void setId(int id) { this.id = id; } public void setJobHunter(String jobHunter) { this.jobHunter = jobHunter; } public void setName(String name) { this.name = name; } public void setPhoneNumber(String number) { this.phoneNumber = number; } public void setSite(String site) { this.site = site; } }
my webservice is returning an array of Agency objects...
wsdl generated is this (kinda complicated..)
<definitions name="WSFacade" targetNamespace="http://org.jboss.ws/samples/jsr181ejb"> ? <types> ? <schema elementFormDefault="qualified" targetNamespace="http://reflect.lang.java/jaws"> <import namespace="http://www.w3.org/2001/XMLSchema"/> <import namespace="http://cert.security.java/jaws"/> <import namespace="http://annotation.lang.java/jaws"/> <import namespace="http://core.j2me.mm.com/jaws"/> <import namespace="http://org.jboss.ws/samples/jsr181ejb"/> <import namespace="http://lang.java/jaws"/> <import namespace="http://net.java/jaws"/> <import namespace="http://security.java/jaws"/> <import namespace="http://util.java/jaws"/> ? <complexType name="Constructor"> ? <sequence> <element maxOccurs="unbounded" minOccurs="0" name="declaredAnnotations" nillable="true" type="ns4:Annotation"/> <element name="declaringClass" nillable="true" type="ns3:Class"/> <element maxOccurs="unbounded" minOccurs="0" name="exceptionTypes" nillable="true" type="ns3:Class"/> <element maxOccurs="unbounded" minOccurs="0" name="genericExceptionTypes" nillable="true" type="tns:Type"/> <element maxOccurs="unbounded" minOccurs="0" name="genericParameterTypes" nillable="true" type="tns:Type"/> <element name="modifiers" type="int"/> <element name="name" nillable="true" type="string"/> <element maxOccurs="unbounded" minOccurs="0" name="parameterAnnotations" nillable="true" type="ns4:Annotation.Array"/> <element maxOccurs="unbounded" minOccurs="0" name="parameterTypes" nillable="true" type="ns3:Class"/> <element name="synthetic" type="boolean"/> <element maxOccurs="unbounded" minOccurs="0" name="typeParameters" nillable="true" type="tns:TypeVariable"/> <element name="varArgs" type="boolean"/> </sequence> </complexType> ? <complexType name="Field"> ? <sequence> <element maxOccurs="unbounded" minOccurs="0" name="declaredAnnotations" nillable="true" type="ns4:Annotation"/> <element name="declaringClass" nillable="true" type="ns3:Class"/> <element name="enumConstant" type="boolean"/> <element name="genericType" nillable="true" type="tns:Type"/> <element name="modifiers" type="int"/> <element name="name" nillable="true" type="string"/> <element name="synthetic" type="boolean"/> <element name="type" nillable="true" type="ns3:Class"/> </sequence> </complexType> ? <complexType name="GenericDeclaration"> ? <sequence> <element maxOccurs="unbounded" minOccurs="0" name="typeParameters" nillable="true" type="tns:TypeVariable"/> </sequence> </complexType> ? <complexType name="Method"> ? <sequence> <element name="bridge" type="boolean"/> <element maxOccurs="unbounded" minOccurs="0" name="declaredAnnotations" nillable="true" type="ns4:Annotation"/> <element name="declaringClass" nillable="true" type="ns3:Class"/> <element name="defaultValue" nillable="true" type="ns3:Object"/> <element maxOccurs="unbounded" minOccurs="0" name="exceptionTypes" nillable="true" type="ns3:Class"/> <element maxOccurs="unbounded" minOccurs="0" name="genericExceptionTypes" nillable="true" type="tns:Type"/> <element maxOccurs="unbounded" minOccurs="0" name="genericParameterTypes" nillable="true" type="tns:Type"/> <element name="genericReturnType" nillable="true" type="tns:Type"/> <element name="modifiers" type="int"/> <element name="name" nillable="true" type="string"/> <element maxOccurs="unbounded" minOccurs="0" name="parameterAnnotations" nillable="true" type="ns4:Annotation.Array"/> <element maxOccurs="unbounded" minOccurs="0" name="parameterTypes" nillable="true" type="ns3:Class"/> <element name="returnType" nillable="true" type="ns3:Class"/> <element name="synthetic" type="boolean"/> <element maxOccurs="unbounded" minOccurs="0" name="typeParameters" nillable="true" type="tns:TypeVariable"/> <element name="varArgs" type="boolean"/> </sequence> </complexType> ? <complexType name="Type"> <sequence/> </complexType> ? <complexType name="TypeVariable"> ? <sequence> <element maxOccurs="unbounded" minOccurs="0" name="bounds" nillable="true" type="tns:Type"/> <element name="genericDeclaration" nillable="true" type="tns:GenericDeclaration"/> <element name="name" nillable="true" type="string"/> </sequence> </complexType> </schema> ? <schema elementFormDefault="qualified" targetNamespace="http://annotation.lang.java/jaws"> <import namespace="http://reflect.lang.java/jaws"/> <import namespace="http://www.w3.org/2001/XMLSchema"/> <import namespace="http://cert.security.java/jaws"/> <import namespace="http://core.j2me.mm.com/jaws"/> <import namespace="http://org.jboss.ws/samples/jsr181ejb"/> <import namespace="http://lang.java/jaws"/> <import namespace="http://net.java/jaws"/> <import namespace="http://security.java/jaws"/> <import namespace="http://util.java/jaws"/> ? <complexType name="Annotation"> <sequence/> </complexType> ? <complexType name="Annotation.Array"> ? <sequence> <element maxOccurs="unbounded" minOccurs="0" name="value" nillable="true" type="tns:Annotation"/> </sequence> </complexType> </schema> ? <schema elementFormDefault="qualified" targetNamespace="http://cert.security.java/jaws"> <import namespace="http://reflect.lang.java/jaws"/> <import namespace="http://www.w3.org/2001/XMLSchema"/> <import namespace="http://annotation.lang.java/jaws"/> <import namespace="http://core.j2me.mm.com/jaws"/> <import namespace="http://org.jboss.ws/samples/jsr181ejb"/> <import namespace="http://lang.java/jaws"/> <import namespace="http://net.java/jaws"/> <import namespace="http://security.java/jaws"/> <import namespace="http://util.java/jaws"/> ? <complexType name="CertPath"> ? <sequence> <element name="encoded" nillable="true" type="base64Binary"/> <element name="encodings" nillable="true" type="ns9:Iterator"/> <element name="type" nillable="true" type="string"/> </sequence> </complexType> ? <complexType name="Certificate"> ? <sequence> <element name="encoded" nillable="true" type="base64Binary"/> <element name="publicKey" nillable="true" type="ns6:PublicKey"/> <element name="type" nillable="true" type="string"/> </sequence> </complexType> </schema> ? <schema elementFormDefault="qualified" targetNamespace="http://core.j2me.mm.com/jaws"> <import namespace="http://reflect.lang.java/jaws"/> <import namespace="http://www.w3.org/2001/XMLSchema"/> <import namespace="http://cert.security.java/jaws"/> <import namespace="http://annotation.lang.java/jaws"/> <import namespace="http://org.jboss.ws/samples/jsr181ejb"/> <import namespace="http://lang.java/jaws"/> <import namespace="http://net.java/jaws"/> <import namespace="http://security.java/jaws"/> <import namespace="http://util.java/jaws"/> ? <complexType name="Agency"> ? <sequence> <element name="emailAddress" nillable="true" type="string"/> <element name="id" type="int"/> <element name="jobHunter" nillable="true" type="string"/> <element name="name" nillable="true" type="string"/> <element name="phoneNumber" nillable="true" type="string"/> <element name="site" nillable="true" type="string"/> </sequence> </complexType> </schema> ? <schema elementFormDefault="qualified" targetNamespace="http://org.jboss.ws/samples/jsr181ejb"> <import namespace="http://reflect.lang.java/jaws"/> <import namespace="http://www.w3.org/2001/XMLSchema"/> <import namespace="http://cert.security.java/jaws"/> <import namespace="http://annotation.lang.java/jaws"/> <import namespace="http://core.j2me.mm.com/jaws"/> <import namespace="http://lang.java/jaws"/> <import namespace="http://net.java/jaws"/> <import namespace="http://security.java/jaws"/> <import namespace="http://util.java/jaws"/> ? <complexType name="Agency.Array"> ? <sequence> <element maxOccurs="unbounded" minOccurs="0" name="value" nillable="true" type="ns1:Agency"/> </sequence> </complexType> ? <complexType name="Class"> ? <sequence> <element name="annotation" type="boolean"/> <element maxOccurs="unbounded" minOccurs="0" name="annotations" nillable="true" type="ns4:Annotation"/> <element name="anonymousClass" type="boolean"/> <element name="array" type="boolean"/> <element name="canonicalName" nillable="true" type="string"/> <element name="classLoader" nillable="true" type="ns3:ClassLoader"/> <element maxOccurs="unbounded" minOccurs="0" name="classes" nillable="true" type="tns:Class"/> <element name="componentType" nillable="true" type="tns:Class"/> <element maxOccurs="unbounded" minOccurs="0" name="constructors" nillable="true" type="ns5:Constructor"/> <element maxOccurs="unbounded" minOccurs="0" name="declaredAnnotations" nillable="true" type="ns4:Annotation"/> <element maxOccurs="unbounded" minOccurs="0" name="declaredClasses" nillable="true" type="tns:Class"/> <element maxOccurs="unbounded" minOccurs="0" name="declaredConstructors" nillable="true" type="ns5:Constructor"/> <element maxOccurs="unbounded" minOccurs="0" name="declaredFields" nillable="true" type="ns5:Field"/> <element maxOccurs="unbounded" minOccurs="0" name="declaredMethods" nillable="true" type="ns5:Method"/> <element name="declaringClass" nillable="true" type="tns:Class"/> <element name="enclosingClass" nillable="true" type="tns:Class"/> <element name="enclosingConstructor" nillable="true" type="ns5:Constructor"/> <element name="enclosingMethod" nillable="true" type="ns5:Method"/> <element name="enum" type="boolean"/> <element maxOccurs="unbounded" minOccurs="0" name="enumConstants" nillable="true" type="tns:Object"/> <element maxOccurs="unbounded" minOccurs="0" name="fields" nillable="true" type="ns5:Field"/> <element maxOccurs="unbounded" minOccurs="0" name="genericInterfaces" nillable="true" type="ns5:Type"/> <element name="genericSuperclass" nillable="true" type="ns5:Type"/> <element name="interface" type="boolean"/> <element maxOccurs="unbounded" minOccurs="0" name="interfaces" nillable="true" type="tns:Class"/> <element name="localClass" type="boolean"/> <element name="memberClass" type="boolean"/> <element maxOccurs="unbounded" minOccurs="0" name="methods" nillable="true" type="ns5:Method"/> <element name="modifiers" type="int"/> <element name="name" nillable="true" type="string"/> <element name="package" nillable="true" type="ns3:Package"/> <element name="primitive" type="boolean"/> <element name="protectionDomain" nillable="true" type="ns6:ProtectionDomain"/> <element maxOccurs="unbounded" minOccurs="0" name="signers" nillable="true" type="tns:Object"/> <element name="simpleName" nillable="true" type="string"/> <element name="superclass" nillable="true" type="tns:Class"/> <element name="synthetic" type="boolean"/> <element maxOccurs="unbounded" minOccurs="0" name="typeParameters" nillable="true" type="ns5:TypeVariable"/> </sequence> </complexType> ? <complexType name="Class.Array"> ? <sequence> <element maxOccurs="unbounded" minOccurs="0" name="value" nillable="true" type="ns3:Class"/> </sequence> </complexType> ? <complexType name="Object"> ? <sequence> <element name="class" nillable="true" type="ns3:Class"/> </sequence> </complexType> </schema> ? <schema elementFormDefault="qualified" targetNamespace="http://lang.java/jaws"> <import namespace="http://reflect.lang.java/jaws"/> <import namespace="http://www.w3.org/2001/XMLSchema"/> <import namespace="http://cert.security.java/jaws"/> <import namespace="http://annotation.lang.java/jaws"/> <import namespace="http://core.j2me.mm.com/jaws"/> <import namespace="http://org.jboss.ws/samples/jsr181ejb"/> <import namespace="http://net.java/jaws"/> <import namespace="http://security.java/jaws"/> <import namespace="http://util.java/jaws"/> ? <complexType name="Class"> ? <sequence> <element name="annotation" type="boolean"/> <element maxOccurs="unbounded" minOccurs="0" name="annotations" nillable="true" type="ns4:Annotation"/> <element name="anonymousClass" type="boolean"/> <element name="array" type="boolean"/> <element name="canonicalName" nillable="true" type="string"/> <element name="classLoader" nillable="true" type="tns:ClassLoader"/> <element maxOccurs="unbounded" minOccurs="0" name="classes" nillable="true" type="tns:Class"/> <element name="componentType" nillable="true" type="tns:Class"/> <element maxOccurs="unbounded" minOccurs="0" name="constructors" nillable="true" type="ns5:Constructor"/> <element maxOccurs="unbounded" minOccurs="0" name="declaredAnnotations" nillable="true" type="ns4:Annotation"/> <element maxOccurs="unbounded" minOccurs="0" name="declaredClasses" nillable="true" type="tns:Class"/> <element maxOccurs="unbounded" minOccurs="0" name="declaredConstructors" nillable="true" type="ns5:Constructor"/> <element maxOccurs="unbounded" minOccurs="0" name="declaredFields" nillable="true" type="ns5:Field"/> <element maxOccurs="unbounded" minOccurs="0" name="declaredMethods" nillable="true" type="ns5:Method"/> <element name="declaringClass" nillable="true" type="tns:Class"/> <element name="enclosingClass" nillable="true" type="tns:Class"/> <element name="enclosingConstructor" nillable="true" type="ns5:Constructor"/> <element name="enclosingMethod" nillable="true" type="ns5:Method"/> <element name="enum" type="boolean"/> <element maxOccurs="unbounded" minOccurs="0" name="enumConstants" nillable="true" type="tns:Object"/> <element maxOccurs="unbounded" minOccurs="0" name="fields" nillable="true" type="ns5:Field"/> <element maxOccurs="unbounded" minOccurs="0" name="genericInterfaces" nillable="true" type="ns5:Type"/> <element name="genericSuperclass" nillable="true" type="ns5:Type"/> <element name="interface" type="boolean"/> <element maxOccurs="unbounded" minOccurs="0" name="interfaces" nillable="true" type="tns:Class"/> <element name="localClass" type="boolean"/> <element name="memberClass" type="boolean"/> <element maxOccurs="unbounded" minOccurs="0" name="methods" nillable="true" type="ns5:Method"/> <element name="modifiers" type="int"/> <element name="name" nillable="true" type="string"/> <element name="package" nillable="true" type="tns:Package"/> <element name="primitive" type="boolean"/> <element name="protectionDomain" nillable="true" type="ns6:ProtectionDomain"/> <element maxOccurs="unbounded" minOccurs="0" name="signers" nillable="true" type="tns:Object"/> <element name="simpleName" nillable="true" type="string"/> <element name="superclass" nillable="true" type="tns:Class"/> <element name="synthetic" type="boolean"/> <element maxOccurs="unbounded" minOccurs="0" name="typeParameters" nillable="true" type="ns5:TypeVariable"/> </sequence> </complexType> ? <complexType name="ClassLoader"> ? <sequence> <element name="defaultAssertionStatus" type="boolean"/> <element name="parent" nillable="true" type="tns:ClassLoader"/> </sequence> </complexType> ? <complexType name="Object"> ? <sequence> <element name="class" nillable="true" type="tns:Class"/> </sequence> </complexType> ? <complexType name="Package"> ? <sequence> <element maxOccurs="unbounded" minOccurs="0" name="annotations" nillable="true" type="ns4:Annotation"/> <element maxOccurs="unbounded" minOccurs="0" name="declaredAnnotations" nillable="true" type="ns4:Annotation"/> <element name="implementationTitle" nillable="true" type="string"/> <element name="implementationVendor" nillable="true" type="string"/> <element name="implementationVersion" nillable="true" type="string"/> <element name="name" nillable="true" type="string"/> <element name="sealed" type="boolean"/> <element name="specificationTitle" nillable="true" type="string"/> <element name="specificationVendor" nillable="true" type="string"/> <element name="specificationVersion" nillable="true" type="string"/> </sequence> </complexType> </schema> ? <schema elementFormDefault="qualified" targetNamespace="http://security.java/jaws"> <import namespace="http://reflect.lang.java/jaws"/> <import namespace="http://www.w3.org/2001/XMLSchema"/> <import namespace="http://cert.security.java/jaws"/> <import namespace="http://annotation.lang.java/jaws"/> <import namespace="http://core.j2me.mm.com/jaws"/> <import namespace="http://org.jboss.ws/samples/jsr181ejb"/> <import namespace="http://lang.java/jaws"/> <import namespace="http://net.java/jaws"/> <import namespace="http://util.java/jaws"/> ? <complexType name="CodeSigner"> ? <sequence> <element name="signerCertPath" nillable="true" type="ns7:CertPath"/> <element name="timestamp" nillable="true" type="tns:Timestamp"/> </sequence> </complexType> ? <complexType name="CodeSource"> ? <sequence> <element maxOccurs="unbounded" minOccurs="0" name="certificates" nillable="true" type="ns7:Certificate"/> <element maxOccurs="unbounded" minOccurs="0" name="codeSigners" nillable="true" type="tns:CodeSigner"/> <element name="location" nillable="true" type="ns10:URL"/> </sequence> </complexType> ? <complexType name="PermissionCollection"> ? <sequence> <element name="readOnly" type="boolean"/> </sequence> </complexType> ? <complexType name="Principal"> ? <sequence> <element name="name" nillable="true" type="string"/> </sequence> </complexType> ? <complexType name="ProtectionDomain"> ? <sequence> <element name="classLoader" nillable="true" type="ns3:ClassLoader"/> <element name="codeSource" nillable="true" type="tns:CodeSource"/> <element name="permissions" nillable="true" type="tns:PermissionCollection"/> <element maxOccurs="unbounded" minOccurs="0" name="principals" nillable="true" type="tns:Principal"/> </sequence> </complexType> ? <complexType name="PublicKey"> <sequence/> </complexType> ? <complexType name="Timestamp"> ? <sequence> <element name="signerCertPath" nillable="true" type="ns7:CertPath"/> <element name="timestamp" nillable="true" type="dateTime"/> </sequence> </complexType> </schema> ? <schema elementFormDefault="qualified" targetNamespace="http://net.java/jaws"> <import namespace="http://reflect.lang.java/jaws"/> <import namespace="http://www.w3.org/2001/XMLSchema"/> <import namespace="http://cert.security.java/jaws"/> <import namespace="http://annotation.lang.java/jaws"/> <import namespace="http://core.j2me.mm.com/jaws"/> <import namespace="http://org.jboss.ws/samples/jsr181ejb"/> <import namespace="http://lang.java/jaws"/> <import namespace="http://security.java/jaws"/> <import namespace="http://util.java/jaws"/> ? <complexType name="URL"> ? <sequence> <element name="authority" nillable="true" type="string"/> <element name="content" nillable="true" type="ns3:Object"/> <element name="defaultPort" type="int"/> <element name="file" nillable="true" type="string"/> <element name="host" nillable="true" type="string"/> <element name="path" nillable="true" type="string"/> <element name="port" type="int"/> <element name="protocol" nillable="true" type="string"/> <element name="query" nillable="true" type="string"/> <element name="ref" nillable="true" type="string"/> <element name="userInfo" nillable="true" type="string"/> </sequence> </complexType> </schema> ? <schema elementFormDefault="qualified" targetNamespace="http://util.java/jaws"> <import namespace="http://reflect.lang.java/jaws"/> <import namespace="http://www.w3.org/2001/XMLSchema"/> <import namespace="http://cert.security.java/jaws"/> <import namespace="http://annotation.lang.java/jaws"/> <import namespace="http://core.j2me.mm.com/jaws"/> <import namespace="http://org.jboss.ws/samples/jsr181ejb"/> <import namespace="http://lang.java/jaws"/> <import namespace="http://net.java/jaws"/> <import namespace="http://security.java/jaws"/> ? <complexType name="Iterator"> <sequence/> </complexType> </schema> </types> ? <message name="WSFacade_equalsResponse"> <part name="result" type="xsd:boolean"/> </message> ? <message name="WSFacade_toStringResponse"> <part name="result" type="xsd:string"/> </message> <message name="WSFacade_hashCode"/> ? <message name="WSFacade_valueResponse"> <part name="result" type="tns:Class.Array"/> </message> <message name="WSFacade_annotationType"/> ? <message name="WSFacade_equals"> <part name="Object_1" type="tns:Object"/> </message> <message name="WSFacade_value"/> <message name="WSFacade_testWebServiceMethod"/> ? <message name="WSFacade_testWebServiceMethodResponse"> <part name="result" type="tns:Agency.Array"/> </message> <message name="WSFacade_toString"/> ? <message name="WSFacade_annotationTypeResponse"> <part name="result" type="tns:Class"/> </message> ? <message name="WSFacade_hashCodeResponse"> <part name="result" type="xsd:int"/> </message> ? <portType name="WSFacade"> ? <operation name="annotationType"> <input message="tns:WSFacade_annotationType"/> <output message="tns:WSFacade_annotationTypeResponse"/> </operation> ? <operation name="equals" parameterOrder="Object_1"> <input message="tns:WSFacade_equals"/> <output message="tns:WSFacade_equalsResponse"/> </operation> ? <operation name="hashCode"> <input message="tns:WSFacade_hashCode"/> <output message="tns:WSFacade_hashCodeResponse"/> </operation> ? <operation name="testWebServiceMethod"> <input message="tns:WSFacade_testWebServiceMethod"/> <output message="tns:WSFacade_testWebServiceMethodResponse"/> </operation> ? <operation name="toString"> <input message="tns:WSFacade_toString"/> <output message="tns:WSFacade_toStringResponse"/> </operation> ? <operation name="value"> <input message="tns:WSFacade_value"/> <output message="tns:WSFacade_valueResponse"/> </operation> </portType> ? <binding name="WSFacadeBinding" type="tns:WSFacade"> <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/> ? <operation name="annotationType"> <soap:operation soapAction=""/> ? <input> <soap:body namespace="http://org.jboss.ws/samples/jsr181ejb" use="literal"/> </input> ? <output> <soap:body namespace="http://org.jboss.ws/samples/jsr181ejb" use="literal"/> </output> </operation> ? <operation name="equals"> <soap:operation soapAction=""/> ? <input> <soap:body namespace="http://org.jboss.ws/samples/jsr181ejb" use="literal"/> </input> ? <output> <soap:body namespace="http://org.jboss.ws/samples/jsr181ejb" use="literal"/> </output> </operation> ? <operation name="hashCode"> <soap:operation soapAction=""/> ? <input> <soap:body namespace="http://org.jboss.ws/samples/jsr181ejb" use="literal"/> </input> ? <output> <soap:body namespace="http://org.jboss.ws/samples/jsr181ejb" use="literal"/> </output> </operation> ? <operation name="testWebServiceMethod"> <soap:operation soapAction=""/> ? <input> <soap:body namespace="http://org.jboss.ws/samples/jsr181ejb" use="literal"/> </input> ? <output> <soap:body namespace="http://org.jboss.ws/samples/jsr181ejb" use="literal"/> </output> </operation> ? <operation name="toString"> <soap:operation soapAction=""/> ? <input> <soap:body namespace="http://org.jboss.ws/samples/jsr181ejb" use="literal"/> </input> ? <output> <soap:body namespace="http://org.jboss.ws/samples/jsr181ejb" use="literal"/> </output> </operation> ? <operation name="value"> <soap:operation soapAction=""/> ? <input> <soap:body namespace="http://org.jboss.ws/samples/jsr181ejb" use="literal"/> </input> ? <output> <soap:body namespace="http://org.jboss.ws/samples/jsr181ejb" use="literal"/> </output> </operation> </binding> ? <service name="WSFacade"> ? <port binding="tns:WSFacadeBinding" name="WSFacadePort"> <soap:address location="http://WorldCorp:8080//v1/soap/WSFacade"/> </port> </service> </definitions>
while genrating clientside artifacts with wstools, jboss generates plenty of classes, but i receive plenty of compilation errors.... mainly because code gets generated as follows (ane xample)
protected boolean enum; protected boolean interface; ws.jboss.org.samples.jsr181ejb.Type genericSuperclass, boolean interface, ... and so on
so wstools while generating uses also java keywords and that results in comiplation error
now i don't knlow if the problem is my ws that is too complicated, or if there re any problems in generating tools with wstools #
i am using following wstools-config
<?xml version="1.0" encoding="UTF-8"?> <configuration xmlns="http://www.jboss.org/jbossws-tools" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.jboss.org/jbossws-tools http://www.jboss.org/jbossws-tools/schema/jbossws-tool_1_0.xsd"> <wsdl-java file="http://localhost:9080//v1/soap/WSFacade?wsdl"> <mapping file="jaxrpc-mapping-client.xml" /> </wsdl-java> </configuration>
thus retrieving wsdl from server...
can anyone suggest me how can i solve my porblems>? i m at a dead end... do i have any other solutions other than generating artifacts using wstools?
thanks ina dvance and regards
marco