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()返回nullJsonNode#get(int)
?请告诉我们在您的情况下,JsonNode#fields()
返回null
。提供一个可重复的示例。例如get()应返回数组节点的项,或者如果使用字符串,则应获取字段的值。对,您没有数组节点,而是有对象节点。