ExtJS4 + vRaptor: Controller não está convertendo json para objectos java.  XML
Índice dos Fóruns » Frameworks e Bibliotecas brasileiros
Autor Mensagem
psico.indie
JavaBaby

Membro desde: 13/12/2007 12:16:21
Mensagens: 96
Localização: Fortaleza
Offline


Boa tarde,


Estou implementando um método salvar de um crud quando me deparei com o seguinte problema. O vRaptor não está convertendo o json em objecto java.

O Cliente está indo como null


Este é o Json que está sendo enviado:



Alguém pode me ajudar?
[Email]
mario.fts
GUJ Ranger
[Avatar]

Membro desde: 14/05/2008 09:41:06
Mensagens: 817
Localização: São Paulo - ZL
Offline

Olá

Para o Vraptor converter o cliente, vc tem que enviar os parametros no formato cliente.nome, cliente.id, cliente.cpfCnpj, e por ai vai, senão ele não tem como saber que os campos pertencem aquela variavel.


Tem um tutorial do Daniel que você pode ver pra entender como deve converter o json:

http://dkist.k2studio.com.br/2010/05/27/integracao-extjs-com-vraptor-3/

[]'s

Mário Amaral Gonçalves

"Ciência da computação tem tanto a ver com o computador como a Astronomia com o telescópio, a Biologia com o microscópio, ou a Química com os tubos de ensaio. A Ciência não estuda ferramentas, mas o que fazemos e o que descobrimos com elas." - Edsger Dijkstra
[Email]
psico.indie
JavaBaby

Membro desde: 13/12/2007 12:16:21
Mensagens: 96
Localização: Fortaleza
Offline


Você está me dizendo que meu json deve ser enviado dessa forma?

[Email]
mario.fts
GUJ Ranger
[Avatar]

Membro desde: 14/05/2008 09:41:06
Mensagens: 817
Localização: São Paulo - ZL
Offline

Olá

Você está enviando os dados através de um form?

se sim, basta que seus inputs tenhas os nomes certos, que o própio método submit irá enviar da maneira correta.

ou você está gerando esse JSON e enviando para o vraptor de outra maneira?

Posta o código do seu form do ext pra gente ver como você está enviando os dados.

[]'s

This message was edited 1 time. Last update was at 29/06/2011 16:13:57


Mário Amaral Gonçalves

"Ciência da computação tem tanto a ver com o computador como a Astronomia com o telescópio, a Biologia com o microscópio, ou a Química com os tubos de ensaio. A Ciência não estuda ferramentas, mas o que fazemos e o que descobrimos com elas." - Edsger Dijkstra
[Email]
Lucas Cavalcanti
GUJ Hacker
[Avatar]

Membro desde: 08/07/2007 00:08:14
Mensagens: 6396
Offline

o VRaptor não deserializa json por padrão (se vc fizer um post onde o corpo é o json), só xml.

mas se vc está em javascript, é fácil mandar form parameters

--
Caelum
www.caelum.com.br

psico.indie
JavaBaby

Membro desde: 13/12/2007 12:16:21
Mensagens: 96
Localização: Fortaleza
Offline


Usar form paramers ao invés de passar um json?
[Email]
psico.indie
JavaBaby

Membro desde: 13/12/2007 12:16:21
Mensagens: 96
Localização: Fortaleza
Offline


Fiz um teste, enviei um xml ele também não serializou.
[Email]
Lucas Cavalcanti
GUJ Hacker
[Avatar]

Membro desde: 08/07/2007 00:08:14
Mensagens: 6396
Offline

precisa anotar o método com @Consumes, e o content-type da requisição tem que estar setado como "application/xml"

--
Caelum
www.caelum.com.br

psico.indie
JavaBaby

Membro desde: 13/12/2007 12:16:21
Mensagens: 96
Localização: Fortaleza
Offline

Lucas, deu certo. Coloquei essa annotation e funcionou.
No caso, o vRaptor usa o XStream para fazer isso, né?
[Email]
Lucas Cavalcanti
GUJ Hacker
[Avatar]

Membro desde: 08/07/2007 00:08:14
Mensagens: 6396
Offline

exato, mas vc pode sobrescrever a implementação e usar outra lib

--
Caelum
www.caelum.com.br

psico.indie
JavaBaby

Membro desde: 13/12/2007 12:16:21
Mensagens: 96
Localização: Fortaleza
Offline


Ninguém nunca se habilitou a implementar a deserialização de json's no vRaptor? Taí uma boa coisa pra eu fazer no meu tempo livre!
[Email]
psico.indie
JavaBaby

Membro desde: 13/12/2007 12:16:21
Mensagens: 96
Localização: Fortaleza
Offline

Só pra marcar como resolvido.
[Email]
Lucas Cavalcanti
GUJ Hacker
[Avatar]

Membro desde: 08/07/2007 00:08:14
Mensagens: 6396
Offline

contribuições são sempre bem vindas =)

se precisar de qqer ajuda é só falar =)

--
Caelum
www.caelum.com.br

Lucas Cavalcanti
GUJ Hacker
[Avatar]

Membro desde: 08/07/2007 00:08:14
Mensagens: 6396
Offline

corrigindo falha minha: existe o deserializer de json sim, e já está habilitado por padrão

https://github.com/caelum/vraptor/blob/master/vraptor-core/src/main/java/br/com/caelum/vraptor/deserialization/JsonDeserializer.java

--
Caelum
www.caelum.com.br

 
Índice dos Fóruns » Frameworks e Bibliotecas brasileiros
Ir para:   
Powered by JForum 2.1.8 © JForum Team