[jboss-svn-commits] JBoss Common SVN: r2871 - in jbossxb/trunk/src: test/java/org/jboss/test/xml and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Thu Jun 19 10:27:53 EDT 2008
Author: dimitris at jboss.org
Date: 2008-06-19 10:27:53 -0400 (Thu, 19 Jun 2008)
New Revision: 2871
Modified:
jbossxb/trunk/src/main/java/org/jboss/xb/binding/SimpleTypeBindings.java
jbossxb/trunk/src/test/java/org/jboss/test/xml/SoapEncUnitTestCase.java
Log:
JBXB-147, revert Revert JBXB-141 - xsd:double marshalled in exponential form
Modified: jbossxb/trunk/src/main/java/org/jboss/xb/binding/SimpleTypeBindings.java
===================================================================
--- jbossxb/trunk/src/main/java/org/jboss/xb/binding/SimpleTypeBindings.java 2008-06-19 14:24:55 UTC (rev 2870)
+++ jbossxb/trunk/src/main/java/org/jboss/xb/binding/SimpleTypeBindings.java 2008-06-19 14:27:53 UTC (rev 2871)
@@ -201,7 +201,7 @@
public String marshal(Object value)
{
- return marshallDouble((Double)value);
+ return String.valueOf(value);
}
};
@@ -1080,7 +1080,19 @@
}
else if(typeCode == XS_DOUBLE)
{
- result = marshallDouble((Double)value);
+ Double d = (Double)value;
+ if(d.doubleValue() == Double.POSITIVE_INFINITY)
+ {
+ result = "INF";
+ }
+ else if(d.doubleValue() == Double.NEGATIVE_INFINITY)
+ {
+ result = "-INF";
+ }
+ else
+ {
+ result = d.toString();
+ }
}
else if(typeCode == XS_BOOLEAN)
{
@@ -2248,31 +2260,6 @@
return result;
}
- private static String marshallDouble(Double d)
- {
- String result;
- if(d.doubleValue() == Double.POSITIVE_INFINITY)
- {
- result = "INF";
- }
- else if(d.doubleValue() == Double.NEGATIVE_INFINITY)
- {
- result = "-INF";
- }
- else
- {
- DecimalFormat df = new DecimalFormat();
- df.setGroupingUsed(false);
- df.setMinimumFractionDigits(1);
- df.setMaximumFractionDigits(18);
- df.setMinimumIntegerDigits(1);
- df.setMaximumIntegerDigits(18);
-
- result = df.format(d.doubleValue());
- }
- return result;
- }
-
private static char convertDigit(int value)
{
value &= 0x0f;
Modified: jbossxb/trunk/src/test/java/org/jboss/test/xml/SoapEncUnitTestCase.java
===================================================================
--- jbossxb/trunk/src/test/java/org/jboss/test/xml/SoapEncUnitTestCase.java 2008-06-19 14:24:55 UTC (rev 2870)
+++ jbossxb/trunk/src/test/java/org/jboss/test/xml/SoapEncUnitTestCase.java 2008-06-19 14:27:53 UTC (rev 2871)
@@ -29,6 +29,7 @@
import java.math.BigInteger;
import java.net.URL;
import java.util.Calendar;
+import java.util.Date;
import java.util.GregorianCalendar;
import java.util.Arrays;
import java.util.TimeZone;
@@ -92,7 +93,7 @@
"<varShort>-32768</varShort>" +
"<varDecimal>3512359.1456</varDecimal>" +
"<varFloat>1.4E-45</varFloat>" +
- "<varDouble>0.0000000000000001</varDouble>" +
+ "<varDouble>4.9E-324</varDouble>" +
"<varBoolean>false</varBoolean>" +
"<varByte>-128</varByte>" +
"<varQName xmlns=\"\">String2</varQName>" +
@@ -100,7 +101,7 @@
"<varSoapString>String3</varSoapString>" +
"<varSoapBoolean>false</varSoapBoolean>" +
"<varSoapFloat>1.4E-45</varSoapFloat>" +
- "<varSoapDouble>0.0000000000000001</varSoapDouble>" +
+ "<varSoapDouble>4.9E-324</varSoapDouble>" +
"<varSoapDecimal>3512359.1111</varSoapDecimal>" +
"<varSoapInt>-2147483648</varSoapInt>" +
"<varSoapShort>-32768</varSoapShort>" +
@@ -198,7 +199,7 @@
struct.setVarShort((short)Short.MIN_VALUE);
struct.setVarDecimal(new BigDecimal("3512359.1456"));
struct.setVarFloat((float)Float.MIN_VALUE);
- struct.setVarDouble(0.0000000000000001);
+ struct.setVarDouble((double)Double.MIN_VALUE);
struct.setVarBoolean(false);
struct.setVarByte((byte)Byte.MIN_VALUE);
struct.setVarQName(new QName("String2"));
@@ -219,7 +220,7 @@
struct.setVarSoapString("String3");
struct.setVarSoapBoolean(new Boolean(false));
struct.setVarSoapFloat(new Float(Float.MIN_VALUE));
- struct.setVarSoapDouble(new Double(0.0000000000000001));
+ struct.setVarSoapDouble(new Double(Double.MIN_VALUE));
struct.setVarSoapDecimal(new BigDecimal("3512359.1111"));
struct.setVarSoapInt(new Integer(Integer.MIN_VALUE));
struct.setVarSoapShort(new Short(Short.MIN_VALUE));
More information about the jboss-svn-commits
mailing list