On Tuesday, June 11, 2013 10:56:13 AM UTC+2, stuckagain wrote: > > Hi, > > I am working on a fix for this issue: > https://code.google.com/p/google-web-toolkit/issues/detail?id=8083 > > I am avoiding converting from string to the internal format of BigInteger > because it has a big performance impact on IE8 when sending it over RPC. It > performs much better in IE9 and other browsers, but still I want to > optimize this since this is having a major impact in an application I am > working on (And I saw some other people in the banking industry having > similar issues with BigDecimal). > > In many cases this data is never modified in the client, so I am delaying > the actual parsing of the String to the internal format of BigInteger. > > Is it feasible to have custom field serializers depending on running in > the client or server ? > > The question I am asking is because I don't want to break the > BigInteger(String) constructor that will throw exceptions when you feed it > a non parseable string. so my solution would be to use a static method or > custom constructor for BigInteger when deserializing on the client. But > this method is not available in the real java.math.BigInteger class. > > So is it possible to have different client and server > serializers/deserializer code for RPC ? >
Yes, and there are many ways of doing so. You can use super-sources to provide two implementations of the same class (with the added benefit that the super-source'd version can be @GwtScriptOnly so it's not used in DevMode where you'll also use a different implementation of BigDecimal and BigInteger) You can have a ServerCustomFieldSerializer that's used only on server-side. Or, but it's a hack, you can extend CustomFieldSerializer and have different implementations for the instance methods (used on the server) and the static methods (used on the client). Have a look at what exists already, I'm sure you'll find examples of the above first 2 options to guide you into choosing the most appropriate one (my gut feeling would be super-source). -- http://groups.google.com/group/Google-Web-Toolkit-Contributors --- You received this message because you are subscribed to the Google Groups "GWT Contributors" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.
