You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Tibor Mucha (JIRA)" <ji...@apache.org> on 2012/08/20 12:24:37 UTC

[jira] [Created] (AXIS2-5392) java BigDecimal defined as type="xs:decimal" encodes in xml as engineering string

Tibor Mucha created AXIS2-5392:
----------------------------------

             Summary: java BigDecimal defined as type="xs:decimal" encodes in xml as engineering string 
                 Key: AXIS2-5392
                 URL: https://issues.apache.org/jira/browse/AXIS2-5392
             Project: Axis2
          Issue Type: Bug
          Components: adb
    Affects Versions: 1.6.2
            Reporter: Tibor Mucha


The bigdecimal is encoded in soup xml as engineering string

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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


[jira] [Updated] (AXIS2-5392) java BigDecimal defined as type="xs:decimal" encodes in xml as engineering string

Posted by "Tibor Mucha (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2-5392?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Tibor Mucha updated AXIS2-5392:
-------------------------------

    Description: 
The bigdecimal is encoded in soap xml as engineering string.
Case:
--- java WS object :
public class DummyOutput {
    BigDecimal bd;

    public BigDecimal getBd() {
        return bd;
    }

    public void setBd(BigDecimal bd) {
        this.bd = bd;
    }
}
---  generated wsdl: 
        <xs:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://api.service.tis.ymsgroup.com/xsd">
            <xs:complexType name="DummyOutput">
                <xs:sequence>
                    <xs:element minOccurs="0" name="bd" nillable="true" type="xs:decimal"/>
                    <xs:element maxOccurs="unbounded" minOccurs="0" name="bdArray" nillable="true" type="xs:decimal"/>
                </xs:sequence>
            </xs:complexType>
        </xs:schema>
--- Test case:
public class DummyServices implements IDummyServices {

    public DummyOutput getArrayBigDecimal() {

        BigDecimal[] generateBigDecimalArray = generateBigDecimalArray();

        DummyOutput ret = new DummyOutput();
        ret.setBdArray(generateBigDecimalArray);
        ret.setBd(new BigDecimal("123E-10"));
        return ret;
    }

    private BigDecimal[] generateBigDecimalArray() {
        Random random = new Random();
        BigDecimal[] ret = new BigDecimal[10];
        for (int i = 0; i < ret.length; i++) {
            ret[i] = new BigDecimal("1E" + (random.nextBoolean() ? "+" : "-") + i);
            System.out.println(ret[i]);
        }

        return ret;
    }

}
--- the result is in engineering string:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Body>
      <ns:getArrayBigDecimalResponse xmlns:ns="http://api.service.tis.ymsgroup.com">
         <ns:return xsi:type="ax2135:DummyOutput" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ax2135="http://api.service.tis.ymsgroup.com/xsd">
            <ax2135:bd>1.23E-8</ax2135:bd>
            <ax2135:bdArray>1</ax2135:bdArray>
            <ax2135:bdArray>1E+1</ax2135:bdArray>
            <ax2135:bdArray>1E+2</ax2135:bdArray>
            <ax2135:bdArray>1E+3</ax2135:bdArray>
            <ax2135:bdArray>1E+4</ax2135:bdArray>
            <ax2135:bdArray>0.00001</ax2135:bdArray>
            <ax2135:bdArray>0.000001</ax2135:bdArray>
            <ax2135:bdArray>1E-7</ax2135:bdArray>
            <ax2135:bdArray>1E-8</ax2135:bdArray>
            <ax2135:bdArray>1E-9</ax2135:bdArray>
         </ns:return>
      </ns:getArrayBigDecimalResponse>
   </soapenv:Body>
</soapenv:Envelope>
--- but expecting (to be compatible with soap not java receiver - in out case .NET):
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Body>
      <ns:getArrayBigDecimalResponse xmlns:ns="http://api.service.tis.ymsgroup.com">
         <ns:return xsi:type="ax2135:DummyOutput" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ax2135="http://api.service.tis.ymsgroup.com/xsd">
            <ax2135:bd>0.0000000123</ax2135:bd>
            <ax2135:bdArray>1</ax2135:bdArray>
            <ax2135:bdArray>10</ax2135:bdArray>
            <ax2135:bdArray>100</ax2135:bdArray>
            <ax2135:bdArray>1000</ax2135:bdArray>
            <ax2135:bdArray>10000</ax2135:bdArray>
            <ax2135:bdArray>0.00001</ax2135:bdArray>
            <ax2135:bdArray>0.000001</ax2135:bdArray>
            <ax2135:bdArray>0.0000001</ax2135:bdArray>
            <ax2135:bdArray>0.00000001</ax2135:bdArray>
            <ax2135:bdArray>0.000000001</ax2135:bdArray>
         </ns:return>
      </ns:getArrayBigDecimalResponse>
   </soapenv:Body>
