Ho alcuni errori dai tipi Data e Long e Overlay. Entrambi gli usi lunghi che non sono consentiti in GWT JSNI. La data viene serializzata più a lungo via getTime().GWT OverlayTypes Date and Long
Quello che sto facendo in questo momento (e sembra funzionare) è:
da Java (Utilizzo di Jackson per serializzare a JSON)
Long myLong = new Long(50)
Date myDate = new Date();
public String getMyLong()
{
return String.valueOf(myLong);
}
public String getDate() {
return String.valueOf(date.getTime());
}
DA GWT (Uso OverlayTypes)
/*Returning a Long*/
private final native String _getEscaletaId() /*-{ return this.escaletaId; }-*/;
public final Long getEscaletaId() {return new Long(_getEscaletaId());}
/*Returning a Date*/
private final native String _getDate() /*-{ return this.date; }-*/;
public final Date getDate() {return new Date(Long.valueOf(_getDate()));}
È questo l'approccio migliore per gestire tipi lunghi e altri tipi speciali?
Grazie.
Grazie! Non sapevo di JsDate. Cosa sta facendo GWT con l'emulazione lunga? Posso gestire un numero elevato con l'emulazione lunga come sto facendo? –
GWT emula long come una coppia di numeri, il che significa che funzioneranno, ma saranno anche inefficienti. Di conseguenza, usa intes o doubles quando possibile. Maggiori informazioni qui: http://code.google.com/webtoolkit/doc/latest/DevGuideCodingBasicsCompatibility.html –
E in aggiunta: http://code.google.com/webtoolkit/doc/latest/DevGuideCodingBasicsJSNI.html#important per alcuni soluzioni alternative suggerite. –