Hi,
      I'am new to web services.I have been facing a problem with deserialization.
      1)I am using axis to generate the client side code.When my object model is 
simple I dont have any problems everything is working perfect.
      2)Now I have a complex object model that returns  MyContactTOWrapper  from the 
web service
                a)MyContactTOWrapper object  contains 
                    1)item number:long
                    2)requestId:String
                    3)totalItems:long
                    4)MyContactTO
             
                 b)MyContactTO
                     1)Email:String
                     2)Name:String
                     3)RxClientData
 
                 c)RxClientData
                      1)nameList:[]String
                       2)ValueList:[]String
                      3)Url:String
 
The exception that is being thrown
[ERROR] Call - -Exception: <org.xml.sax.SAXException: Invalid element in 
com.ibportal.rxcc.integration.lob.rx.MyContactTO - 
MyContactTO>org.xml.sax.SAXException: Invalid element in 
com.ibportal.rxcc.integration.lob.rx.MyContactTO - MyContactTO

at 
org.apache.axis.encoding.ser.BeanDeserializer.onStartChild(BeanDeserializer.java:260)

Do I need to write my own deserialized classes or can I use from the existing one.Any 
help regarding this is appreciated.
 
The wsdl document.
         
  <xsd:complexType name="MyContactTOWrapper">
-       <xsd:sequence>
             <xsd:element name="myContacts" maxOccurs="1" 
type="stns:ArrayOfMyContactTO"    minOccurs="1" nillable="true" /> 
             <xsd:element name="itemNumber" maxOccurs="1" type="xsd:long" 
minOccurs="1" /> 
          <xsd:element name="requestId" maxOccurs="1" type="xsd:string" minOccurs="1" 
nillable="true" /> 
      <xsd:element name="totalItems" maxOccurs="1" type="xsd:long" minOccurs="1" /> 
    </xsd:sequence>
 </xsd:complexType>
 
 
- <xsd:complexType name="MyContactTO">
-       <xsd:sequence>
               <xsd:element name="rowId" maxOccurs="1" type="xsd:string" minOccurs="1" 
nillable="true" /> 
       <xsd:element name="viewPortfolioLink" maxOccurs="1" type="stns:RxClientData" 
minOccurs="1" nillable="true" /> 
       <xsd:element name="nameLink" maxOccurs="1" type="stns:RxClientData" 
minOccurs="1" nillable="true" /> 
               <xsd:element name="workPhone" maxOccurs="1" type="xsd:string" 
minOccurs="1" nillable="true" /> 
               <xsd:element name="email" maxOccurs="1" type="xsd:string" minOccurs="1" 
nillable="true" /> 
               <xsd:element name="addLink" maxOccurs="1" type="stns:RxClientData" 
minOccurs="1" nillable="true" /> 
               <xsd:element name="firstName" maxOccurs="1" type="xsd:string" 
minOccurs="1" nillable="true" /> 
               <xsd:element name="lastName" maxOccurs="1" type="xsd:string" 
minOccurs="1" nillable="true" /> 
   </xsd:sequence>
</xsd:complexType>
 
 
- <xsd:complexType name="RxClientData">
-        <xsd:sequence>
                <xsd:element xmlns:tp="java:language_builtins.lang" name="valueList" 
maxOccurs="1" type="tp:ArrayOfString" minOccurs="1" nillable="true" /> 
                <xsd:element name="clientUrl" maxOccurs="1" type="xsd:string" 
minOccurs="1" nillable="true" /> 
                <xsd:element xmlns:tp="java:language_builtins.lang" name="nameList" 
maxOccurs="1" type="tp:ArrayOfString" minOccurs="1" nillable="true" /> 
    </xsd:sequence>
</xsd:complexType>
 
Thanks!
Sridhar
 
 
 
                                 
                           

Reply via email to