JsonMappingException (era java.lang.NullPointerException)

Eu tenho procurado por isso por um tempo, mas não encontrei nenhuma resposta, então ou eu estou perdendo algo tão óbvio que ninguém escreveu nada sobre isso, ou eu acertei um problema incomum. Eu espero que seja o primeiro ...

Eu estou trabalhando com uma biblioteca de terceiros (IDMLlib) para extrair informações de um documento do Adobe InDesign armazenado no formato .idml. Os conteúdos são facilmente lidos e armazenados em um objeto do tipo "Idml", que contém tudo o que preciso. Agora, quero enviar este objeto para um cliente da Web (navegador) usandoJackson JSON.

Eu encontrei 2 problemas:

1) A árvore de objetos está cheia de referências circulares. Eu consertei isso usando Mix-ins com a anotação

@JsonIdentityInfo(generator = ObjectIdGenerators.IntSequenceGenerator.class, property = "@id")  

Então agora eu tenho muitos Mix-ins prontos, se necessário para o problema 2.

2) Continuo recebendo novos erros específicos do objeto ao serializar.

--Output from testMethodsReturnsSomething--
| Failure:  testMethods(package.IdmlServiceTests)
|  com.fasterxml.jackson.databind.JsonMappingException: (was java.lang.NullPointerException) (through reference chain: de.fhcon.idmllib.api.elements.Idml["document"]->de.fhcon.idmllib.api.elements.Document["tags"]->de.fhcon.idmllib.api.elements.tags.Tags["xmltagList"]->java.util.ArrayList[0]->de.fhcon.idmllib.api.elements.tags.XMLTag["tagColor"]->de.fhcon.idmllib.api.elements.typedefs.InDesignUIColorType["greenValue"])
at com.fasterxml.jackson.databind.JsonMappingException.wrapWithPath(JsonMappingException.java:218)
at com.fasterxml.jackson.databind.JsonMappingException.wrapWithPath(JsonMappingException.java:183)
at com.fasterxml.jackson.databind.ser.std.StdSerializer.wrapAndThrow(StdSerializer.java:155)
at com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:533)
...

Eu tentei escrever um serializador NullValue / NullKey personalizado, mas isso não ajuda o NullPointerException.

Existe uma anotação que eu possa usar no meu Mix-ins que lida com isso?
Ou existe outra maneira de eu serializar esse objeto?

questionAnswers(2)

yourAnswerToTheQuestion