</soapenv:Envelope> 



  was:The bigdecimal is encoded in soup xml as engineering string

    
> java BigDecimal defined as type="xs:decimal" encodes in xml as engineering string 
> ----------------------------------------------------------------------------------
>
>                 Key: AXIS2-5392
>                 URL: https://issues.apache.org/jira/browse/AXIS2-5392
>             Project: Axis2
>          Issue Type: Bug
>          Components: adb
>    Affects Versions: 1.6.2
>            Reporter: Tibor Mucha
>
> The bigdecimal is encoded in soap xml as engineering string.
> Case:
> --- java WS object :
> public class DummyOutput {
>     BigDecimal bd;
>     public BigDecimal getBd() {
>         return bd;
>     }
>     public void setBd(BigDecimal bd) {
>         this.bd = bd;
>     }
> }
> ---  generated wsdl: 
>         <xs:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://api.service.tis.ymsgroup.com/xsd">
>             <xs:complexType name="DummyOutput">
>                 <xs:sequence>
>                     <xs:element minOccurs="0" name="bd" nillable="true" type="xs:decimal"/>
>                     <xs:element maxOccurs="unbounded" minOccurs="0" name="bdArray" nillable="true" type="xs:decimal"/>
>                 </xs:sequence>
>             </xs:complexType>
>         </xs:schema>
> --- Test case:
> public class DummyServices implements IDummyServices {
>     public DummyOutput getArrayBigDecimal() {
>         BigDecimal[] generateBigDecimalArray = generateBigDecimalArray();
>         DummyOutput ret = new DummyOutput();
>         ret.setBdArray(generateBigDecimalArray);
>         ret.setBd(new BigDecimal("123E-10"));
>         return ret;
>     }
>     private BigDecimal[] generateBigDecimalArray() {
>         Random random = new Random();
>         BigDecimal[] ret = new BigDecimal[10];
>         for (int i = 0; i < ret.length; i++) {
>             ret[i] = new BigDecimal("1E" + (random.nextBoolean() ? "+" : "-") + i);
>             System.out.println(ret[i]);
>         }
>         return ret;
>     }
> }
> --- the result is in engineering string:
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>    <soapenv:Body>
>       <ns:getArrayBigDecimalResponse xmlns:ns="http://api.service.tis.ymsgroup.com">
>          <ns:return xsi:type="ax2135:DummyOutput" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ax2135="http://api.service.tis.ymsgroup.com/xsd">
>             <ax2135:bd>1.23E-8</ax2135:bd>
>             <ax2135:bdArray>1</ax2135:bdArray>
>             <ax2135:bdArray>1E+1</ax2135:bdArray>
>             <ax2135:bdArray>1E+2</ax2135:bdArray>
>             <ax2135:bdArray>1E+3</ax2135:bdArray>
>             <ax2135:bdArray>1E+4</ax2135:bdArray>
>             <ax2135:bdArray>0.00001</ax2135:bdArray>
>             <ax2135:bdArray>0.000001</ax2135:bdArray>
>             <ax2135:bdArray>1E-7</ax2135:bdArray>
>             <ax2135:bdArray>1E-8</ax2135:bdArray>
>             <ax2135:bdArray>1E-9</ax2135:bdArray>
>          </ns:return>
>       </ns:getArrayBigDecimalResponse>
>    </soapenv:Body>
> </soapenv:Envelope>
> --- but expecting (to be compatible with soap not java receiver - in out case .NET):
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>    <soapenv:Body>
>       <ns:getArrayBigDecimalResponse xmlns:ns="http://api.service.tis.ymsgroup.com">
>          <ns:return xsi:type="ax2135:DummyOutput" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ax2135="http://api.service.tis.ymsgroup.com/xsd">
>             <ax2135:bd>0.0000000123</ax2135:bd>
>             <ax2135:bdArray>1</ax2135:bdArray>
>             <ax2135:bdArray>10</ax2135:bdArray>
>             <ax2135:bdArray>100</ax2135:bdArray>
>             <ax2135:bdArray>1000</ax2135:bdArray>
>             <ax2135:bdArray>10000</ax2135:bdArray>
>             <ax2135:bdArray>0.00001</ax2135:bdArray>
>             <ax2135:bdArray>0.000001</ax2135:bdArray>
>             <ax2135:bdArray>0.0000001</ax2135:bdArray>
>             <ax2135:bdArray>0.00000001</ax2135:bdArray>
>             <ax2135:bdArray>0.000000001</ax2135:bdArray>
>          </ns:return>
>       </ns:getArrayBigDecimalResponse>
>    </soapenv:Body>
> </soapenv:Envelope> 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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


