Hello, I am trying to use the latest release of Axis C++ to build a C++ client to access some existing Java web services. However, WSDL2Ws is only producing some of the client source files that I need. My WSDL file, which was generated by the Sun JWSDK 2.0, is at the bottom of this message.
When I run WSDL2Ws, it generates the files: WSLogEvent.hpp WSLogEvent.cpp ILogService.hpp ILogService.cpp which is the set of files required for one of the two ports in the file. However, it does not produce any files for ITNService (which, ironically, is what I am trying to test at the moment). A search of the mailing list archive didn't produce any similar messages, and a cursory walk through the WSDL2Ws code likewise wasn't very illuminating. Changing the order of the components for the two ports did not change the output. Removing all references to ILogService did cause the other two files (ITNService.cpp and ITNService.hpp) to be generated. Is there a known limitation of WSDL2Ws that it only expects a single service/port combination in the WSDL file? Alternately, is the Sun JWSDK producing a funky WSDL in this case? Or if (as is probably the case) this is merely user error, can anyone point out what I'm doing wrong? If necessary, I can hand-edit the WSDL files to produce the initial C++ files, but I'd like to be able to use my production files in the future. Thank you in advance for any assistance. Thanks, Chuck Harris [EMAIL PROTECTED] WSDL file: <?xml version="1.0" encoding="UTF-8"?> <definitions name="XpertWS" targetNamespace="http://ws.xpert.xo.com/" xmlns:tns="http://ws.xpert.xo.com/" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:ns2="http://ws.xpert.xo.com/types" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"> <types> <schema targetNamespace="http://ws.xpert.xo.com/types" xmlns:tns="http://ws.xpert.xo.com/types" xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns="http://www.w3.org/2001/XMLSchema"> <complexType name="WSLogEvent"> <sequence> <element name="_fullLocationInformation" type="string" nillable="true" /> <element name="_level" type="int" /> <element name="_loggerName" type="string" nillable="true" /> <element name="_mdcKeys" type="string" nillable="true" minOccurs="0" maxOccurs="unbounded" /> <element name="_mdcValues" type="string" nillable="true" minOccurs="0" maxOccurs="unbounded" /> <element name="_message" type="string" nillable="true" /> <element name="_ndc" type="string" nillable="true" /> <element name="_threadName" type="string" nillable="true" /> <element name="_throwableStrRep" type="string" nillable="true" minOccurs="0" maxOccurs="unbounded" /> <element name="_timestamp" type="long" /> <element name="loggerName" type="string" nillable="true" /> <element name="threadName" type="string" nillable="true" /> <element name="timestamp" type="long" /> </sequence> </complexType> </schema> </types> <message name="ILogService_log"> <part name="WSLogEvent_1" type="ns2:WSLogEvent" /> </message> <message name="ILogService_logResponse" /> <message name="ITNService_getCustomerForTN"> <part name="String_1" type="xsd:string" /> <part name="long_2" type="xsd:long" /> </message> <message name="ITNService_getCustomerForTNResponse"> <part name="result" type="xsd:string" /> </message> <portType name="ILogService"> <operation name="log" parameterOrder="WSLogEvent_1"> <input message="tns:ILogService_log" /> <output message="tns:ILogService_logResponse" /> </operation> </portType> <portType name="ITNService"> <operation name="getCustomerForTN" parameterOrder="String_1 long_2"> <input message="tns:ITNService_getCustomerForTN" /> <output message="tns:ITNService_getCustomerForTNResponse" /> </operation> </portType> <binding name="ILogServiceBinding" type="tns:ILogService"> <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc" /> <operation name="log"> <soap:operation soapAction="" /> <input> <soap:body use="literal" namespace="http://ws.xpert.xo.com/" /> </input> <output> <soap:body use="literal" namespace="http://ws.xpert.xo.com/" /> </output> </operation> </binding> <binding name="ITNServiceBinding" type="tns:ITNService"> <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc" /> <operation name="getCustomerForTN"> <soap:operation soapAction="" /> <input> <soap:body use="literal" namespace="http://ws.xpert.xo.com/" /> </input> <output> <soap:body use="literal" namespace="http://ws.xpert.xo.com/" /> </output> </operation> </binding> <service name="XpertWS"> <port name="ILogServicePort" binding="tns:ILogServiceBinding"> <soap:address location="REPLACE_WITH_ACTUAL_URL" /> </port> <port name="ITNServicePort" binding="tns:ITNServiceBinding"> <soap:address location="REPLACE_WITH_ACTUAL_URL" /> </port> </service> </definitions>
