|
This
seems to be a serious regression bug... But maybe I'm doing something
wrong...
I was using 1.2 RC2, and everything was working for me. Now under 1.2 final, the handling of arrays appears broken. Here is the error: org.apache.axis.AxisFaultorg.xml.sax.SAXException: Found character data inside an array element while deserializing Here is the message that it choked on: <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> <getSupportedMatchAlgorithmsResponse xmlns="urn://hl7.org/CTSVAPI"> <getSupportedMatchAlgorithmsReturn xmlns:ns1="urn://hl7.org/CTSVAPI" xsi:type="ns1:ArrayOf_xsd_string">IdenticalIgnoreCase</getSupportedMatchAlgorithmsReturn> <getSupportedMatchAlgorithmsReturn>StartsWithIgnoreCase</getSupportedMatchAlgorithmsReturn> <getSupportedMatchAlgorithmsReturn>EndsWithIgnoreCase</getSupportedMatchAlgorithmsReturn> <getSupportedMatchAlgorithmsReturn>ContainsPhraseIgnoreCase</getSupportedMatchAlgorithmsReturn> </getSupportedMatchAlgorithmsResponse> </soapenv:Body> </soapenv:Envelope> What it is supposed to be returning is a simple String[]. A snippit from the wsdl file: <element name="getSupportedMatchAlgorithms"> <complexType/> </element> <element name="getSupportedMatchAlgorithmsResponse"> <complexType> <sequence> <element maxOccurs="unbounded" name="getSupportedMatchAlgorithmsReturn" type="xsd:string"/> </sequence> </complexType> </element> My build process is kind of complicated - my initial definition of the API is in IDL. The idl is compiled into Java. Then, my WSDL is generated by the java2wsdl tool, using the "-y WRAPPED" option. Then, I generate java using wsdl2java tool - and I implement my API using the resulting java classes. One thing that I noted here, was that 1.2 beta generated "ArrayOf_X" classes for each array object, while 1.2 final does not generate any ArrayOf_X classes. Finally I install the code into my Axis server, and try it out. I can call most of the methods in my API - but anything that returns an Array throws an exception, as detailed above. Thanks for any advice, Dan |
- String Array regression? Dan Armbrust
- RE: String Array regression? Tom Jordahl
- Re: String Array regression? Dan Armbrust