[jira] [Updated] (AXIS2-5392) java BigDecimal defined as type="xs:decimal" encodes in xml as engineering string

Posted by "Tibor Mucha (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2-5392?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Tibor Mucha updated AXIS2-5392:
-------------------------------

    Description: 
The bigdecimal is encoded in soap xml as engineering string.
Case:
--- java WS object :
public class DummyOutput {
    BigDecimal bd;

    public BigDecimal getBd() {
        return bd;
    }

    public void setBd(BigDecimal bd) {
        this.bd = bd;
    }
}
---  generated wsdl: 
        <xs:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://api.service.tis.ymsgroup.com/xsd">
            <xs:complexType name="DummyOutput">
                <xs:sequence>
                    <xs:element minOccurs="0" name="bd" nillable="true" type="xs:decimal"/>
                    <xs:element maxOccurs="unbounded" minOccurs="0" name="bdArray" nillable="true" type="xs:decimal"/>
                </xs:sequence>
            </xs:complexType>
        </xs:schema>
--- Test case:
public class DummyServices implements IDummyServices {

    public DummyOutput getArrayBigDecimal() {

        BigDecimal[] generateBigDecimalArray = generateBigDecimalArray();

        DummyOutput ret = new DummyOutput();
        ret.setBdArray(generateBigDecimalArray);
        ret.setBd(new BigDecimal("123E-10"));
        return ret;
    }

    private BigDecimal[] generateBigDecimalArray() {
        Random random = new Random();
        BigDecimal[] ret = new BigDecimal[10];
        for (int i = 0; i < ret.length; i++) {
            String sign = null;
            if (i < 5)
                sign = "+";
            else
                sign = "-";
            ret[i] = new BigDecimal("1E" + sign + i);
            System.out.println(ret[i]);
        }

        return ret;
    }

}
--- the result is in engineering string:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Body>
      <ns:getArrayBigDecimalResponse xmlns:ns="http://api.service.tis.ymsgroup.com">
         <ns:return xsi:type="ax2135:DummyOutput" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ax2135="http://api.service.tis.ymsgroup.com/xsd">
            <ax2135:bd>1.23E-8</ax2135:bd>
            <ax2135:bdArray>1</ax2135:bdArray>
            <ax2135:bdArray>1E+1</ax2135:bdArray>
            <ax2135:bdArray>1E+2</ax2135:bdArray>
            <ax2135:bdArray>1E+3</ax2135:bdArray>
            <ax2135:bdArray>1E+4</ax2135:bdArray>
            <ax2135:bdArray>0.00001</ax2135:bdArray>
            <ax2135:bdArray>0.000001</ax2135:bdArray>
            <ax2135:bdArray>1E-7</ax2135:bdArray>
            <ax2135:bdArray>1E-8</ax2135:bdArray>
            <ax2135:bdArray>1E-9</ax2135:bdArray>
         </ns:return>
      </ns:getArrayBigDecimalResponse>
   </soapenv:Body>
</soapenv:Envelope>
--- but expecting (to be compatible with soap not java receiver - in out case .NET):
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Body>
      <ns:getArrayBigDecimalResponse xmlns:ns="http://api.service.tis.ymsgroup.com">
         <ns:return xsi:type="ax2135:DummyOutput" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ax2135="http://api.service.tis.ymsgroup.com/xsd">
            <ax2135:bd>0.0000000123</ax2135:bd>
            <ax2135:bdArray>1</ax2135:bdArray>
            <ax2135:bdArray>10</ax2135:bdArray>
            <ax2135:bdArray>100</ax2135:bdArray>
            <ax2135:bdArray>1000</ax2135:bdArray>
            <ax2135:bdArray>10000</ax2135:bdArray>
            <ax2135:bdArray>0.00001</ax2135:bdArray>
            <ax2135:bdArray>0.000001</ax2135:bdArray>
            <ax2135:bdArray>0.0000001</ax2135:bdArray>
            <ax2135:bdArray>0.00000001</ax2135:bdArray>
            <ax2135:bdArray>0.000000001</ax2135:bdArray>
         </ns:return>
      </ns:getArrayBigDecimalResponse>
   </soapenv:Body>
</soapenv:Envelope> 



  was:
The bigdecimal is encoded in soap xml as engineering string.
Case:
--- java WS object :
public class DummyOutput {
    BigDecimal bd;

    public BigDecimal getBd() {
        return bd;
    }

