Hello,

I experience the following - from my point of view unexplainable -
behaviour when using the GWT NumberFormat
(com.google.gwt.i18n.client.NumberFormat). I am using GWT 2.0.3,
Eclipse Ganymed and IE8/FF3.6.

Within my client package I have a static helper class which contains
the following method:

<code>

public class Utils {
  ...
  public static final NumberFormat DOUBLE2_FORMAT =
NumberFormat.getFormat("##########.00");
  ...

  public String formatDouble2(double d) {
    return DOUBLE2_FORMAT.format(d);
  }

  ...
}

</code>

Using the code above I get a javascript error when using the
formatDouble2 method. Compiling the GWT code in a "detailed" way and
the javascript error message is something like
com...i18n.client.positivePrefix is null or not an object. The GUI
gets stuck and the application is no longer usable.

So how did I solve it?
During debug instrumentalization I found two ways. Unfortunately I can
not explain either of them - so I was hoping someone can explain me
why it works! ;)

Adding a Window.alert(...) into the formatDouble2 and everything works
fine. Why!?


<code>

public class Utils {
  ...
  public static final NumberFormat DOUBLE2_FORMAT =
NumberFormat.getFormat("##########.00");
  ...

  public String formatDouble2(double d) {
    Window.alert("Utils: inside formatDouble2 d=" +d);
    return DOUBLE2_FORMAT.format(d);
  }

  ...
}

</code>

The solution I am currently using is to only use pattern itself as a
static member and create the NumerFormat within the method. This works
too.



<code>

public class Utils {
  ...
  public static final String DOUBLE2_FORMAT_PATTERN = "##########.00";
  ...

  public String formatDouble2(double d) {
    return NumberFormat.getFormat(DOUBLE2_FORMAT_PATTERN).format(d);
  }

  ...
}

</code>

BTW, changing the public static to private static did not work either.

Thanks in Advance for your help!
Stefan

-- 
You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.

Reply via email to