Jackson definir visualização padrão

Estou usando o Jackson 2.3.2 e quero definir a Visualização padrão do ObjectMapper


Primeira tentativa: http://wiki.fasterxml.com/JacksonJsonViews#Implementation

// short-cut:
objectMapper.writeValueUsingView(out, beanInstance, ViewsPublic.class);

// or fully exploded:
objectMapper.getSerializationConfig().setSerializationView(Views.Public.class);
// (note: can also pre-construct config object with 'mapper.copySerializationConfig'; reuse)
objectMapper.writeValue(out, beanInstance); // will use active view set via Config

// or, starting with 1.5, more convenient (ObjectWriter is reusable too)
objectMapper.viewWriter(ViewsPublic.class).writeValue(out, beanInstance);

Então eu tive:

ObjectMapper mapper = new ObjectMapper();
mapper.enable(SerializationFeature.INDENT_OUTPUT);
mapper.configure(MapperFeature.DEFAULT_VIEW_INCLUSION, true);
mapper.getSerializationConfig().setSerializationView(ResourceView.PublicView.class);

Não funciona O JavaDoc 1.8.2 diz: setSerializationView está obsoleto , tenho que usarwithView()


Segunda tentativa:

ObjectMapper mapper = new ObjectMapper();
mapper.enable(SerializationFeature.INDENT_OUTPUT);
mapper.configure(MapperFeature.DEFAULT_VIEW_INCLUSION, true);
mapper.getSerializationConfig().withView(ResourceView.PublicView.class);

Ainda não funciona. O JavaDoc 2.2.0 diz

public SerializationConfig withView(Class<?> view)

Descrição copiada da classe: MapperConfigBase

Método para construir e retornar uma nova instância com vista diferente para usar.

Mas não posso definir o novo SerializationConfigpara o existenteObjectMapper


Como posso definir o modo de exibição padrão?


ATUALIZAR

Eu uso Jersey e JAX-RS no lado do servidor

Resposta 1

Deveria funcionar fazendo:

mapper.setConfig(mapper.getSerializationConfig().withView(ResourceView.PublicView.class));
Resposta: 2

Com Jersey, tive que definir o modo de exibição no JacksonJsonProvider

ResourceConfig config = new ResourceConfig();
config.packages("com.example.foo");

JacksonJsonProvider jjp = new JacksonJsonProvider();
jjp.setDefaultWriteView(ResourceView.PublicView.class);
config.register(jjp);
Resposta: 3

Enquanto estou trabalhando no meio de algum projeto do kotlin, fiquei com uma confusão, como se uma classe filho implementa outra classe pai ou implementa uma interface? como se estivesse usando algumas interfaces e ...

Estou recebendo esse erro no ambiente Linux ao exibir gráficos de pizza 3D no navegador da web. Funciona perfeitamente bem no ambiente do Windows. java.lang.NoClassDefFoundError: Não foi possível ...

Olá, estou usando uma tabela por mapeamento de herança de hierarquia de classes para dados herdados, conforme descrito aqui http: //docs.jboss.org/hibernate/core/3.3/reference/en/html/inheritance.html#inheritance -...

importar java.util.Random; importar java.util.ArrayList; classe pública Game {ArrayList <Integer> numere = new ArrayList <> (); ArrayList <Bila> balls = new ArrayList <Bila> (); ArrayList & ...