    public void setBd(BigDecimal bd) {
        this.bd = bd;
    }
}
---  generated wsdl: 
        <xs:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://api.service.tis.ymsgroup.com/xsd">
            <xs:complexType name="DummyOutput">
                <xs:sequence>
                    <xs:element minOccurs="0" name="bd" nillable="true" type="xs:decimal"/>
                    <xs:element maxOccurs="unbounded" minOccurs="0" name="bdArray" nillable="true" type="xs:decimal"/>
                </xs:sequence>
            </xs:complexType>
        </xs:schema>
--- Test case:
public class DummyServices implements IDummyServices {

    public DummyOutput getArrayBigDecimal() {

        BigDecimal[] generateBigDecimalArray = generateBigDecimalArray();

        DummyOutput ret = new DummyOutput();
        ret.setBdArray(generateBigDecimalArray);
        ret.setBd(new BigDecimal("123E-10"));
        return ret;
    }

    private BigDecimal[] generateBigDecimalArray() {
        Random random = new Random();
        BigDecimal[] ret = new BigDecimal[10];
        for (int i = 0; i < ret.length; i++) {
            ret[i] = new BigDecimal("1E" + (random.nextBoolean() ? "+" : "-") + i);
            System.out.println(ret[i]);
        }

        return ret;
    }

}
--- the result is in engineering string:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Body>
      <ns:getArrayBigDecimalResponse xmlns:ns="http://api.service.tis.ymsgroup.com">
         <ns:return xsi:type="ax2135:DummyOutput" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ax2135="http://api.service.tis.ymsgroup.com/xsd">
            <ax2135:bd>1.23E-8</ax2135:bd>
            <ax2135:bdArray>1</ax2135:bdArray>
            <ax2135:bdArray>1E+1</ax2135:bdArray>
            <ax2135:bdArray>1E+2</ax2135:bdArray>
            <ax2135:bdArray>1E+3</ax2135:bdArray>
            <ax2135:bdArray>1E+4</ax2135:bdArray>
            <ax2135:bdArray>0.00001</ax2135:bdArray>
            <ax2135:bdArray>0.000001</ax2135:bdArray>
            <ax2135:bdArray>1E-7</ax2135:bdArray>
            <ax2135:bdArray>1E-8</ax2135:bdArray>
            <ax2135:bdArray>1E-9</ax2135:bdArray>
         </ns:return>
      </ns:getArrayBigDecimalResponse>
   </soapenv:Body>
</soapenv:Envelope>
--- but expecting (to be compatible with soap not java receiver - in out case .NET):
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Body>
      <ns:getArrayBigDecimalResponse xmlns:ns="http://api.service.tis.ymsgroup.com">
         <ns:return xsi:type="ax2135:DummyOutput" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ax2135="http://api.service.tis.ymsgroup.com/xsd">
            <ax2135:bd>0.0000000123</ax2135:bd>
            <ax2135:bdArray>1</ax2135:bdArray>
            <ax2135:bdArray>10</ax2135:bdArray>
            <ax2135:bdArray>100</ax2135:bdArray>
            <ax2135:bdArray>1000</ax2135:bdArray>
            <ax2135:bdArray>10000</ax2135:bdArray>
            <ax2135:bdArray>0.00001</ax2135:bdArray>
            <ax2135:bdArray>0.000001</ax2135:bdArray>
            <ax2135:bdArray>0.0000001</ax2135:bdArray>
            <ax2135:bdArray>0.00000001</ax2135:bdArray>
            <ax2135:bdArray>0.000000001</ax2135:bdArray>
         </ns:return>
      </ns:getArrayBigDecimalResponse>
   </soapenv:Body>
