You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Vidyanand Murunikkara <Vi...@infravio.com> on 2003/01/28 23:44:43 UTC

RE: WSDL2Java throws a Null Pointer exception when processing mul tipa rt WSDL

The wsdl4j.jar was updated last in December by dims.

http://marc.theaimsgroup.com/?l=axis-dev&m=103944535612272&w=2

Vidyanand.

-----Original Message-----
From: Tom Jordahl [mailto:tomj@macromedia.com]
Sent: Tuesday, January 28, 2003 1:57 PM
To: 'axis-user@xml.apache.org'
Subject: RE: WSDL2Java throws a Null Pointer exception when processing
mul tipa rt WSDL



If this is the case, then could you please file a bugzilla report
requesting an update to the wsdl4j.jar file in the Axis tree.

Otherwise this may get lost in the shuffle.

Thanks!

--
Tom Jordahl
Macromedia Server Development

-----Original Message-----
From: Mike Burati [mailto:mburati@bowstreet.com] 
Sent: Tuesday, January 28, 2003 4:45 PM
To: 'axis-user@xml.apache.org'
Subject: RE: WSDL2Java throws a Null Pointer exception when processing
mul tipa rt WSDL


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:tomj@macromedia.com]
Sent: Tuesday, January 28, 2003 4:34 PM
To: 'axis-user@xml.apache.org'
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:Mark.Richards@fmr.com] 
Sent: Tuesday, January 28, 2003 1:15 PM
To: 'axis-user@xml.apache.org'
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:3
69)
	       at
org.apache.axis.wsdl.symbolTable.SymbolTable.populate(SymbolTable.java:3
58)
	       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.wsd
l"
    xmlns="http://schemas.xmlsoap.org/wsdl/"
 
xmlns:binding="http://www.smalltest.com/definitions/smallTestRemoteInter
face
"
    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/smallTestRemoteInt
erfa
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 !