2012-04-30 4 views
2

J'ai d'abord essayé d'utiliser le jeu 1.2.4 avec la morphine 1.2.6a pour envoyer des données json à mon contrôleur. Cela s'est toujours terminé avec une exception de pointeur nulle quelque part dans le jeu, donc je suis passé à jouer 1.2.3 et je suis allé un peu plus loin, mais je suis toujours confus. L'appel postal réussit maintenant mais les données ne semblent jamais arriver.Comment POSTER JSON à un contrôleur Morphia Play Cadre

itinéraire



    POST /mytest mycontroller.myposttest 

mycontroller.java



    public static void myposttest(SampleObject item){ 
     Gson gs = new GsonBuilder().create(); 
     System.out.printf(gs.toJson(item)); 
     //NOTE: item is empty every time 
    } 

mytest.java



    String jsonText = "{name=\"foo\"}"; 
    Response response = POST("/mytest/","application/json",jsonText); 
    //NOTE: the post call succeeds but the jsonText data is not found on the other side 

Les exemples que j'ai lu ce spectacle comme un simple travail, mais je suis de déconner avec cette depuis très longtemps et ne l'ont pas compris. Comment cela est-il destiné à fonctionner?

Répondre

1
  1. Jouer ne peut lier JSON objet direclty
  2. Vos données post n'a aucun paramètre nommé "élément"

Vous devez changer votre code postal:

Response response = POST("/mytest/","application/json",{item: jsonText}); 

Et votre contrôleur le code doit être:

public static void myposttest(String item){ 
    Gson gs = new GsonBuilder().create(); 
    SampleObject obj = gs.fromJson(item); 
    obj.save(); 
    ok(); 
} 
+0

J'ai juste essayé et la valeur de la chaîne était vide. Je dois faire quelque chose de mal, mais je ne peux pas le voir. – darren

Questions connexes