Has anybody ran into this problem before?
I have a JavaBean which has a HashMap as one of it's attributes.
When I run WSDL2Java I get the following exception:

Parsing XML file:
http://localhost:7001/axis/services/UserManagerEJBPort?wsdl
java.io.IOException: http://xml.apache.org/xml-soap:Map already exists
        at org.apache.axis.wsdl.toJava.SymbolTable.symbolTablePut(Unknown
Source)
        at
org.apache.axis.wsdl.toJava.SymbolTable.createTypeFromDef(Unknown Source)
        at org.apache.axis.wsdl.toJava.SymbolTable.addTypes(Unknown Source)
        at org.apache.axis.wsdl.toJava.SymbolTable.addTypes(Unknown Source)
        at org.apache.axis.wsdl.toJava.SymbolTable.addTypes(Unknown Source)
        at org.apache.axis.wsdl.toJava.SymbolTable.addTypes(Unknown Source)
        at org.apache.axis.wsdl.toJava.SymbolTable.addTypes(Unknown Source)
        at org.apache.axis.wsdl.toJava.SymbolTable.populateTypes(Unknown
Source)
        at org.apache.axis.wsdl.toJava.SymbolTable.populate(Unknown Source)
        at org.apache.axis.wsdl.toJava.SymbolTable.add(Unknown Source)
        at org.apache.axis.wsdl.toJava.Emitter.emit(Unknown Source)
        at org.apache.axis.wsdl.toJava.Emitter.emit(Unknown Source)
        at org.apache.axis.wsdl.WSDL2Java.emit(Unknown Source)
        at org.apache.axis.wsdl.WSDL2Java.main(Unknown Source)

Note: I am running from the nightly build which was created on Monday, Feb.
11.

Here is the WSDL File which was generated for the webservice:

<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace
="http://localhost:7001/axis/services/UserManagerEJBPort"; xmlns
="http://schemas.xmlsoap.org/wsdl/"; xmlns:SOAP-ENC
="http://schemas.xmlsoap.org/soap/encoding/"; xmlns:impl
="http://localhost:7001/axis/services/UserManagerEJBPort-impl"; xmlns:intf
="http://localhost:7001/axis/services/UserManagerEJBPort"; xmlns:tns1
="http://data.users.itemxchange.com"; xmlns:tns2
="http://data.util.itemxchange.com"; xmlns:tns3
="http://xml.apache.org/xml-soap"; xmlns:wsdl
="http://schemas.xmlsoap.org/wsdl/"; xmlns:wsdlsoap
="http://schemas.xmlsoap.org/wsdl/soap/"; xmlns:xsd
="http://www.w3.org/2001/XMLSchema";><types><schema targetNamespace
="http://data.users.itemxchange.com"; xmlns
="http://www.w3.org/2001/XMLSchema";><complexType name="user"><all><element
name="password" nillable="true" type="xsd:string"/><element name="userID"
nillable="true" type="xsd:string"/><element name="emailAddress" nillable
="true" type="xsd:string"/><element name="userName" nillable="true" type
="xsd:string"/><element name="roleVal" type=
"xsd:int"/><element name="roleDesc" nillable="true" type
="xsd:string"/></all></complexType><element name="user" nillable="true"
type="tns1:user"/></schema><schema targetNamespace
="http://localhost:7001/axis/services/UserManagerEJBPort"; xmlns
="http://www.w3.org/2001/XMLSchema";><complexType name
="ArrayOf_tns2_user"><complexContent><restriction base
="SOAP-ENC:Array"><attribute ref="SOAP-ENC:arrayType" wsdl:arrayType
="tns1:user[]"/></restriction></complexContent></complexType><element name
="ArrayOf_tns2_user" nillable="true" type
="intf:ArrayOf_tns2_user"/></schema><schema targetNamespace
="http://data.util.itemxchange.com"; xmlns
="http://www.w3.org/2001/XMLSchema";><complexType name
="DataWrapper"><all><element name="storage" nillable="true" type
="tns3:Map"/><element name="startTime" type="xsd:long"/><element name
="endTime" type="xsd:long"/></all></complexType><element name="DataWrapper"
nillable="true" type="tns2:DataWrapper"/></schema><schema targetNamespace
="http://xml.apache.org/xml-soap"; xmlns="http://www.w3.org
/2001/XMLSchema"><complexType name="Map"><sequence><element maxOccurs
="unbounded" minOccurs="0" name="item"><complexType><all><element name
="key" type="xsd:anyType"/><element name="value" type
="xsd:anyType"/></all></complexType></element></sequence></complexType></schema></types>
  <wsdl:message name="updateUserResponse">
    <wsdl:part name="return" type="xsd:boolean"/>
  </wsdl:message>
  <wsdl:message name="getUserByNameResponse">
    <wsdl:part name="return" type="tns1:user"/>
  </wsdl:message>
  <wsdl:message name="getUserByNameRequest">
    <wsdl:part name="in0" type="xsd:string"/>
  </wsdl:message>
  <wsdl:message name="timedGetAllUsersResponse">
    <wsdl:part name="return" type="tns2:DataWrapper"/>
  </wsdl:message>
  <wsdl:message name="getAllUsersResponse">
    <wsdl:part name="return" type="intf:ArrayOf_tns2_user"/>
  </wsdl:message>
  <wsdl:message name="addUserResponse">
    <wsdl:part name="return" type="tns1:user"/>
  </wsdl:message>
  <wsdl:message name="addUserRequest">
    <wsdl:part name="in0" type="tns1:user"/>
  </wsdl:message>
  <wsdl:message name="timedGetAllUsersRequest">
  </wsdl:message>
  <wsdl:message name="getUserByIdRequest">
    <wsdl:part name="in0" type="xsd:int"/>
  </wsdl:message>
  <wsdl:message name="deleteUserByIdResponse">
    <wsdl:part name="return" type="xsd:boolean"/>
  </wsdl:message>
  <wsdl:message name="getAllUsersRequest">
  </wsdl:message>
  <wsdl:message name="updateUserRequest">
    <wsdl:part name="in0" type="tns1:user"/>
  </wsdl:message>
  <wsdl:message name="getUserByIdResponse">
    <wsdl:part name="return" type="tns1:user"/>
  </wsdl:message>
  <wsdl:message name="deleteUserByIdRequest">
    <wsdl:part name="in0" type="xsd:int"/>
  </wsdl:message>
  <wsdl:portType name="UserManagerEJB">
    <wsdl:operation name="deleteUserById" parameterOrder="in0">
      <wsdl:input message="intf:deleteUserByIdRequest"/>
      <wsdl:output message="intf:deleteUserByIdResponse"/>
    </wsdl:operation>
    <wsdl:operation name="updateUser" parameterOrder="in0">
      <wsdl:input message="intf:updateUserRequest"/>
      <wsdl:output message="intf:updateUserResponse"/>
    </wsdl:operation>
    <wsdl:operation name="getUserById" parameterOrder="in0">
      <wsdl:input message="intf:getUserByIdRequest"/>
      <wsdl:output message="intf:getUserByIdResponse"/>
    </wsdl:operation>
    <wsdl:operation name="getAllUsers">
      <wsdl:input message="intf:getAllUsersRequest"/>
      <wsdl:output message="intf:getAllUsersResponse"/>
    </wsdl:operation>
    <wsdl:operation name="timedGetAllUsers">
      <wsdl:input message="intf:timedGetAllUsersRequest"/>
      <wsdl:output message="intf:timedGetAllUsersResponse"/>
    </wsdl:operation>
    <wsdl:operation name="getUserByName" parameterOrder="in0">
      <wsdl:input message="intf:getUserByNameRequest"/>
      <wsdl:output message="intf:getUserByNameResponse"/>
    </wsdl:operation>
    <wsdl:operation name="addUser" parameterOrder="in0">
      <wsdl:input message="intf:addUserRequest"/>
      <wsdl:output message="intf:addUserResponse"/>
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:binding name="UserManagerEJBPortSoapBinding" type
="intf:UserManagerEJB">
    <wsdlsoap:binding style="rpc" transport
="http://schemas.xmlsoap.org/soap/http"/>
    <wsdl:operation name="deleteUserById">
      <wsdlsoap:operation soapAction="" style="rpc"/>
      <wsdl:input>
        <wsdlsoap:body encodingStyle
