Question

Je ne parviens pas à convertir un objet de JSON en un objet JavaScript Overlay, et vice-versa. J'ai les éléments suivants dans la classe maintenant:

public class Aff extends JavaScriptObject {
  protected Aff() {};
  public static native Aff fromJSONString(String jsonString) /*-{
     return eval('(' + jsonString + ')');
  }-*/;
  public final native String toJSON() /*-{
    return this.toString();
  }-*/;
  // followed by get/seters and a bunch of TODO.
}

Je peux créer et travailler avec des objets, mais obj.toJSON () renvoie [objet Object] . Il semble impossible de trouver une solution à ce problème sans reconvertir manuellement le fichier en JSON.

Était-ce utile?

La solution

  

this.toString ();

ne produit pas réellement de code JSON. Il imprime la représentation sous forme de chaîne de l'objet. Vous aurez besoin d'un code personnalisé pour écrire le JSON ou, mieux, utiliser une bibliothèque.

Deux manières d’utiliser les bibliothèques - utilisez les bibliothèques JSON intégrées à gwt. Pas aussi bien, mais vous n'avez pas besoin d'écrire du code jsni. Ou, ajoutez une ressource de script à votre module xml pour une bibliothèque telle qu'une bibliothèque javascript json ici , et utilisez que dans jsni. Ou trouvez une autre bibliothèque, il y en a littéralement des centaines.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top