Как разрешить циклическую зависимость JSON:
Класс:
@JsonIdentityInfo(generator = ObjectIdGenerators.PropertyGenerator.class, property = "uniqueID")
final public class TestNode {
private final String uniqueID;
private final TestNode testNode; //Circular dependency
}
main:
private final ObjectMapper objectMapper = new ObjectMapper();
objectMapper.writeValue(JsonOutputFile, TestNode.class); // Write object to file
* Если я использую JsonIdentityInfo, то при записи объектав файл я получаю результаты { "uniqueID": "1", "testNode": "1"}
* Если я не использую JsonIdentityInfo
, тогда я получаю правильный JSON, т. е. testNode правильный, но я получаю следующую ошибку в этом:
Exception in thread "main" com.fasterxml.jackson.databind.JsonMappingException: Infinite recursion (StackOverflowError) (through reference chain: ["testNode"] ...
PS: я использую следующую версию: Джексон: 3-SNAPSHOT, Java: 8, Spring: 4.3