instead of

Long id = new Long(idStr);

try

Long id = Long.parseLong(idStr);



On Sun, Aug 2, 2015 at 3:37 AM, Alberto Mancini <[email protected]>
wrote:

> Hello,
> in your example you are returning  id (a numeric value) as a string ant
> this is the origin of the unexpected behavior.
> Indeed this works
>
> public final native String  _getIdString()/*-{ return ''+this.id; }-*/;
>
> as well as returning a java numeric value:
>
> public final native int  _getIdInt()/*-{ return this.id; }-*/;
> (see
> http://www.gwtproject.org/doc/latest/DevGuideCodingBasicsJSNI.html#passing-javascript
> for details)
>
> Anyway, in general, is probably not a good idea to use Long for a numeric
> 'native'  value
> because in js you cannot represent a long number (see f.e.
> http://stackoverflow.com/questions/17320706/javascript-long-integer).
>
> Hope it helps.
>
>       Alberto.
>
>
>
> On Sat, Aug 1, 2015 at 3:38 PM Nikolay Prokofiev <[email protected]>
> wrote:
>
>> Hi.
>>
>> I'm trying to convert js native number to GWT Long and send it over
>> gwt-rpc. But I got very weird results..
>>
>> public class gwtbugEntryPoint implements EntryPoint {
>>   @Override
>>   public void onModuleLoad() {
>>     String data = "{\"type\":\"upd\", \"id\":123}";
>>     ServerEvent serverEvent = JsonUtils.<ServerEvent>safeEval(data);
>>     RootPanel.get().add(new HTML("GWT id="+serverEvent.getId()));
>>   }
>> }class ServerEvent extends JavaScriptObject {
>>     protected ServerEvent() {
>>     }
>> public final native String getType()/*-{ return this.type; }-*/;
>> public final Long getId(){
>>     String idStr = _getId();
>>     GWT.log("idSTr:" + idStr);
>>     Long id = new Long(idStr);
>>     GWT.log("id:"+id);
>>     return id;}
>> public final native String  _getId()/*-{ return this.id; }-*/;}
>>
>> console output:
>>
>> idSTr:123
>>
>> id:0
>>
>> Can anyone explain me, how that could happen?
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Google Web Toolkit" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> To post to this group, send email to [email protected].
>> Visit this group at http://groups.google.com/group/google-web-toolkit.
>> For more options, visit https://groups.google.com/d/optout.
>>
> --
> You received this message because you are subscribed to the Google Groups
> "Google Web Toolkit" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/google-web-toolkit.
> For more options, visit https://groups.google.com/d/optout.
>



-- 
Nagin Kothari
Co-founder,
Zilicus Solutions
www.zilicus.com

-- 
You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/d/optout.

Reply via email to