</soapenv:Envelope> 



    
> java BigDecimal defined as type="xs:decimal" encodes in xml as engineering string 
> ----------------------------------------------------------------------------------
>
>                 Key: AXIS2-5392
>                 URL: https://issues.apache.org/jira/browse/AXIS2-5392
>             Project: Axis2
>          Issue Type: Bug
>          Components: adb
>    Affects Versions: 1.6.2
>         Environment: JDK 1.5.0
>            Reporter: Tibor Mucha
>         Attachments: AXIS2-5392.patch.txt
>
>
> The bigdecimal is encoded in soap xml as engineering string.
> Case:
> --- java WS object :
> public class DummyOutput {
>     BigDecimal bd;
>     public BigDecimal getBd() {
>         return bd;
>     }
>     public void setBd(BigDecimal bd) {
>         this.bd = bd;
>     }
> }
> ---  generated wsdl: 
>         <xs:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://api.service.tis.ymsgroup.com/xsd">
>             <xs:complexType name="DummyOutput">
>                 <xs:sequence>
>                     <xs:element minOccurs="0" name="bd" nillable="true" type="xs:decimal"/>
>                     <xs:element maxOccurs="unbounded" minOccurs="0" name="bdArray" nillable="true" type="xs:decimal"/>
>                 </xs:sequence>
>             </xs:complexType>
>         </xs:schema>
> --- Test case:
> public class DummyServices implements IDummyServices {
>     public DummyOutput getArrayBigDecimal() {
>         BigDecimal[] generateBigDecimalArray = generateBigDecimalArray();
>         DummyOutput ret = new DummyOutput();
>         ret.setBdArray(generateBigDecimalArray);
>         ret.setBd(new BigDecimal("123E-10"));
>         return ret;
>     }
>     private BigDecimal[] generateBigDecimalArray() {
>         Random random = new Random();
>         BigDecimal[] ret = new BigDecimal[10];
>         for (int i = 0; i < ret.length; i++) {
>             String sign = null;
>             if (i < 5)
>                 sign = "+";
>             else
>                 sign = "-";
>             ret[i] = new BigDecimal("1E" + sign + i);
>             System.out.println(ret[i]);
>         }
>         return ret;
>     }
> }
> --- the result is in engineering string:
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>    <soapenv:Body>
>       <ns:getArrayBigDecimalResponse xmlns:ns="http://api.service.tis.ymsgroup.com">
>          <ns:return xsi:type="ax2135:DummyOutput" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ax2135="http://api.service.tis.ymsgroup.com/xsd">
>             <ax2135:bd>1.23E-8</ax2135:bd>
>             <ax2135:bdArray>1</ax2135:bdArray>
>             <ax2135:bdArray>1E+1</ax2135:bdArray>
>             <ax2135:bdArray>1E+2</ax2135:bdArray>
>             <ax2135:bdArray>1E+3</ax2135:bdArray>
>             <ax2135:bdArray>1E+4</ax2135:bdArray>
>             <ax2135:bdArray>0.00001</ax2135:bdArray>
>             <ax2135:bdArray>0.000001</ax2135:bdArray>
>             <ax2135:bdArray>1E-7</ax2135:bdArray>
>             <ax2135:bdArray>1E-8</ax2135:bdArray>
>             <ax2135:bdArray>1E-9</ax2135:bdArray>
>          </ns:return>
>       </ns:getArrayBigDecimalResponse>
>    </soapenv:Body>
> </soapenv:Envelope>
> --- but expecting (to be compatible with soap not java receiver - in out case .NET):
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>    <soapenv:Body>
>       <ns:getArrayBigDecimalResponse xmlns:ns="http://api.service.tis.ymsgroup.com">
>          <ns:return xsi:type="ax2135:DummyOutput" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ax2135="http://api.service.tis.ymsgroup.com/xsd">
>             <ax2135:bd>0.0000000123</ax2135:bd>
>             <ax2135:bdArray>1</ax2135:bdArray>
>             <ax2135:bdArray>10</ax2135:bdArray>
>             <ax2135:bdArray>100</ax2135:bdArray>
>             <ax2135:bdArray>1000</ax2135:bdArray>
>             <ax2135:bdArray>10000</ax2135:bdArray>
>             <ax2135:bdArray>0.00001</ax2135:bdArray>
>             <ax2135:bdArray>0.000001</ax2135:bdArray>
>             <ax2135:bdArray>0.0000001</ax2135:bdArray>
>             <ax2135:bdArray>0.00000001</ax2135:bdArray>
>             <ax2135:bdArray>0.000000001</ax2135:bdArray>
>          </ns:return>
>       </ns:getArrayBigDecimalResponse>
>    </soapenv:Body>
> </soapenv:Envelope> 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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


[jira] [Commented] (AXIS2-5392) java BigDecimal defined as type="xs:decimal" encodes in xml as engineering string

Posted by "Tibor Mucha (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2-5392?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13437778#comment-13437778 ] 

Tibor Mucha commented on AXIS2-5392:
------------------------------------

this task is simular to task AXIS2-4036 /but task AXIS2-4036 was not released/
                
