[ http://issues.apache.org/jira/browse/AXIS-2472?page=comments#action_12378467 ]
Roxana Quiroga Sollinger commented on AXIS-2472: ------------------------------------------------ The service does not opperate as expected. Subclasses of SimpleBean are not being recognized in the deserialization process, no exception is being thrown. The retrieving soap message is the following. <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soapenv:Body><ns1:executeResponse soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="urn:ProcessConnector"><executeReturn xmlns:ns2="http://impl.beans.gtw.acriter.com" xsi:type="ns2:SimpleDataResponse"><mistaken xsi:type="xsd:boolean">false</mistaken><response soapenc:arrayType="ns2:SimpleBean[2]" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="soapenc:Array"><response xsi:type="ns2:SimpleBean"/><response xsi:type="ns2:SimpleBean"/></response></executeReturn></ns1:executeResponse></soapenv:Body></soapenv:Envelope> Inside the SimpleBean array I should expect the instance of the SimpleBean childre, but it's comming empty. > WSDL not relating array of objects (base class - children) when deploying in > the Apache Tomcat Server > ------------------------------------------------------------------------------------------------------ > > Key: AXIS-2472 > URL: http://issues.apache.org/jira/browse/AXIS-2472 > Project: Apache Axis > Type: Bug > Components: Deployment / Registries > Versions: 1.3 > Environment: Windows XP, Apache Tomcat 4.1, j2sdk 1.4.2, axis 1.3 > Reporter: Roxana Quiroga Sollinger > > When deploying a web service into my server, I found it's not the same one > create with Java2WSDL. > I have the following data structure: > public class SimpleBean implements Serializable { } > public class UserBean extends SimpleBean { > private String name; } > In order to get the wsdl for the client, I execute the following command: > Java2Wsdl -o ProcessConnector.wsdl > -l"http://localhost:8080/gtw/services/ProcessConnector" -n > urn:ProcessConnector -p"ProcessConnectorService" urn:ProcessConnectorService > com.acriter.gtw.core.connector.WSConnector -a -e > com.acriter.strutsclient.beans.UserBean > Therefore I get a ProcessConnector.wsdl with the following information (which > is correct) > <schema targetNamespace="http://impl.beans.gtw.acriter.com" > xmlns="http://www.w3.org/2001/XMLSchema"> > <import namespace="http://beans.strutsclient.acriter.com"/> > <import namespace="urn:ProcessConnector"/> > <import namespace="http://schemas.xmlsoap.org/soap/encoding/"/> > <complexType name="SimpleBean"> > <sequence/> > </complexType> > </schema> > <schema targetNamespace="http://beans.strutsclient.acriter.com" > xmlns="http://www.w3.org/2001/XMLSchema"> > <import namespace="http://impl.beans.gtw.acriter.com"/> > <import namespace="urn:ProcessConnector"/> > <import namespace="http://schemas.xmlsoap.org/soap/encoding/"/> > <complexType name="UserBean"> > <complexContent> > <extension base="tns2:SimpleBean"> > <sequence> > <element name="realName" nillable="true" type="soapenc:string"/> > <element name="username" nillable="true" type="soapenc:string"/> > </sequence> > </extension> > </complexContent> > </complexType> > </schema> > The following step (at the client).. wsdl2java ... -s... which generates > correctly all the java classes and I get the deploy.wsdl with the following > information: > <arrayMapping > xmlns:ns="urn:ProcessConnector" > qname="ns:ArrayOf_tns2_SimpleBean" > type="java:com.acriter.gtw.beans.impl.SimpleBean[]" > innerType="cmp-ns:SimpleBean" > xmlns:cmp-ns="http://impl.beans.gtw.acriter.com" > encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" > /> > <typeMapping > xmlns:ns="http://beans.strutsclient.acriter.com" > qname="ns:UserBean" > type="java:com.acriter.strutsclient.beans.UserBean" > serializer="org.apache.axis.encoding.ser.BeanSerializerFactory" > deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory" > encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" > /> > <typeMapping > xmlns:ns="http://impl.beans.gtw.acriter.com" > qname="ns:SimpleBean" > type="java:com.acriter.gtw.beans.impl.SimpleBean" > serializer="org.apache.axis.encoding.ser.BeanSerializerFactory" > deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory" > encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" > /> > Now.. if I deploy at the server with the AdminClient... and I want to > retrieve the same wsdl that I had before, it's not coming > http://localhost:8080/gtw/services/ProcessConnector?wsdl > The relation in the <extension> tag with the UserBean class does not exist in > the ProcessConnector.wsdl, which is different from the one which was > generated by java2wsdl. > But on the server-config.wsdd was binded > <typeMapping > deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory" > encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" > qname="ns4:UserBean" > serializer="org.apache.axis.encoding.ser.BeanSerializerFactory" > type="java:com.acriter.strutsclient.beans.UserBean" > xmlns:ns4="http://beans.strutsclient.acriter.com"/> > <typeMapping > deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory" > encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" > qname="ns5:SimpleBean" > serializer="org.apache.axis.encoding.ser.BeanSerializerFactory" > type="java:com.acriter.gtw.beans.impl.SimpleBean" > xmlns:ns5="http://impl.beans.gtw.acriter.com"/> > <arrayMapping innerType="ns8:SimpleBean" > languageSpecificType="java:com.acriter.gtw.beans.impl.SimpleBean[]" > qname="ns7:ArrayOf_tns2_SimpleBean" xmlns:ns7="urn:ProcessConnector" > xmlns:ns8="http://impl.beans.gtw.acriter.com"/> > The array of SimpleBean is being used as a part of another bean as a response > for the process. > Thanks for your help. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira