axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Davanum Srinivas (JIRA)" <j...@apache.org>
Subject [jira] Resolved: (AXIS2-1313) Nil decimal values cause a NumberFormatException in a wsdl2java created client
Date Mon, 09 Oct 2006 00:11:20 GMT
     [ http://issues.apache.org/jira/browse/AXIS2-1313?page=all ]

Davanum Srinivas resolved AXIS2-1313.
-------------------------------------

    Resolution: Fixed

fixed in 454241 (1.1 branch)

-- dims

> Nil decimal values cause a NumberFormatException in a wsdl2java created client
> ------------------------------------------------------------------------------
>
>                 Key: AXIS2-1313
>                 URL: http://issues.apache.org/jira/browse/AXIS2-1313
>             Project: Apache Axis 2.0 (Axis2)
>          Issue Type: Bug
>          Components: databinding
>    Affects Versions: nightly
>         Environment: Java 1.4.2, Tomcat 4, Axis 2 nightly build
>            Reporter: Todd Doolittle
>            Priority: Blocker
>
> I created a client using wsdl2java from WSDL provided by a non-java service.  One of
the elements in the response is of the type xsd:decimal.  When the service responds back with
a nil value (nil="true"), the client throws a NumberFormatException.
> I also had this problem with the xsd:int, and xsd:date types previously.  Davanum fixed
those issues in JIRA-1247.  Now I'm experiencing the problem with the xsd:decimal type.
> Below is the exception, below that the service response, and below that the WSDL... 
> Exception ! java.lang.RuntimeException: java.lang.NumberFormatException 
> java.lang.RuntimeException: java.lang.NumberFormatException 
> at org.tempuri.POCStub.fromOM(POCStub.java:2741) 
> at org.tempuri.POCStub.Getinfo(POCStub.java:140) 
> at POCTest.run(POCTest.java:44) 
> at POCTest.main(POCTest.java:20) 
> Caused by: java.lang.NumberFormatException 
> at java.math.BigDecimal.<init>(Unknown Source) 
> at java.math.BigDecimal.<init>(Unknown Source) 
> at org.apache.axis2.databinding.utils.ConverterUtil.convertToDecimal(ConverterUtil.java:230)

> at org.tempuri.POCStub$Decimal4Js$Factory.parse(POCStub.java:534) 
> at org.tempuri.POCStub$Item_type0$Factory.parse(POCStub.java:2516) 
> at org.tempuri.POCStub$Items_type1$Factory.parse(POCStub.java:1477) 
> at org.tempuri.POCStub$GetinfoResponse$Factory.parse(POCStub.java:1920) 
> at org.tempuri.POCStub.fromOM(POCStub.java:2733) 
> ... 3 more 
> Here is the response the service sent back... 
> <?xml version="1.0" encoding="UTF-8" standalone="no" ?> 
> <SOAP-ENV:Envelope 
>    xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> 
>    <SOAP-ENV:Body> 
>       <fjs1:GetinfoResponse xmlns:fjs1="http://tempuri.org/" count="1" 
>          xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
>          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 
>          <fjs1:items> 
>             <fjs1:item> 
>                <fjs1:ksn xsi:nil="true" /> 
>                <fjs1:upc xsi:nil="true" /> 
>                <fjs1:maintdt xsi:nil="true" /> 
>                <fjs1:dpt>10</fjs1:dpt> 
>             </fjs1:item> 
>          </fjs1:items> 
>       </fjs1:GetinfoResponse> 
>    </SOAP-ENV:Body> 
> </SOAP-ENV:Envelope> 
> Here is the WSDL I used to create the client with wsdl2java... 
> <?xml version="1.0" encoding="UTF-8" standalone="no" ?> 
> <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" 
>    name="POC" targetNamespace="http://tempuri.org/" 
>    xmlns:fjs="http://tempuri.org/" 
>    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" 
>    xmlns:xsd="http://www.w3.org/2001/XMLSchema"> 
>    <wsdl:types> 
>       <xsd:schema elementFormDefault="qualified" 
>          targetNamespace="http://tempuri.org/" 
>          xmlns:s1="http://tempuri.org/"> 
>          <xsd:simpleType name="decimal4js"> 
>             <xsd:restriction base="xsd:decimal"> 
>                <xsd:totalDigits value="10" /> 
>                <xsd:fractionDigits value="0" /> 
>             </xsd:restriction> 
>          </xsd:simpleType> 
>           
>          <xsd:element name="lookup"> 
>             <xsd:complexType> 
>                <xsd:sequence> 
>                   <xsd:element maxOccurs="unbounded" minOccurs="0" 
>                      name="upc" nillable="true" type="xsd:string" /> 
>                </xsd:sequence> 
>                <xsd:attribute name="count" type="xsd:int" 
>                   use="required" /> 
>             </xsd:complexType> 
>          </xsd:element> 
>          <xsd:element name="GetinfoResponse"> 
>             <xsd:complexType> 
>                <xsd:sequence> 
>                   <xsd:element name="items" nillable="true"> 
>                      <xsd:complexType> 
>                         <xsd:sequence> 
>                            <xsd:element maxOccurs="unbounded" 
>                               minOccurs="0" name="item" nillable="true"> 
>                               <xsd:complexType> 
>                                  <xsd:sequence> 
>                                     <xsd:element name="ksn" 
>                                        nillable="true" type="decimal4js" /> 
>                                     <xsd:element name="upc" 
>                                        nillable="true" type="xsd:string" /> 
>                                     <xsd:element 
>                                        name="maintdt" nillable="true" type="xsd:date"
/> 
>                                     <xsd:element name="dpt" 
>                                        nillable="true" type="xsd:int" /> 
>                                  </xsd:sequence> 
>                               </xsd:complexType> 
>                            </xsd:element> 
>                         </xsd:sequence> 
>                      </xsd:complexType> 
>                   </xsd:element> 
>                </xsd:sequence> 
>                <xsd:attribute name="count" type="xsd:int" 
>                   use="required" /> 
>             </xsd:complexType> 
>          </xsd:element> 
>       </xsd:schema> 
>    </wsdl:types> 
>    <wsdl:message name="GetinfoIn"> 
>       <wsdl:part element="fjs:lookup" name="parameters" /> 
>    </wsdl:message> 
>    <wsdl:message name="GetinfoOut"> 
>       <wsdl:part element="fjs:GetinfoResponse" name="parameters" /> 
>    </wsdl:message> 
>    <wsdl:portType name="POCPortType"> 
>       <wsdl:operation name="Getinfo"> 
>          <wsdl:input message="fjs:GetinfoIn" name="lookup" /> 
>          <wsdl:output message="fjs:GetinfoOut" 
>             name="GetinfoResponse" /> 
>       </wsdl:operation> 
>    </wsdl:portType> 
>    <wsdl:binding name="POCBinding" type="fjs:POCPortType"> 
>       <soap:binding transport="http://schemas.xmlsoap.org/soap/http" /> 
>       <wsdl:operation name="Getinfo"> 
>          <soap:operation soapAction="getinfo" style="document" /> 
>          <wsdl:input name="lookup"> 
>             <soap:body use="literal" /> 
>          </wsdl:input> 
>          <wsdl:output name="GetinfoResponse"> 
>             <soap:body use="literal" /> 
>          </wsdl:output> 
>       </wsdl:operation> 
>    </wsdl:binding> 
>    <wsdl:service name="POC"> 
>       <wsdl:port binding="fjs:POCBinding" name="POCPortType"> 
>          <soap:address 
>             location="http://151.149.158.136:6395/ws/r/poc" /> 
>       </wsdl:port> 
>    </wsdl:service> 
> </wsdl:definitions> 

-- 
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

        

---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


Mime
View raw message