Hi
Does anybody know how to serialize a bean contains one or more array of
complextype?
-------------------------------------------------------------------------
eg. here is my wsdl definition
<xsd:complexType name="Address">
<xsd:sequence>
<xsd:element name="companyName" type="xsd:string"/>
<xsd:element name="street" type="xsd:string"/>
<xsd:element name="city" type="xsd:string"/>
<xsd:element name="state" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="LineItem">
<xsd:sequence>
<xsd:element name="productNumber" type="xsd:string"/>
<xsd:element name="description" type="xsd:string"/>
<xsd:element name="unitPrice" type="xsd:decimal"/>
<xsd:element name="quantity" type="xsd:int"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="LineItemArray">
<xsd:complexContent>
<xsd:restriction base="soapenc:Array">
<xsd:sequence>
<xsd:element name="alias" type="tns:LineItem"
maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="Order">
<xsd:sequence>
<xsd:element name="id" type="xsd:long"/>
<xsd:element name="customer" type="tns:Address"/>
<xsd:element name="lineItems" type="tns:LineItemArray"/>
</xsd:sequence>
</xsd:complexType>
and my deploy.wsdd is
<beanMapping
xmlns:ns="urn:Address"
qname="ns:myAddress"
languageSpecificType="wsdd-java:Address"
/>
<beanMapping
xmlns:ns="urn:lineItem"
qname="ns:myLineItem"
languageSpecificType="wsdd-java:LineItem"
/>
<beanMapping
xmlns:ns="urn:order"
qname="ns:myOrder"
languageSpecificType="wsdd-java:Order"
/>
--------------------------------------------------------------------------------
I was able to successfully generate the java class for it. I was also
able to deploy
the bean to jboss, and use axis wsdl to get the Order object. Once I
got the object,
I need to serialize this Order ojbect to xml. But I get the error
below, when I used
BeanSerialize( Order.class, new QName( "myOrder", "order" ) )
serialize(Order.class, null , testorder,orderQName )
[java] java.io.IOException: No mapped schema type for LineItem
[java] at
org.apache.axis.encoding.ser.ArraySerializer.serialize(Unknown Source)
[java] at
org.apache.axis.encoding.SerializationContextImpl.serializeActual(Unknown
Source)
[java] at
org.apache.axis.encoding.SerializationContextImpl.serialize(Unknown Source)
[java] at
org.apache.axis.encoding.ser.BeanSerializer.serialize(Unknown Source)
As you can see, no error report for the Address or Quote object.
What am I doing wrong?
Please help.
Thanks