2015-05-06 2 views
1

Как создать ObjectNode из строки с помощью Jackson?Создайте ObjectNode из строки JSON

Я пробовал:

ObjectNode json = new ObjectMapper().readValue("{}", ObjectNode.class); 

Но получить

Исключения в потоке "основные" com.fasterxml.jackson.databind.JsonMappingException: Противоречивые определения инкубационных для "типа" Свойства: jdk.nashorn .internal.ir.Symbol # SetType (1 PARAMS) против jdk.nashorn.internal.ir.Symbol # SetType (1) Титулы

Я хочу, чтобы иметь возможность прочитать строку JSON добавить/модусы fy некоторые значения.

ответ

1

Во-первых, сообщение об ошибке предполагает, что вы связываете, чтобы построить jdk.nashorn.internal.ir.ObjectNode, тогда как я предполагаю, что вы на самом деле намеревались построить com.fasterxml.jackson.databind.node.ObjectNode (для Jackson 2.x). Проверьте импорт.

Однако, если все, что вы хотите сделать, это создать пустой ObjectNode, а затем просто использовать

JsonNodeFactory.instance.objectNode() 

Если по какой-то причине вы действительно хотите сделать это путем анализа пустой объект JSON, а затем использовать этот :

ObjectNode json = (ObjectNode) new ObjectMapper().readTree("{}"); 

Но это просто неприятно.

+0

Спасибо, да я просто заметил, что импорт был неправ ... * вздох * – Petah

3

Вы используете неправильный импорт.

Это должно быть

com.fasterxml.jackson.databind.node.ObjectNode 

Не:

jdk.nashorn.internal.ir.ObjectNode 
Смежные вопросы