2012-04-30 35 views
2

我第一次尝试使用play.4.2.4和morphia 1.2.6a将json数据发布到我的控制器。这总是以播放内部的空指针异常结束,因此我转向播放1.2.3,并且我进一步了一点,但仍然感到困惑。现在通话成功,但数据似乎永远不会到达。如何将Json发布到Play框架Morphia控制器

路线



    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 

我读过的例子显示这是公正的工作,但我一直在这个搞乱很长一段时间,并没有弄清楚。这是如何工作的?

回答

1
  1. 播放不能绑定JSON来反对照片直接
  2. 您的文章数据已经没有任何参数命名为“项目”

你应该改变你的职位代码:

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

和控制器代码应该是:

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

我刚刚尝试过,字符串值为空。我一定在做错事,但我看不到它。 – darren

相关问题