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 Olivier Gauwin <ga...@campus.dtrd.de> on 2003/01/20 15:35:34 UTC

Re: simple "simpleType" redefinition

If it can help someone :
The solution was to use a Simple(De)SerializerFactory instead of a 
Bean(De)SerializerFactory, with the first signature I've tested on the 
server side.


Olivier Gauwin wrote:

> Hi,
>
> This problem seems really easy but I can't find a solution...
>
> I try to use this WSDL type :
> <xsd:simpleType name="Interop.Number">
>    <xsd:restriction base="xsd:int"/>
> </xsd:simpleType>
>
> I use this Typemapping :
> <typeMapping
>       xmlns:ns="http://Interop/xsd"
>       qname="ns:Interop.Number"
>        type="java:Interop.Number"
>        serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
>        
> deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
>        encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
> />
>
> The SOAP request looks like :
> <multiRef xsi:type="ns2:Interop.Number" ...>12</multiRef>
>
> I've tried  to use (on the server side) these 2 methods :
>
> - public Interop.Number echo(Interop.Number nb) {...}
> raises:
> AxisFault
> faultCode: {http://xml.apache.org/axis/}Server.userException
> faultString: java.lang.NullPointerException
> faultActor: null
> faultDetail:
>        stackTrace: java.lang.NullPointerException
>        at 
> org.apache.axis.encoding.ser.SimpleDeserializer.onEndElement(SimpleDeserializer.java:223) 
>
>        at 
> org.apache.axis.encoding.DeserializerImpl.endElement(DeserializerImpl.java:495) 
>
>        ...
> This NullPointerException is raised by Axis, not by the method code 
> (it is not executed at all).
>
> and
>
> - public int echo(int nb) {...}
> raises:
> AxisFault
> faultCode: {http://xml.apache.org/axis/}Server.userException
> faultString: org.xml.sax.SAXException: Bad types (class Interop.Number 
> -> int)
> faultActor: null
> faultDetail:
>        stackTrace: org.xml.sax.SAXException: Bad types (class 
> Interop.Number -&gt; int)
>        at 
> org.apache.axis.message.RPCHandler.onStartChild(RPCHandler.java:285)
>        ...
> which is quite logical.
>
> Any pointer would be apprecated...
> Thanks,
>
> Olivier.
>
>
>