Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Jackson Json未正确读取我的Json_Java_Json_Playframework_Playframework 2.2 - Fatal编程技术网

Java Jackson Json未正确读取我的Json

Java Jackson Json未正确读取我的Json,java,json,playframework,playframework-2.2,Java,Json,Playframework,Playframework 2.2,我使用POST方法将一些json作为byte[]发送到我的playframework站点 下面是一个json示例 { "productFamily": "abcd", "currentVersion": "12d11e3", "serialNumber": "asdfasfdasdf", "modelNumber": "sdfsfdasf", "productCode": "safasdfsdfasdfsdfsd" } 我正在尝试使用以下代码将其加载到JsonNo

我使用
POST
方法将一些json作为
byte[]
发送到我的playframework站点

下面是一个json示例

{
   "productFamily": "abcd",
   "currentVersion": "12d11e3",
   "serialNumber": "asdfasfdasdf",
   "modelNumber": "sdfsfdasf",
   "productCode": "safasdfsdfasdfsdfsd"
}
我正在尝试使用以下代码将其加载到
JsonNode

public static Result submit() {
    JsonNode recievedJson = request().body().asJson();
Eclipse调试说,
receivedjson
has

_value = "{\r\n "productFamily": "abcd",\r\n "currentVersion": "12d11e3",\r\n "serialNumber": "asdfasfdasdf",\r\n "modelNumber": "sdfsfdasf",\r\n "productCode": "safasdfsdfasdfsdfsd"}"
为什么我的json字符串没有从请求主体解析到
JsonNode
obj中


当我尝试在
receivedjson
上调用JsonNode方法时,我没有得到预期的结果。例如
receivedjson.get(0)
返回
null
receivedjson.fields()
返回
null

对象项=receivedjson.get(“productFamily”); Eclipse调试显示item=null

对象项=receivedjson.fields();
返回一个空迭代器

您正试图使用
get(int)
方法访问数组节点,而json是一个对象。尝试改用
get(String)
方法,其中
String
是您的键名。

什么?Eclipse调试显示了对象的表示形式。有什么问题吗?当我尝试在ReceivedJSON上调用JsonNode方法时,我没有得到预期的结果。例如,receivedjson.get(0)返回null,receivedjson.fields()返回null
JsonNode#get(int)
?请告诉我们在您的情况下,
JsonNode#fields()
返回
null
。提供一个可重复的示例。例如get()应返回数组节点的项,或者如果使用字符串,则应获取字段的值。对,您没有数组节点,而是有对象节点。