Hi, I am trying to convert the attached WSDL file to Java, but get the following error
C:\Project\WebServices\BankEx>java org.apache.axis.wsdl.WSDL2Java -v BankEx.wsdl Parsing XML file: BankEx.wsdl WSDLException (at /wsdl:definitions/wsdl:message[12]/wsdl:part): faultCode=INVALID_WSDL: Unable to determine namespace of 'tnsCORBA.ObjectReference'.: at com.ibm.wsdl.util.xml.DOMUtils.getQName(Unknown Source) at com.ibm.wsdl.util.xml.DOMUtils.getQualifiedAttributeValue(Unknown Source) at com.ibm.wsdl.xml.WSDLReaderImpl.parsePart(Unknown Source) at com.ibm.wsdl.xml.WSDLReaderImpl.parseMessage(Unknown Source) at com.ibm.wsdl.xml.WSDLReaderImpl.parseDefinitions(Unknown Source) at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source) at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source) at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source) at org.apache.axis.wsdl.symbolTable.SymbolTable.populate(SymbolTable.java:406) at org.apache.axis.wsdl.symbolTable.SymbolTable.populate(SymbolTable.java:393) at org.apache.axis.wsdl.gen.Parser$WSDLRunnable.run(Parser.java:245) at java.lang.Thread.run(Unknown Source) I generated the wsdl file from the attached IDL file using idl2wsdl.pl anyone know how to solve this ? /Noel
module BankEx { enum AccountType { current, deposit, specialSavings} ; struct Details { string name ; string address ; string telNo ; }; exception InsufficientFundsException { float overDraftLimit ; float balance ; float withdrawalAmount ; }; interface Account { attribute float overDraftLimit ; readonly attribute string owner ; readonly attribute string address ; readonly attribute AccountType accType ; readonly attribute float balance ; void deposit(in float amount) ; void withdraw(in float amount) raises (InsufficientFundsException) ; Details getDetails(out float balance); } ; interface Bank { Account createAccount(in Details d, in AccountType type) ; void transfer(in Account a1, in Account a2, in float amount) raises (InsufficientFundsException) ; }; };---------Y1ZF820GNANHTZ9KKNTO08QM Content-Type: text/plain Content-Disposition: attachment; filename="BankEx.wsdl" <!-- This file was generated (by ../idl2wsdl.pl). DO NOT modify it --> <!-- From file : BankEx.idl, 881 octets, Thu Jan 10 20:10:50 2002 Generation date : Sat Mar 06 15:30:23 2004 --> <wsdl:definitions targetNamespace="http://www.omg.org/IDL-Mapped/" xmlns:tns="http://www.omg.org/IDL-Mapped/" xmlns:xs="http://www.w3.org/2001/XMLSchema/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"> <wsdl:import namespace="http://www.omg.org/IDL-Mapped" location="BankEx.xsd"/> <wsdl:types> <xs:schema targetNamespace="http://www.omg.org/IDL-Mapped" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://www.omg.org/IDL-Mapped" elementFormDefault="qualified" attributeFormDefault="unqualified"> <xs:simpleType name="CORBA.completion_status"> <xs:restriction base="xs:string"> <xs:enumeration value="COMPLETED_YES"/> <xs:enumeration value="COMPLETED_NO"/> <xs:enumeration value="COMPLETED_MAYBE"/> </xs:restriction> </xs:simpleType> <xs:complexType name="CORBA.SystemException"> <xs:sequence> <xs:element name="minor" maxOccurs="1" minOccurs="1" type="xs:unsignedInt"/> <xs:element name="completion_status" maxOccurs="1" minOccurs="1" type="tns:CORBA.completion_status"/> </xs:sequence> </xs:complexType> </xs:schema> </wsdl:types> <!-- interface: BankEx.Account --> <wsdl:message name="BankEx.Account._get_overDraftLimitResponse"> <wsdl:part name="_return" type="xs:float"/> </wsdl:message> <wsdl:message name="BankEx.Account._set_overDraftLimit"> <wsdl:part name="value" type="xs:float"/> </wsdl:message> <wsdl:message name="BankEx.Account._get_ownerResponse"> <wsdl:part name="_return" type="xs:string"/> </wsdl:message> <wsdl:message name="BankEx.Account._get_addressResponse"> <wsdl:part name="_return" type="xs:string"/> </wsdl:message> <wsdl:message name="BankEx.Account._get_accTypeResponse"> <wsdl:part name="_return" type="tns:BankEx.AccountType"/> </wsdl:message> <wsdl:message name="BankEx.Account._get_balanceResponse"> <wsdl:part name="_return" type="xs:float"/> </wsdl:message> <wsdl:message name="BankEx.Account.deposit"> <wsdl:part name="amount" type="xs:float"/> </wsdl:message> <wsdl:message name="BankEx.Account.withdraw"> <wsdl:part name="amount" type="xs:float"/> </wsdl:message> <wsdl:message name="_exception.BankEx.InsufficientFundsException"> <wsdl:part name="exception" type="tns:BankEx.InsufficientFundsException"/> </wsdl:message> <wsdl:message name="BankEx.Account.getDetailsResponse"> <wsdl:part name="_return" type="tns:BankEx.Details"/> <wsdl:part name="balance" type="xs:float"/> </wsdl:message> <!-- port for BankEx.Account --> <wsdl:portType name="BankEx.Account"> <wsdl:operation name="_get_owner"> <wsdl:output message="tns:BankEx.Account._get_ownerResponse"/> <wsdl:fault message="tns:CORBA.SystemException"/> </wsdl:operation> <wsdl:operation name="withdraw"> <wsdl:input message="tns:BankEx.Account.withdraw"/> <wsdl:fault message="tns:_exception.BankEx.InsufficientFundsException"/> <wsdl:fault message="tns:CORBA.SystemException"/> </wsdl:operation> <wsdl:operation name="_get_overDraftLimit"> <wsdl:output message="tns:BankEx.Account._get_overDraftLimitResponse"/> <wsdl:fault message="tns:CORBA.SystemException"/> </wsdl:operation> <wsdl:operation name="_set_overDraftLimit"> <wsdl:input message="tns:BankEx.Account._set_overDraftLimit"/> <wsdl:fault message="tns:CORBA.SystemException"/> </wsdl:operation> <wsdl:operation name="getDetails"> <wsdl:output message="tns:BankEx.Account.getDetailsResponse"/> <wsdl:fault message="tns:CORBA.SystemException"/> </wsdl:operation> <wsdl:operation name="_get_accType"> <wsdl:output message="tns:BankEx.Account._get_accTypeResponse"/> <wsdl:fault message="tns:CORBA.SystemException"/> </wsdl:operation> <wsdl:operation name="_get_balance"> <wsdl:output message="tns:BankEx.Account._get_balanceResponse"/> <wsdl:fault message="tns:CORBA.SystemException"/> </wsdl:operation> <wsdl:operation name="_get_address"> <wsdl:output message="tns:BankEx.Account._get_addressResponse"/> <wsdl:fault message="tns:CORBA.SystemException"/> </wsdl:operation> <wsdl:operation name="deposit"> <wsdl:input message="tns:BankEx.Account.deposit"/> <wsdl:fault message="tns:CORBA.SystemException"/> </wsdl:operation> </wsdl:portType> <!-- interface: BankEx.Bank --> <wsdl:message name="BankEx.Bank.createAccount"> <wsdl:part name="d" type="tns:BankEx.Details"/> <wsdl:part name="type" type="tns:BankEx.AccountType"/> </wsdl:message> <wsdl:message name="BankEx.Bank.createAccountResponse"> <wsdl:part name="_return" type="tnsCORBA.ObjectReference"/> </wsdl:message> <wsdl:message name="BankEx.Bank.transfer"> <wsdl:part name="a1" type="tnsCORBA.ObjectReference"/> <wsdl:part name="a2" type="tnsCORBA.ObjectReference"/> <wsdl:part name="amount" type="xs:float"/> </wsdl:message> <wsdl:message name="_exception.BankEx.InsufficientFundsException"> <wsdl:part name="exception" type="tns:BankEx.InsufficientFundsException"/> </wsdl:message> <!-- port for BankEx.Bank --> <wsdl:portType name="BankEx.Bank"> <wsdl:operation name="transfer"> <wsdl:input message="tns:BankEx.Bank.transfer"/> <wsdl:fault message="tns:_exception.BankEx.InsufficientFundsException"/> <wsdl:fault message="tns:CORBA.SystemException"/> </wsdl:operation> <wsdl:operation name="createAccount"> <wsdl:input message="tns:BankEx.Bank.createAccount"/> <wsdl:output message="tns:BankEx.Bank.createAccountResponse"/> <wsdl:fault message="tns:CORBA.SystemException"/> </wsdl:operation> </wsdl:portType> </wsdl:definitions> <!-- end of file : BankEx.wsdl -->
<!-- This file was generated (by ../idl2wsdl.pl). DO NOT modify it --> <!-- From file : BankEx.idl, 881 octets, Thu Jan 10 20:10:50 2002 Generation date : Sat Mar 06 15:30:23 2004 --> <xs:schema targetNamespace="http://www.omg.org/IDL-Mapped" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:corba="http://www.omg.org/IDL-WSDL/1.0" xmlns:tns="http://www.omg.org/IDL-Mapped" elementFormDefault="qualified" attributeFormDefault="unqualified"> <xs:import namespace="http://www.omg.org/IDL-WSDL/1.0" schemaLocation="http://www.omg.org/IDL-WSDL/1.0"/> <xs:simpleType name="BankEx.AccountType"> <xs:restriction base="xs:string"> <xs:enumeration value="current"/> <xs:enumeration value="deposit"/> <xs:enumeration value="specialSavings"/> </xs:restriction> </xs:simpleType> <xs:complexType name="BankEx.Details"> <xs:sequence> <xs:element name="name" maxOccurs="1" minOccurs="1" type="xs:string"/> <xs:element name="address" maxOccurs="1" minOccurs="1" type="xs:string"/> <xs:element name="telNo" maxOccurs="1" minOccurs="1" type="xs:string"/> </xs:sequence> </xs:complexType> <xs:complexType name="BankEx.InsufficientFundsException"> <xs:sequence> <xs:element name="overDraftLimit" maxOccurs="1" minOccurs="1" type="xs:float"/> <xs:element name="balance" maxOccurs="1" minOccurs="1" type="xs:float"/> <xs:element name="withdrawalAmount" maxOccurs="1" minOccurs="1" type="xs:float"/> </xs:sequence> </xs:complexType> </xs:schema> <!-- end of file : BankEx.xsd -->
idl2wsdl.pl
Description: Binary data