Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

BigDecimal serialization in GWT

What is your preferred approach to serializing BigDecimal in GWT?

Are there any clever workarounds, or do you simply use Double or String?

Of all of the GWT pains this is so far the biggest; I'd hate to create two models, one for server and one for GWT, and transform data from one to the other. On the other hand, while I don't care much about using String instead of, say, javax.xml.datatype.Duration, I have to use BigDecimal on the server because of the calculations, which means either two models and conversion, or tons of tiny conversions to BigDecimal for every calculation.

like image 612
Domchi Avatar asked Oct 29 '09 18:10

Domchi


3 Answers

As of GWT 2.1 support for java.math.BigDecimal is supported.
release-notes

like image 64
kroiz Avatar answered Oct 11 '22 11:10

kroiz


Here is a GWT java.math package implementation I've built:

http://code.google.com/p/gwt-java-math/

It is based on Apache Harmony's implementation but has been modified to run efficiently in Java Script using doubles rather than longs.

It includes an almost complete implementation of BigInteger, BigDecimal, MathContext, RoundingMode and Random.

like image 9
Richard Zschech Avatar answered Oct 11 '22 12:10

Richard Zschech


To answer my own question, I just found gwt-math project which adds support for BigDecimal and solves my problem...

Also, here's the official request for BigDecimal support in GWT.

like image 3
Domchi Avatar answered Oct 11 '22 10:10

Domchi