> java BigDecimal defined as type="xs:decimal" encodes in xml as engineering string 
> ----------------------------------------------------------------------------------
>
>                 Key: AXIS2-5392
>                 URL: https://issues.apache.org/jira/browse/AXIS2-5392
>             Project: Axis2
>          Issue Type: Bug
>          Components: adb
>    Affects Versions: 1.6.2
>            Reporter: Tibor Mucha
>         Attachments: AXIS2-5392.patch.txt
>
>
> The bigdecimal is encoded in soap xml as engineering string.
> Case:
> --- java WS object :
> public class DummyOutput {
>     BigDecimal bd;
>     public BigDecimal getBd() {
>         return bd;
>     }
>     public void setBd(BigDecimal bd) {
>         this.bd = bd;
>     }
> }
> ---  generated wsdl: 
>         <xs:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://api.service.tis.ymsgroup.com/xsd">
>             <xs:complexType name="DummyOutput">
>                 <xs:sequence>
>                     <xs:element minOccurs="0" name="bd" nillable="true" type="xs:decimal"/>
>                     <xs:element maxOccurs="unbounded" minOccurs="0" name="bdArray" nillable="true" type="xs:decimal"/>
>                 </xs:sequence>
>             </xs:complexType>
>         </xs:schema>
> --- Test case:
> public class DummyServices implements IDummyServices {
>     public DummyOutput getArrayBigDecimal() {
>         BigDecimal[] generateBigDecimalArray = generateBigDecimalArray();
>         DummyOutput ret = new DummyOutput();
>         ret.setBdArray(generateBigDecimalArray);
>         ret.setBd(new BigDecimal("123E-10"));
>         return ret;
>     }
>     private BigDecimal[] generateBigDecimalArray() {
>         Random random = new Random();
>         BigDecimal[] ret = new BigDecimal[10];
>         for (int i = 0; i < ret.length; i++) {
>             ret[i] = new BigDecimal("1E" + (random.nextBoolean() ? "+" : "-") + i);
>             System.out.println(ret[i]);
>         }
>         return ret;
>     }
> }
> --- the result is in engineering string:
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>    <soapenv:Body>
>       <ns:getArrayBigDecimalResponse xmlns:ns="http://api.service.tis.ymsgroup.com">
>          <ns:return xsi:type="ax2135:DummyOutput" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ax2135="http://api.service.tis.ymsgroup.com/xsd">
>             <ax2135:bd>1.23E-8</ax2135:bd>
>             <ax2135:bdArray>1</ax2135:bdArray>
>             <ax2135:bdArray>1E+1</ax2135:bdArray>
>             <ax2135:bdArray>1E+2</ax2135:bdArray>
>             <ax2135:bdArray>1E+3</ax2135:bdArray>
>             <ax2135:bdArray>1E+4</ax2135:bdArray>
>             <ax2135:bdArray>0.00001</ax2135:bdArray>
>             <ax2135:bdArray>0.000001</ax2135:bdArray>
>             <ax2135:bdArray>1E-7</ax2135:bdArray>
>             <ax2135:bdArray>1E-8</ax2135:bdArray>
>             <ax2135:bdArray>1E-9</ax2135:bdArray>
>          </ns:return>
>       </ns:getArrayBigDecimalResponse>
>    </soapenv:Body>
> </soapenv:Envelope>
> --- but expecting (to be compatible with soap not java receiver - in out case .NET):
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>    <soapenv:Body>
>       <ns:getArrayBigDecimalResponse xmlns:ns="http://api.service.tis.ymsgroup.com">
>          <ns:return xsi:type="ax2135:DummyOutput" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ax2135="http://api.service.tis.ymsgroup.com/xsd">
>             <ax2135:bd>0.0000000123</ax2135:bd>
>             <ax2135:bdArray>1</ax2135:bdArray>
>             <ax2135:bdArray>10</ax2135:bdArray>
>             <ax2135:bdArray>100</ax2135:bdArray>
>             <ax2135:bdArray>1000</ax2135:bdArray>
>             <ax2135:bdArray>10000</ax2135:bdArray>
>             <ax2135:bdArray>0.00001</ax2135:bdArray>
>             <ax2135:bdArray>0.000001</ax2135:bdArray>
>             <ax2135:bdArray>0.0000001</ax2135:bdArray>
>             <ax2135:bdArray>0.00000001</ax2135:bdArray>
>             <ax2135:bdArray>0.000000001</ax2135:bdArray>
>          </ns:return>
>       </ns:getArrayBigDecimalResponse>
>    </soapenv:Body>
> </soapenv:Envelope> 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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


[jira] [Updated] (AXIS2-5392) java BigDecimal defined as type="xs:decimal" encodes in xml as engineering string

Posted by "Tibor Mucha (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2-5392?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Tibor Mucha updated AXIS2-5392:
-------------------------------

    Environment: JDK 1.5.0
    
