Hi there, I am trying to use jaxme as databinding with axis2. When I call the tool wsdl2java I get the following exception:
Exception in thread "main" org.apache.axis2.wsdl.codegen.CodeGenerationException: java.lang.RuntimeException: java.lang.IllegalStateException: The class com.example.somwhere.xsd.Message has already been created. at org.apache.axis2.wsdl.codegen.CodeGenerationEngine.generate(CodeGenerationEngine.java:256) at org.apache.axis2.wsdl.WSDL2Code.main(WSDL2Code.java:32) at org.apache.axis2.wsdl.WSDL2Java.main(WSDL2Java.java:21) Caused by: java.lang.RuntimeException: java.lang.IllegalStateException: The class com.example.somwhere.xsd.Message has already been created. at org.apache.axis2.wsdl.codegen.extension.JaxMeExtension.engage(JaxMeExtension.java:158) at org.apache.axis2.wsdl.codegen.CodeGenerationEngine.generate(CodeGenerationEngine.java:209) ... 2 more Caused by: java.lang.IllegalStateException: The class com.example.somwhere.xsd.Message has already been created. at org.apache.ws.jaxme.js.JavaSourceFactory.newJavaSource(JavaSourceFactory.java:129) at org.apache.ws.jaxme.generator.sg.impl.JAXBObjectSG.getXMLInterface(JAXBObjectSG.java:197) at org.apache.ws.jaxme.generator.sg.impl.ObjectSGImpl.getXMLInterface(ObjectSGImpl.java:40) at org.apache.ws.jaxme.generator.sg.impl.JAXBObjectSG.generate(JAXBObjectSG.java:278) at org.apache.ws.jaxme.generator.sg.impl.ObjectSGImpl.generate(ObjectSGImpl.java:56) at org.apache.ws.jaxme.generator.sg.impl.JAXBSchemaSG.generate(JAXBSchemaSG.java:228) at org.apache.ws.jaxme.generator.sg.impl.SchemaSGImpl.generate(SchemaSGImpl.java:67) at org.apache.ws.jaxme.generator.impl.GeneratorImpl.generate(GeneratorImpl.java:148) at org.apache.axis2.wsdl.codegen.extension.JaxMeExtension.engage(JaxMeExtension.java:126) I found out, that a similar bug has been detected about a year ago. see http://issues.apache.org/jira/browse/AXIS2-534 My wsdl file looks as follows: <wsdl:definitions xmlns:axis2="http://example.com/somwhere" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:ns="http://example.com/somwhere/xsd" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://example.com/somwhere"> <wsdl:types> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://example.com/somwhere/xsd"> <xs:element name="store"> <xs:complexType> <xs:sequence> <xs:element name="param0" nillable="true" type="ns:Message" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="Message" type="ns:Message" /> <xs:complexType name="Message"> <xs:sequence> <xs:element maxOccurs="unbounded" name="l1List" nillable="true" type="ns:Param1" /> <xs:element maxOccurs="unbounded" name="l3List" nillable="true" type="ns:Param2" /> </xs:sequence> </xs:complexType> <xs:element name="Param1" type="ns:Param1" /> <xs:complexType name="Param1"> <xs:sequence> <xs:element name="Element1" nillable="true" type="xs:long" /> </xs:sequence> </xs:complexType> <xs:element name="Param2" type="ns:Param2" /> <xs:complexType name="Param2"> <xs:sequence> <xs:element name="Element2" nillable="true" type="xs:string" /> </xs:sequence> </xs:complexType> <xs:element name="storeResponse"> <xs:complexType> <xs:sequence> <xs:element name="return" nillable="true" type="xs:boolean" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="validate"> <xs:complexType> <xs:sequence> <xs:element name="param0" nillable="true" type="ns:Message" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="validateResponse"> <xs:complexType> <xs:sequence> <xs:element name="return" nillable="true" type="xs:boolean" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="getVersionResponse"> <xs:complexType> <xs:sequence> <xs:element name="return" nillable="true" type="xs:string" /> </xs:sequence> </xs:complexType> </xs:element> </xs:schema> </wsdl:types> <wsdl:message name="storeMessage"> <wsdl:part name="part1" element="ns:store" /> </wsdl:message> <wsdl:message name="storeResponseMessage"> <wsdl:part name="part1" element="ns:storeResponse" /> </wsdl:message> <wsdl:message name="validateMessage"> <wsdl:part name="part1" element="ns:validate" /> </wsdl:message> <wsdl:message name="validateResponseMessage"> <wsdl:part name="part1" element="ns:validateResponse" /> </wsdl:message> <wsdl:message name="getVersionMessage" /> <wsdl:message name="getVersionResponseMessage"> <wsdl:part name="part1" element="ns:getVersionResponse" /> </wsdl:message> <wsdl:portType name="efm_1_0PortType"> <wsdl:operation name="store"> <wsdl:input xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" wsaw:Action="urn:store" message="axis2:storeMessage" /> <wsdl:output xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" message="axis2:storeResponseMessage" wsaw:Action="urn:store" /> </wsdl:operation> <wsdl:operation name="validate"> <wsdl:input xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" wsaw:Action="urn:validate" message="axis2:validateMessage" /> <wsdl:output xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" message="axis2:validateResponseMessage" wsaw:Action="urn:validate" /> </wsdl:operation> <wsdl:operation name="getVersion"> <wsdl:input xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" wsaw:Action="urn:getVersion" message="axis2:getVersionMessage" /> <wsdl:output xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" message="axis2:getVersionResponseMessage" wsaw:Action="urn:getVersion" /> </wsdl:operation> </wsdl:portType> <wsdl:binding name="efm_1_0SOAP11Binding" type="axis2:efm_1_0PortType"> <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" /> <wsdl:operation name="store"> <soap:operation soapAction="urn:store" style="document" /> <wsdl:input> <soap:body use="literal" /> </wsdl:input> <wsdl:output> <soap:body use="literal" /> </wsdl:output> </wsdl:operation> <wsdl:operation name="validate"> <soap:operation soapAction="urn:validate" style="document" /> <wsdl:input> <soap:body use="literal" /> </wsdl:input> <wsdl:output> <soap:body use="literal" /> </wsdl:output> </wsdl:operation> <wsdl:operation name="getVersion"> <soap:operation soapAction="urn:getVersion" 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="efm_1_0SOAP12Binding" type="axis2:efm_1_0PortType"> <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" /> <wsdl:operation name="store"> <soap12:operation soapAction="urn:store" style="document" /> <wsdl:input> <soap12:body use="literal" /> </wsdl:input> <wsdl:output> <soap12:body use="literal" /> </wsdl:output> </wsdl:operation> <wsdl:operation name="validate"> <soap12:operation soapAction="urn:validate" style="document" /> <wsdl:input> <soap12:body use="literal" /> </wsdl:input> <wsdl:output> <soap12:body use="literal" /> </wsdl:output> </wsdl:operation> <wsdl:operation name="getVersion"> <soap12:operation soapAction="urn:getVersion" style="document" /> <wsdl:input> <soap12:body use="literal" /> </wsdl:input> <wsdl:output> <soap12:body use="literal" /> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:service name="efm_1_0"> <wsdl:port name="efm_1_0SOAP11port" binding="axis2:efm_1_0SOAP11Binding"> <soap:address location="http://localhost:8080/axis2/services/efm_1_0" /> </wsdl:port> <wsdl:port name="efm_1_0SOAP12port" binding="axis2:efm_1_0SOAP12Binding"> <soap12:address location="http://localhost:8080/axis2/services/efm_1_0" /> </wsdl:port> </wsdl:service> </wsdl:definitions> Could someone help me with that issue? Thanks.. Bjoern -- Der GMX SmartSurfer hilft bis zu 70% Ihrer Onlinekosten zu sparen! Ideal für Modem und ISDN: http://www.gmx.net/de/go/smartsurfer --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]