No se puede escribir un nombre de campo, esperando un valor

Sander Koenders:

Cuando cambiamos de Jackson versión 2.8.9 a 2.9.8 nos encontramos con algunos problemas con la serialización de datos en formato CBOR. Pues resulta que el módulo de Jackson a medida que hemos estado utilizando está causando problemas en esta nueva versión. Estos problemas comienzan a partir de la versión 2.9.0.

He hecho un repositorio que reproduce el problema y encontró que cuando he deshabilitado nuestros personalizados TemporalAmountModulecuestiones fueron. No escribí el TemporalAmountModulemismo, pero parece que el serializador personalizado y deserializador son los cullprit. Estos no introducen ningún código complejo, pero no entiendo realmente por qué no funcionan correctamente más porque no estoy a familiarizarse con Serializadores y deserializadores.

He hecho un repositorio que reproduce el problema que estoy teniendo. Cuando se deshabilita el módulo se puede ver que está funcionando correctamente. Cuando se cambia la versión 2.8.x de Jackson (último en ese rango es 2.8.11) se puede ver que funciona correctamente también.

https://github.com/Archcry/reproduce-jackson-error

El resultado esperado debe ser la misma que en la versión 2.8.9 (o 2.8.11 para el caso). Jackson no debe romper ninguna funcionalidad en un comunicado de versión menor pero puede despreciar ciertos métodos (lo que hicieron). Los métodos obsoletos no son los que causan los problemas, porque aunque he intentado actualizarlos pero terminó con el mismo resultado. El resultado real en este momento es un error que dice Can not write a field name, expecting a value.

Sander Koenders:

Cuestión se resolvió en GitHub, ver https://github.com/FasterXML/jackson-databind/issues/2320

Editar: Edición se está trabajando y no debería haber ocurrido en el primer lugar.

Edición 2: Edición ya no está trabajando, debido a la falta de contexto es difícil de reproducir.

Por desgracia, mientras que puedo ver la excepción del proyecto de ejemplo, no soy capaz de construir la versión más simple con combinaciones. Me pregunto si esto podría estar relacionado con el uso de inmutables, las anotaciones. Así que creo que voy a dejar esto como está por ahora.

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=193047&siteId=1
Recomendado
Clasificación