Sobrescrever o JsonDeserializer no vraptor

3 respostas
C

Gostaria de saber se é possível criar um JsonDeserializer usando um driver custom que precisei criar, pois li na documentação que é possível alterar conversores, mas não falava nada sobre Deserializer.

Grato

3 Respostas

Lucas_Cavalcanti

sim, é possível sobrescrever qualquer componente do VRaptor, bastando implementar a mesma interface e anotar com @Component. Você pode também estender a classe original.

@Component
public class MinhaJsonDeserializer implements JsonDeserializer { //ou extends XStreamJsonDeserializer
   //...

}
R

Respondi no tópico errado. My bad.

Lucas_Cavalcanti

se vc vai modificar toda a deserialização não precisa fazer o extends, só o implements Deserializer já é o suficiente.

talvez se vc tirar o {‘tipoApoio’: } em volta do resto do JSON funcione (ou seja, deixar sem raiz)

vc pode também tentar usar a integração do GSON que já existe no VRaptor 3.5.0

registre o pacote br.com.caelum.vraptor.deserialization.gson no web.xml e remova o @deserializes desse seu deserializer.

Criado 21 de fevereiro de 2011
Ultima resposta 7 de mai. de 2013
Respostas 3
Participantes 3