> java BigDecimal defined as type="xs:decimal" encodes in xml as engineering string 
> ----------------------------------------------------------------------------------
>
>                 Key: AXIS2-5392
>                 URL: https://issues.apache.org/jira/browse/AXIS2-5392
>             Project: Axis2
>          Issue Type: Bug
>          Components: adb
>    Affects Versions: 1.6.2
>         Environment: JDK 1.5.0
>            Reporter: Tibor Mucha
>         Attachments: AXIS2-5392.patch.txt
>
>
> The bigdecimal is encoded in soap xml as engineering string.
> Case:
> --- java WS object :
> public class DummyOutput {
>     BigDecimal bd;
>     public BigDecimal getBd() {
>         return bd;
>     }
>     public void setBd(BigDecimal bd) {
>         this.bd = bd;
>     }
> }
> ---  generated wsdl: 
>         <xs:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://api.service.tis.ymsgroup.com/xsd">
>             <xs:complexType name="DummyOutput">
>                 <xs:sequence>
>                     <xs:element minOccurs="0" name="bd" nillable="true" type="xs:decimal"/>
>                     <xs:element maxOccurs="unbounded" minOccurs="0" name="bdArray" nillable="true" type="xs:decimal"/>
>                 </xs:sequence>
>             </xs:complexType>
>         </xs:schema>
> --- Test case:
> public class DummyServices implements IDummyServices {
>     public DummyOutput getArrayBigDecimal() {
>         BigDecimal[] generateBigDecimalArray = generateBigDecimalArray();
>         DummyOutput ret = new DummyOutput();
>         ret.setBdArray(generateBigDecimalArray);
>         ret.setBd(new BigDecimal("123E-10"));
>         return ret;
>     }
>     private BigDecimal[] generateBigDecimalArray() {
>         Random random = new Random();
>         BigDecimal[] ret = new BigDecimal[10];
>         for (int i = 0; i < ret.length; i++) {
>             ret[i] = new BigDecimal("1E" + (random.nextBoolean() ? "+" : "-") + i);
>             System.out.println(ret[i]);
>         }
>         return ret;
>     }
> }
> --- the result is in engineering string:
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>    <soapenv:Body>
>       <ns:getArrayBigDecimalResponse xmlns:ns="http://api.service.tis.ymsgroup.com">
>          <ns:return xsi:type="ax2135:DummyOutput" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ax2135="http://api.service.tis.ymsgroup.com/xsd">
>             <ax2135:bd>1.23E-8</ax2135:bd>
>             <ax2135:bdArray>1</ax2135:bdArray>
>             <ax2135:bdArray>1E+1</ax2135:bdArray>
>             <ax2135:bdArray>1E+2</ax2135:bdArray>
>             <ax2135:bdArray>1E+3</ax2135:bdArray>
>             <ax2135:bdArray>1E+4</ax2135:bdArray>
>             <ax2135:bdArray>0.00001</ax2135:bdArray>
>             <ax2135:bdArray>0.000001</ax2135:bdArray>
>             <ax2135:bdArray>1E-7</ax2135:bdArray>
>             <ax2135:bdArray>1E-8</ax2135:bdArray>
>             <ax2135:bdArray>1E-9</ax2135:bdArray>
>          </ns:return>
>       </ns:getArrayBigDecimalResponse>
>    </soapenv:Body>
> </soapenv:Envelope>
> --- but expecting (to be compatible with soap not java receiver - in out case .NET):
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>    <soapenv:Body>
>       <ns:getArrayBigDecimalResponse xmlns:ns="http://api.service.tis.ymsgroup.com">
>          <ns:return xsi:type="ax2135:DummyOutput" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ax2135="http://api.service.tis.ymsgroup.com/xsd">
>             <ax2135:bd>0.0000000123</ax2135:bd>
>             <ax2135:bdArray>1</ax2135:bdArray>
>             <ax2135:bdArray>10</ax2135:bdArray>
>             <ax2135:bdArray>100</ax2135:bdArray>
>             <ax2135:bdArray>1000</ax2135:bdArray>
>             <ax2135:bdArray>10000</ax2135:bdArray>
>             <ax2135:bdArray>0.00001</ax2135:bdArray>
>             <ax2135:bdArray>0.000001</ax2135:bdArray>
>             <ax2135:bdArray>0.0000001</ax2135:bdArray>
>             <ax2135:bdArray>0.00000001</ax2135:bdArray>
>             <ax2135:bdArray>0.000000001</ax2135:bdArray>
>          </ns:return>
>       </ns:getArrayBigDecimalResponse>
>    </soapenv:Body>
> </soapenv:Envelope> 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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


[jira] [Updated] (AXIS2-5392) java BigDecimal defined as type="xs:decimal" encodes in xml as engineering string

Posted by "Tibor Mucha (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2-5392?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Tibor Mucha updated AXIS2-5392:
-------------------------------

    Attachment: AXIS2-5392.patch.txt

