NullPointerException - JSON VRaptor  XML
Índice dos Fóruns » Frameworks e Bibliotecas brasileiros
Autor Mensagem
seufagner
JavaEvangelist
[Avatar]

Membro desde: 06/05/2005 16:33:09
Mensagens: 447
Localização: Rio de Janeiro - RJ
Offline

Pessoal

Estou tomando NPE tentando receber um JSON.

No Controller a entidade está sendo encontrada. Alguém tem idéia do que possa vir a ser?


javascript



Controller


trace

This message was edited 1 time. Last update was at 05/05/2010 00:10:36


@seufagner
seufagner.com.br
"Simplicidade é a maior forma de sofisticação"
Leonardo Da vinci
[Email] [WWW]
seufagner
JavaEvangelist
[Avatar]

Membro desde: 06/05/2005 16:33:09
Mensagens: 447
Localização: Rio de Janeiro - RJ
Offline

Er.. dei mole.. Era so ter usado use()


@seufagner
seufagner.com.br
"Simplicidade é a maior forma de sofisticação"
Leonardo Da vinci
[Email] [WWW]
seufagner
JavaEvangelist
[Avatar]

Membro desde: 06/05/2005 16:33:09
Mensagens: 447
Localização: Rio de Janeiro - RJ
Offline

Tenho uma entidade onde Departamento contém um Set<Secao>.

O XStream consegue fazer o parser ? Pois, de qualquer forma, chega um Object via JSON e eu não consigo acessar nenhum atributo da entidade Departamento.

@seufagner
seufagner.com.br
"Simplicidade é a maior forma de sofisticação"
Leonardo Da vinci
[Email] [WWW]
Lucas Cavalcanti
GUJ Hacker
[Avatar]

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

por padrão o vraptor só serializa atributos simples (String, números, datas e boolean), se vc quiser serializar o Set, vc tem que dar um include nessa propriedade, ou se quiser incluir tudo por sua conta e risco, chamar o metodo recursive...


--
Caelum
www.caelum.com.br

seufagner
JavaEvangelist
[Avatar]

Membro desde: 06/05/2005 16:33:09
Mensagens: 447
Localização: Rio de Janeiro - RJ
Offline

Eu havia tentado isto mas não funcionou.

Eu recebo um Object (visto em um alert javascript). Os atributos simples de Departamento, como descrição, também não são recuperados.

@seufagner
seufagner.com.br
"Simplicidade é a maior forma de sofisticação"
Leonardo Da vinci
[Email] [WWW]
Lucas Cavalcanti
GUJ Hacker
[Avatar]

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

tenta chamar a url do json no browser e ver o que vem...

--
Caelum
www.caelum.com.br

seufagner
JavaEvangelist
[Avatar]

Membro desde: 06/05/2005 16:33:09
Mensagens: 447
Localização: Rio de Janeiro - RJ
Offline

Obrigado Lucas.

O parser do JSON se perde. Acredito que é porque há um relacionamento bidirecional e, colocando recursive(), deve dar pau..


@seufagner
seufagner.com.br
"Simplicidade é a maior forma de sofisticação"
Leonardo Da vinci
[Email] [WWW]
Lucas Cavalcanti
GUJ Hacker
[Avatar]

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

sim, por isso vc não pode usar o recursive() sempre...
se vc tiver um ciclo nos relacionamentos entre os objetos o recursive não vai funcionar

use includes...

--
Caelum
www.caelum.com.br

seufagner
JavaEvangelist
[Avatar]

Membro desde: 06/05/2005 16:33:09
Mensagens: 447
Localização: Rio de Janeiro - RJ
Offline

com include("secoes") tem como resultado exatamente a saída que informei acima.

no caso teria que excluir a entidade departamento na coleção.

This message was edited 2 times. Last update was at 05/05/2010 21:08:36


@seufagner
seufagner.com.br
"Simplicidade é a maior forma de sofisticação"
Leonardo Da vinci
[Email] [WWW]
Lucas Cavalcanti
GUJ Hacker
[Avatar]

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

tire o recursive

--
Caelum
www.caelum.com.br

seufagner
JavaEvangelist
[Avatar]

Membro desde: 06/05/2005 16:33:09
Mensagens: 447
Localização: Rio de Janeiro - RJ
Offline

obrigado lucas

não tem recursive. dá o mesmo erro (vem quebrado o json), porém, sem excessão




This message was edited 1 time. Last update was at 05/05/2010 21:30:18


@seufagner
seufagner.com.br
"Simplicidade é a maior forma de sofisticação"
Leonardo Da vinci
[Email] [WWW]
Lucas Cavalcanti
GUJ Hacker
[Avatar]

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

ele não gera o json completo?

vc tah rodando em qual browser? tenta abrir no firefox e baixar o json gerado

--
Caelum
www.caelum.com.br

seufagner
JavaEvangelist
[Avatar]

Membro desde: 06/05/2005 16:33:09
Mensagens: 447
Localização: Rio de Janeiro - RJ
Offline

não, gera o JSON que informei.



Rodei no Firefox e no Chrome já. Não sei usar o IE. rs

@seufagner
seufagner.com.br
"Simplicidade é a maior forma de sofisticação"
Leonardo Da vinci
[Email] [WWW]
Lucas Cavalcanti
GUJ Hacker
[Avatar]

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

vc tah com a última versão do vraptor?

a secoes é uma lista de Departamento? ou de algo que estende departamento?

--
Caelum
www.caelum.com.br

seufagner
JavaEvangelist
[Avatar]

Membro desde: 06/05/2005 16:33:09
Mensagens: 447
Localização: Rio de Janeiro - RJ
Offline

É um cara independente.

Estou com o snapshot vraptor-3.1.3-20100428.160403-2.jar


Trata-se de um cadastro de produtos, que envolve várias entidades e nem todas são relacionadas. Produto não tem o Departamento (este que contém todas as seções). O mesmo pertence apenas a um Departamento e a uma Seção (isto pode mudar, por enquanto deixei assim), entre várias outras entidades.

Como paliativo, estou passando a colecao diretamente e criei um Mediator com todas as entidades e ações necessárias para o cadastro de um Produto .

Achei que, naturalmente, o JSON 'parseava' as coleções. Contudo seria muito bom que pudesse manipular o grafo de objetos para, com isso, trazer apenas o que eu quero no JSON.


Existe algo no VRaptor que me possibilite isso? Como estou com pouco tempo não implementaria agora, mas numa folga.

Obrigado novamente;

This message was edited 1 time. Last update was at 05/05/2010 23:16:18


@seufagner
seufagner.com.br
"Simplicidade é a maior forma de sofisticação"
Leonardo Da vinci
[Email] [WWW]
 
Índice dos Fóruns » Frameworks e Bibliotecas brasileiros
Ir para:   
Powered by JForum 2.1.8 © JForum Team