axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Wes Munsil" <mun...@alumni.caltech.edu>
Subject Re: [jira] Commented: (AXIS-2386) Java2WSDL changes type double arrayinto a single double.
Date Fri, 27 Jan 2006 22:56:22 GMT
Yes, and AXIS-1405 appears similar, if not identical, to the problem I
reported earlier today. AXIS-1405, if I am reading things correctly, is a
critical open bug, unassigned since June 21, 2004.

Eric Webster (JIRA) said:
>     [
> http://issues.apache.org/jira/browse/AXIS-2386?page=comments#action_12364268
> ]
>
> Eric Webster commented on AXIS-2386:
> ------------------------------------
>
> This is similar but different then bug AXIS-1405
> https://issues.apache.org/jira/browse/AXIS-1405
>
>> Java2WSDL changes type double array into a single double.
>> ---------------------------------------------------------
>>
>>          Key: AXIS-2386
>>          URL: http://issues.apache.org/jira/browse/AXIS-2386
>>      Project: Apache Axis
>>         Type: Bug
>>   Components: WSDL processing
>>     Versions: 1.2.1, 1.3
>>  Environment: Linux 2.4.26, java version "1.5.0_04", Tomcat 5.5
>>     Reporter: Eric Webster
>>     Priority: Minor
>>  Attachments: DataSet.wsdl, IncorrectDataSet.wsdl
>>
>> Java2WSDL changes type double array into a single double.
>> This happens when you run Java2WSDL manually on the command line or when
>> a wsdl file is generated from a service_name?wsdl url.
>> Currently to fix this I just manually edit the generated WSDL file and
>> distrobute that.
>> The Java code originally came from a hand made WSDL file. WSDL2Java was
>> used to generate the Java code. The section that is affected by this
>> problem is the 'ValueVector' complexType which contains and element
>> 'values' which is an array of doubles. After converting to Java and then
>> back to WSDL 'values' becomes a single double.
>> Here is the original WSDL file.
>> <?xml version="1.0" encoding="UTF-8"?>
>> <wsdl:definitions
>>     targetNamespace="dataset.odin.cirg.washington.edu"
>>     xmlns:apachesoap="http://xml.apache.org/xml-soap"
>>     xmlns:impl="dataset.odin.cirg.washington.edu"
>>     xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
>>     xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
>>     xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
>>     xmlns:xsd="http://www.w3.org/2001/XMLSchema">
>>   <wsdl:types>
>>     <schema targetNamespace="dataset.odin.cirg.washington.edu"
>> xmlns="http://www.w3.org/2001/XMLSchema">
>>       <import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
>>
>>       <complexType name="ArrayOf_xsd_double">
>> 	<complexContent>
>> 	  <restriction base="soapenc:Array">
>> 	    <attribute ref="soapenc:arrayType" wsdl:arrayType="xsd:double[]"/>
>> 	  </restriction>
>> 	</complexContent>
>>       </complexType>
>>       <complexType name="ArrayOf_xsd_string">
>> 	<complexContent>
>> 	  <restriction base="soapenc:Array">
>> 	    <attribute ref="soapenc:arrayType" wsdl:arrayType="xsd:string[]"/>
>> 	  </restriction>
>> 	</complexContent>
>>       </complexType>
>>
>>       <simpleType name="TypeEnum">
>> 	<restriction base="xsd:string">
>> 	  <enumeration value="count"/>
>> 	  <enumeration value="flag"/>
>> 	  <enumeration value="score"/>
>> 	  <enumeration value="blank"/>
>> 	  <enumeration value="error"/>
>> 	  <enumeration value="other"/>
>> 	  <enumeration value="unknown"/>
>> 	</restriction>
>>       </simpleType>
>>       <simpleType name="IntervalUnitEnum">
>> 	<restriction base="xsd:string">
>> 	  <enumeration value="second"/>
>> 	  <enumeration value="week"/>
>> 	  <enumeration value="month"/>
>> 	  <enumeration value="year"/>
>> 	</restriction>
>>       </simpleType>
>>       <complexType name="Attribute">
>> 	<sequence>
>> 	  <element name="name" type="xsd:string"/>
>> 	  <element name="value" type="xsd:string" nillable="true"/>
>> 	</sequence>
>>       </complexType>
>>       <complexType name="ArrayOf_impl_Attribute">
>> 	<complexContent>
>> 	  <restriction base="soapenc:Array">
>> 	    <attribute ref="soapenc:arrayType"
>> wsdl:arrayType="impl:Attribute[]"/>
>> 	  </restriction>
>> 	</complexContent>
>>       </complexType>
>>       <complexType name="ValueVector">
>> 	<sequence>
>> 	  <element name="name" type="xsd:string" nillable="true"/>
>> 	  <element name="type" type="impl:TypeEnum"/>
>> 	  <element name="date" type="xsd:string"/>
>> 	  <element name="interval" type="xsd:int"/>
>> 	  <element name="intervalUnit" type="impl:IntervalUnitEnum"/>
>> 	  <element name="attributes" type="impl:ArrayOf_impl_Attribute"
>> nillable="true"/>
>> 	  <element name="values" type="impl:ArrayOf_xsd_double"
>> nillable="true"/>
>> 	</sequence>
>>       </complexType>
>>       <complexType name="ArrayOf_impl_ValueVector">
>> 	<complexContent>
>> 	  <restriction base="soapenc:Array">
>> 	    <attribute ref="soapenc:arrayType"
>> wsdl:arrayType="impl:ValueVector[]"/>
>> 	  </restriction>
>> 	</complexContent>
>>       </complexType>
>>       <complexType name="DataSet">
>> 	<sequence>
>> 	  <element name="name" type="xsd:string" nillable="true"/>
>> 	  <element name="attributes" type="impl:ArrayOf_impl_Attribute"
>> nillable="true"/>
>> 	  <element name="vectors" type="impl:ArrayOf_impl_ValueVector"/>
>> 	</sequence>
>>       </complexType>
>>       <complexType name="ArrayOf_impl_DataSet">
>> 	<complexContent>
>> 	  <restriction base="soapenc:Array">
>> 	    <attribute ref="soapenc:arrayType"
>> wsdl:arrayType="impl:DataSet[]"/>
>> 	  </restriction>
>> 	</complexContent>
>>       </complexType>
>>       <complexType name="DataSetArray">
>> 	<sequence>
>> 	  <element name="array" type="impl:ArrayOf_impl_DataSet"/>
>> 	</sequence>
>>       </complexType>
>>       <complexType name="SurvCol">
>> 	<sequence>
>> 	  <element name="name" type="xsd:string"/>
>> 	  <element name="values" type="impl:ArrayOf_xsd_string"/>
>> 	  <element name="attributes" type="impl:ArrayOf_impl_Attribute"
>> nillable="true"/>
>> 	</sequence>
>>       </complexType>
>>       <complexType name="ArrayOf_impl_SurvCol">
>> 	<complexContent>
>> 	  <restriction base="soapenc:Array">
>> 	    <attribute ref="soapenc:arrayType"
>> wsdl:arrayType="impl:SurvCol[]"/>
>> 	  </restriction>
>> 	</complexContent>
>>       </complexType>
>>       <complexType name="SurvDataSet">
>> 	<sequence>
>> 	  <element name="name" type="xsd:string" nillable="true"/>
>> 	  <element name="attributes" type="impl:ArrayOf_impl_Attribute"
>> nillable="true"/>
>> 	  <element name="vectors" type="impl:ArrayOf_impl_SurvCol"/>
>> 	</sequence>
>>       </complexType>
>>       <complexType name="ArrayOf_impl_SurvDataSet">
>> 	<complexContent>
>> 	  <restriction base="soapenc:Array">
>> 	    <attribute ref="soapenc:arrayType"
>> wsdl:arrayType="impl:SurvDataSet[]"/>
>> 	  </restriction>
>> 	</complexContent>
>>       </complexType>
>>       <complexType name="SurvDataSetArray">
>> 	<sequence>
>> 	  <element name="array" type="impl:ArrayOf_impl_SurvDataSet"/>
>> 	</sequence>
>>       </complexType>
>>     </schema>
>>   </wsdl:types>
>> </wsdl:definitions>
>> Here is what 'ValueVector' turns into after running WSDL2Java (which
>> creates correct java code) and then Java2WSDL.
>>    <complexType name="ValueVector">
>>     <sequence>
>>      <element name="name" nillable="true" type="xsd:string"/>
>>      <element name="type" type="tns2:TypeEnum"/>
>>      <element name="date" type="xsd:string"/>
>>      <element name="interval" type="xsd:int"/>
>>      <element name="intervalUnit" type="tns2:IntervalUnitEnum"/>
>>      <element name="attributes" nillable="true"
>> type="impl:ArrayOf_tns1_Attribute"/>
>>      <element name="values" nillable="true" type="xsd:double"/>
>>     </sequence>
>>    </complexType>
>
> --
> 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
>
>


Mime
View raw message