axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Egger Oliver <oliver.eg...@ecofin.ch>
Subject RE: array serialization problem (user error ?)
Date Fri, 01 Mar 2002 10:19:04 GMT
Hello,
 
I ran into the same problem, i'm roundtripping
sometimes (because I'm to lazy to type) between
the generated java beans from java2wsdl and back-
wards wsdl2java, till 2002-02-27 nightly build this was
working in both ways, even though java2wsdl always emitted something
like this:
 
<complexType name="ArrayOf_tns2_TradeType">

<complexContent>

<restriction base="SOAP-ENC:Array">

<attribute ref="SOAP-ENC:arrayType" wsdl:arrayType="tns2:TradeType[]"/>

</restriction>

</complexContent>

since yesterday the deserialization failed in the testcase but with
the updated wsdl recommondation form rich it works back. 
 
Maybe java2wsdl can be adjusted? 
 
Thanks for the info,
Oliver

Neu: NZZ finfox
Die Finanz- und Vermögensplanung für Private
http://finfox.nzz.ch <http://finfox.nzz.ch/> <?xml:namespace prefix = o ns =
"urn:schemas-microsoft-com:office:office" />

ECOFIN Research and Consulting AG
Neumuensterallee 6
CH-8032 Zuerich
+41 1 389 65 29
oliver.egger@ecofin.ch
http://www.ecofin.ch <http://www.ecofin.ch/> 

 

-----Original Message-----
From: Dave Dunkin [mailto:DaveDu@Attachmate.com]
Sent: Freitag, 1. März 2002 00:18
To: 'axis-user@xml.apache.org'
Subject: RE: array serialization problem (user error ?)



The wsdl is from a deployed axis service. Sorry, I guess I didn't make that
part clear before. The problem isn't with the axis stubs (like I said
before, .NET stubs fail too), it's with the axis service. I've attached as
much of the source code as I can provide.

Dave Dunkin 

-----Original Message----- 
From: R J Scheuerle Jr [ mailto:scheu@us.ibm.com <mailto:scheu@us.ibm.com> ]

Sent: Thursday, February 28, 2002 3:07 PM 
To: axis-user@xml.apache.org 
Cc: axis-user@xml.apache.org 
Subject: Re: array serialization problem (user error ?) 


I took a serious look your ServiceOne.wsdl document, and it doesn't appear 
to match your response files. 

Here's a snippet of the response file: 

  <multiRef id="id1" SOAP-ENC:root="0" 
     xsi:type="ns3:ScreenOutputs__Table" 
    xmlns:ns3=" http://output.getOrderData.ServiceOne.serviceone
<http://output.getOrderData.ServiceOne.serviceone> " 
    xmlns:SOAP-ENC=" http://schemas.xmlsoap.org/soap/encoding/
<http://schemas.xmlsoap.org/soap/encoding/> "> 

   <_Record href="#id2"/> 
   <_Record href="#id3"/> 
   ... 
<multiRef /> 

<multiRef id="id2" 
      SOAP-ENC:root="0" 
      xsi:type="ns20:ScreenOutputs__Table__Record" 
      xmlns:ns20=" http://output.getOrderData.ServiceOne.serviceone
<http://output.getOrderData.ServiceOne.serviceone> " 
      xmlns:SOAP-ENC=" http://schemas.xmlsoap.org/soap/encoding/
<http://schemas.xmlsoap.org/soap/encoding/> "> 

   <order xsi:type="xsd:string">1</order> 
   .... 
</multiRef> 

The response indicates that a _Record should be of type 
"ns2:ScreenOutputs__Table__Record", 
but in your wsdl you have _Record as type 
="intf:ArrayOf_tns2_ScreenOutputs__Table__Record". 

The numerous _Record fields indicate that it should have the maxOccurs 
="unbounded" attribute. 

Do the following: 

1) Change the ScreenOutputs__Table to: 

    <complexType name="ScreenOutputs__Table"> 
       <all> 
         <element name="_Record" 
             nillable="true" maxOccurs="unbounded" 
             type="tns2:ScreenOutputs__Table__Record"/> 
       </all> 
    </complexType> 

2) Get rid of the complexType ArrayOf_tns2_ScreenOutputs__Table__Record. 

3) Re-run WSDL2Java and try again. 


Where did you get this WSDL ? 

Rich Scheuerle 
XML & Web Services Development 
512-838-5115  (IBM TL 678-5115) 




Mime
View raw message