patch file of my fix solution
                
> java BigDecimal defined as type="xs:decimal" encodes in xml as engineering string 
> ----------------------------------------------------------------------------------
>
>                 Key: AXIS2-5392
>                 URL: https://issues.apache.org/jira/browse/AXIS2-5392
>             Project: Axis2
>          Issue Type: Bug
>          Components: adb
>    Affects Versions: 1.6.2
>            Reporter: Tibor Mucha
>         Attachments: AXIS2-5392.patch.txt
>
>
> The bigdecimal is encoded in soap xml as engineering string.
> Case:
> --- java WS object :
> public class DummyOutput {
>     BigDecimal bd;
>     public BigDecimal getBd() {
>         return bd;
>     }
>     public void setBd(BigDecimal bd) {
>         this.bd = bd;
>     }
> }
> ---  generated wsdl: 
>         <xs:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://api.service.tis.ymsgroup.com/xsd">
>             <xs:complexType name="DummyOutput">
>                 <xs:sequence>
>                     <xs:element minOccurs="0" name="bd" nillable="true" type="xs:decimal"/>
>                     <xs:element maxOccurs="unbounded" minOccurs="0" name="bdArray" nillable="true" type="xs:decimal"/>
>                 </xs:sequence>
>             </xs:complexType>
>         </xs:schema>
> --- Test case:
> public class DummyServices implements IDummyServices {
>     public DummyOutput getArrayBigDecimal() {
>         BigDecimal[] generateBigDecimalArray = generateBigDecimalArray();
>         DummyOutput ret = new DummyOutput();
>         ret.setBdArray(generateBigDecimalArray);
>         ret.setBd(new BigDecimal("123E-10"));
>         return ret;
>     }
>     private BigDecimal[] generateBigDecimalArray() {
>         Random random = new Random();
>         BigDecimal[] ret = new BigDecimal[10];
>         for (int i = 0; i < ret.length; i++) {
>             ret[i] = new BigDecimal("1E" + (random.nextBoolean() ? "+" : "-") + i);
>             System.out.println(ret[i]);
>         }
>         return ret;
>     }
> }
> --- the result is in engineering string:
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>    <soapenv:Body>
>       <ns:getArrayBigDecimalResponse xmlns:ns="http://api.service.tis.ymsgroup.com">
>          <ns:return xsi:type="ax2135:DummyOutput" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ax2135="http://api.service.tis.ymsgroup.com/xsd">
>             <ax2135:bd>1.23E-8</ax2135:bd>
>             <ax2135:bdArray>1</ax2135:bdArray>
>             <ax2135:bdArray>1E+1</ax2135:bdArray>
>             <ax2135:bdArray>1E+2</ax2135:bdArray>
>             <ax2135:bdArray>1E+3</ax2135:bdArray>
>             <ax2135:bdArray>1E+4</ax2135:bdArray>
>             <ax2135:bdArray>0.00001</ax2135:bdArray>
>             <ax2135:bdArray>0.000001</ax2135:bdArray>
>             <ax2135:bdArray>1E-7</ax2135:bdArray>
>             <ax2135:bdArray>1E-8</ax2135:bdArray>
>             <ax2135:bdArray>1E-9</ax2135:bdArray>
>          </ns:return>
>       </ns:getArrayBigDecimalResponse>
>    </soapenv:Body>
> </soapenv:Envelope>
> --- but expecting (to be compatible with soap not java receiver - in out case .NET):
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>    <soapenv:Body>
>       <ns:getArrayBigDecimalResponse xmlns:ns="http://api.service.tis.ymsgroup.com">
>          <ns:return xsi:type="ax2135:DummyOutput" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ax2135="http://api.service.tis.ymsgroup.com/xsd">
>             <ax2135:bd>0.0000000123</ax2135:bd>
>             <ax2135:bdArray>1</ax2135:bdArray>
>             <ax2135:bdArray>10</ax2135:bdArray>
>             <ax2135:bdArray>100</ax2135:bdArray>
>             <ax2135:bdArray>1000</ax2135:bdArray>
>             <ax2135:bdArray>10000</ax2135:bdArray>
>             <ax2135:bdArray>0.00001</ax2135:bdArray>
>             <ax2135:bdArray>0.000001</ax2135:bdArray>
>             <ax2135:bdArray>0.0000001</ax2135:bdArray>
>             <ax2135:bdArray>0.00000001</ax2135:bdArray>
>             <ax2135:bdArray>0.000000001</ax2135:bdArray>
>          </ns:return>
>       </ns:getArrayBigDecimalResponse>
>    </soapenv:Body>
> </soapenv:Envelope> 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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