resource example databind consume jersey jackson

databind - jersey java post example



Jersey Jackson y codehaus vs. fasterxml (1)

Estoy usando Jersey 1.17.1 con Jackson 2.2.1.

Parece que Jackson cambió los paquetes de org.codehaus a com.fasterxml . Tengo todo mi código configurado correctamente y utilizando el último jackson. Sin embargo, parece que Jersey todavía está tirando de org.codehaus.jackson . ¿Hay alguna forma de mitigar esto o debo seguir con los paquetes de codehaus hasta que Jersey se actualice para usar los paquetes fasterxml ?


Las bibliotecas más antiguas de Jackson se están incorporando como dependencias del artefacto jersey-json . Cuando

<dependency> <groupId>com.sun.jersey</groupId> <artifactId>jersey-json</artifactId> <version>1.17</version> </dependency>

incluido en su POM, obtendrá automáticamente las versiones de las bibliotecas org.codehaus.jackson incluidas en su proyecto. Desafortunadamente, jersey-json tiene dependencias de tiempo de enlace en las clases de Jackson, por lo que no puede simplemente usar exclusions . Lo que quieres hacer es omitirlo por completo. Es realmente un tipo de biblioteca de envoltorio alrededor de un montón de bibliotecas JSON que no necesariamente necesitas. Una vez eliminado, puede agregar dependencias para las bibliotecas Jackson 2.2.1 y el proveedor JAX-RS:

<dependency> <groupId>com.fasterxml.jackson.jaxrs</groupId> <artifactId>jackson-jaxrs-json-provider</artifactId> <version>2.2.1</version> </dependency>

Tenga en cuenta que con jersey-json eliminado ya no tiene un proveedor de Stax2, Jettison o JAXB. Si los necesita, tendrá que ubicar y agregar dependencias para ellos manualmente.