="http://schemas.xmlsoap.org/soap/encoding/"; namespace
="http://localhost:7001/axis/services/UserManagerEJBPort"; use="encoded"/>
      </wsdl:input>
      <wsdl:output>
        <wsdlsoap:body encodingStyle
="http://schemas.xmlsoap.org/soap/encoding/"; namespace
="http://localhost:7001/axis/services/UserManagerEJBPort"; use="encoded"/>
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="updateUser">
      <wsdlsoap:operation soapAction="" style="rpc"/>
      <wsdl:input>
        <wsdlsoap:body encodingStyle
="http://schemas.xmlsoap.org/soap/encoding/"; namespace
="http://localhost:7001/axis/services/UserManagerEJBPort"; use="encoded"/>
      </wsdl:input>
      <wsdl:output>
        <wsdlsoap:body encodingStyle
="http://schemas.xmlsoap.org/soap/encoding/"; namespace
="http://localhost:7001/axis/services/UserManagerEJBPort"; use="encoded"/>
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getUserById">
      <wsdlsoap:operation soapAction="" style="rpc"/>
      <wsdl:input>
        <wsdlsoap:body encodingStyle
="http://schemas.xmlsoap.org/soap/encoding/"; namespace
="http://localhost:7001/axis/services/UserManagerEJBPort"; use="encoded"/>
      </wsdl:input>
      <wsdl:output>
        <wsdlsoap:body encodingStyle
="http://schemas.xmlsoap.org/soap/encoding/"; namespace
="http://localhost:7001/axis/services/UserManagerEJBPort"; use="encoded"/>
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getAllUsers">
      <wsdlsoap:operation soapAction="" style="rpc"/>
      <wsdl:input>
        <wsdlsoap:body encodingStyle
="http://schemas.xmlsoap.org/soap/encoding/"; namespace
="http://localhost:7001/axis/services/UserManagerEJBPort"; use="encoded"/>
      </wsdl:input>
      <wsdl:output>
        <wsdlsoap:body encodingStyle
="http://schemas.xmlsoap.org/soap/encoding/"; namespace
="http://localhost:7001/axis/services/UserManagerEJBPort"; use="encoded"/>
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="timedGetAllUsers">
      <wsdlsoap:operation soapAction="" style="rpc"/>
      <wsdl:input>
        <wsdlsoap:body encodingStyle
="http://schemas.xmlsoap.org/soap/encoding/"; namespace
="http://localhost:7001/axis/services/UserManagerEJBPort"; use="encoded"/>
      </wsdl:input>
      <wsdl:output>
        <wsdlsoap:body encodingStyle
="http://schemas.xmlsoap.org/soap/encoding/"; namespace
="http://localhost:7001/axis/services/UserManagerEJBPort"; use="encoded"/>
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="getUserByName">
      <wsdlsoap:operation soapAction="" style="rpc"/>
      <wsdl:input>
        <wsdlsoap:body encodingStyle
="http://schemas.xmlsoap.org/soap/encoding/"; namespace
="http://localhost:7001/axis/services/UserManagerEJBPort"; use="encoded"/>
      </wsdl:input>
      <wsdl:output>
        <wsdlsoap:body encodingStyle
="http://schemas.xmlsoap.org/soap/encoding/"; namespace
="http://localhost:7001/axis/services/UserManagerEJBPort"; use="encoded"/>
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="addUser">
      <wsdlsoap:operation soapAction="" style="rpc"/>
      <wsdl:input>
        <wsdlsoap:body encodingStyle
="http://schemas.xmlsoap.org/soap/encoding/"; namespace
="http://localhost:7001/axis/services/UserManagerEJBPort"; use="encoded"/>
      </wsdl:input>
      <wsdl:output>
        <wsdlsoap:body encodingStyle
="http://schemas.xmlsoap.org/soap/encoding/"; namespace
="http://localhost:7001/axis/services/UserManagerEJBPort"; use="encoded"/>
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:service name="UserManagerEJBPort">
    <wsdl:port binding="intf:UserManagerEJBPortSoapBinding" name
="UserManagerEJBPort">
      <wsdlsoap:address location
="http://localhost:7001/axis/services/UserManagerEJBPort"/>
    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>

Reply via email to