You might also try getting a more recent wsdl4j.jar We had some problems with our own use of WSDL4j parsing multi-part (imported) WSDLs a while back that were fixed in part by moving up to a more recent WSDL4j (looks like ours was built in 8/02 from the class files I see in the jar file) among other things...
The classes in the wsdl4j.jar that come with AXIS1.1beta appear to have been build in 6/02 -----Original Message----- From: Tom Jordahl [mailto:[EMAIL PROTECTED]] Sent: Tuesday, January 28, 2003 4:34 PM To: '[EMAIL PROTECTED]' Subject: RE: WSDL2Java throws a Null Pointer exception when processing mul tipa rt WSDL This sounds like a bug to me, but it looks like it might be the WSDL4J code and not the Axis code. You might want to try just using WSDL4J to see if it can read the multi-part WSDL without throwing a null pointer exception. Tom Jordahl Macromedia Server Development -----Original Message----- From: Richards, Mark [mailto:[EMAIL PROTECTED]] Sent: Tuesday, January 28, 2003 1:15 PM To: '[EMAIL PROTECTED]' Subject: WSDL2Java throws a Null Pointer exception when processing multipa rt WSDL Hello, I have WebSphere service which is based on Apache SOAP 2.x that has multipart WSDL. When I try to create a client with this, WSDL2Java throws a Null Pointer Exception. I have tried this with both release 1.0 and 1.1b. java org.apache.axis.wsdl.WSDL2Java http://localhost:8080/simple/wsdl/smallTest-service.wsdl ava.lang.NullPointerException at org.apache.crimson.tree.ElementNode.getAttributeNodeNS(ElementNode.java:415) at com.ibm.wsdl.util.xml.DOMUtils.getAttributeNS(Unknown Source) at com.ibm.wsdl.util.xml.DOMUtils.getNamespaceURIFromPrefix(Unknown Source) at com.ibm.wsdl.util.xml.DOMUtils.getQualifiedAttributeValue(Unknown Source) at com.ibm.wsdl.xml.WSDLReaderImpl.parsePort(Unknown Source) at com.ibm.wsdl.xml.WSDLReaderImpl.parseService(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:369) at org.apache.axis.wsdl.symbolTable.SymbolTable.populate(SymbolTable.java:358) at org.apache.axis.wsdl.gen.Parser$WSDLRunnable.run(Parser.java:243) at java.lang.Thread.run(Thread.java:484) It's easy enough to work around, I just merge the files into one, but I wanted to clarify if Axis is meant to support this? Here is the WSDL for a simple case. service <?xml version="1.0" encoding="UTF-8"?> <definitions name="smallTestService" targetNamespace="http://localhost:8080/simple/wsdl/smallTest-service.wsdl" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:binding="http://www.smalltest.com/definitions/smallTestRemoteInterface " xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://localhost:8080/simple/wsdl/smallTest-service.wsdl"> <import location="http://localhost:8080/simple/wsdl/smallTest-binding.wsdl" namespace="http://www.smalltest.com/definitions/smallTestRemoteInterface"/> <service name="smallTestService"> <port binding="binding:smallTestBinding" name="smallTestPort"> <soap:address location="http://localhost:8080/simple/servlet/rpcrouter"/> </port> </service> </definitions> Binding <?xml version="1.0" encoding="UTF-8"?> <definitions name="smallTest-binding" targetNamespace="http://www.smalltest.com/definitions/smallTestRemoteInterfa ce" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://www.smalltest.com/definitions/smallTestRemoteInterface" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <message name="echoIntRequest"> <part name="myNum" type="xsd:int"/> </message> <message name="echoIntResponse"> <part name="result" type="xsd:int"/> </message> <portType name="smallTest"> <operation name="echoInt" parameterOrder="myNum"> <input message="tns:echoIntRequest" name="echoIntRequest"/> <output message="tns:echoIntResponse" name="echoIntResponse"/> </operation> </portType> <binding name="smallTestBinding" type="tns:smallTest"> <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/> <operation name="echoInt"> <soap:operation soapAction="" style="rpc"/> <input name="echoIntRequest"> <soap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://tempuri.org/smallTest" use="encoded"/> </input> <output name="echoIntResponse"> <soap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://tempuri.org/smallTest" use="encoded"/> </output> </operation> </binding> </definitions> Thanks, Mark ================== Mark Richards Any views expressed are not necessarily those of my company !