Configurar o Jackson como provedor JSON no JAX-RS 2.0
Eu quero usar Jackson como provedor JSON para o meu serviço web JAX-RS 2.0. Para o JAX-RS eu uso o Jersey 2.0 no GlassFish 4. Com o JAX-RS 1.x eu posso adicionar
<init-param>
<param-name>com.sun.jersey.api.json.POJOMappingFeature</param-name>
<param-value>true</param-value>
</init-param>
no meuweb.xml
. Como posso fazer isso no Jax-RS 2.0 com Jersey 2.0? Eu implementar uma classe de aplicativo como esta
public class MyRESTExampleApplication extends ResourceConfig {
public MyRESTExampleApplication() {
packages("com.carano.fleet4all.restExample");
register(JacksonFeature.class);
}
}
e adicione estas linhas ao meuweb.xml
.
<init-param>
<param-name>javax.ws.rs.Application</param-name>
<param-value>com.example.restExample.MyRESTExampleApplication</param-value>
</init-param>
Mas eu recebo uma exceção pelo pedidoorg.glassfish.jersey.message.internal.MessageBodyProviderNotFoundException: MessageBodyWriter não encontrado para tipo de mídia = application / json, type = class ...
Minhaspom.xml
se parece com isso
<dependencies>
<dependency>
<groupId>org.glassfish.jersey.core</groupId>
<artifactId>jersey-server</artifactId>
<version>2.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-json-jackson</artifactId>
<version>2.0</version>
<scope>provided</scope>
</dependency>
</dependencies>