Vraptor json include  XML
Índice dos Fóruns » Frameworks e Bibliotecas brasileiros
Autor Mensagem
biggahed
Smalltalk
[Avatar]

Membro desde: 15/03/2010 18:18:02
Mensagens: 3
Offline

Oi pessoal, primeiro post por aqui.
Estou começando no vraptor e esbarrei numa exception que nao estou conseguindo resolver.

No meu controller eu tenho



e tambem


Que está causando a seguinte exception

Caused by: java.lang.ClassCastException: sun.reflect.generics.reflectiveObjects.ParameterizedTypeImpl cannot be cast to java.lang.Class
at br.com.caelum.vraptor.serialization.xstream.XStreamSerializer.getActualType(XStreamSerializer.java:179)
at br.com.caelum.vraptor.serialization.xstream.XStreamSerializer.include(XStreamSerializer.java:15
at br.com.etet.controller.Clsd.toggleStatus(Clsd.java:70)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at br.com.caelum.vraptor.interceptor.ExecuteMethodInterceptor.intercept(ExecuteMethodInterceptor.java:57)
... 66 more

Estou usando o vraptor-3.1.2-20100310.010227-4

Se alguem souber me dizer do que se trata, serei muito grato


This message was edited 1 time. Last update was at 15/03/2010 18:33:00

Lucas Cavalcanti
GUJ Hacker
[Avatar]

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

é um bug do vraptor... estou investigando, já te passo um snapshot funcionando =)

--
Caelum
www.caelum.com.br

Lucas Cavalcanti
GUJ Hacker
[Avatar]

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

De qualquer forma, o VRaptor usa o XStream pra serializar os objetos, e o jeito que ele serializa Maps é algo do tipo:



pra fazer de outro jeito, você teria que configurar o XStream na mão... como vc gostaria que aparecessem os atributos?

--
Caelum
www.caelum.com.br

Lucas Cavalcanti
GUJ Hacker
[Avatar]

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

snapshot com esse bug corrigido:

http://oss.sonatype.org/content/repositories/snapshots/br/com/caelum/vraptor/3.1.2-SNAPSHOT/vraptor-3.1.2-20100316.002125-5.jar

--
Caelum
www.caelum.com.br

biggahed
Smalltalk
[Avatar]

Membro desde: 15/03/2010 18:18:02
Mensagens: 3
Offline

Opa, obrigado por responder tao rapido.
Eu fiz um teste aqui assim e nao ta mais dando erro.

E obtive

O que é usavel, mas nao é o que eu esperava. Quando eu fiz eu pensei que ele fosse me retornar algo assim


É possivel fazer isso com o xtream? Se ele realmente gera esse xml que voce deu como exemplo acho que teria que fazer ele gerar algo do tipo


Tem ideia de como fazer isso?
Lucas Cavalcanti
GUJ Hacker
[Avatar]

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

tanto pra xml qto pra json vc vai ter que criar um converter (do XStream) de maps...

Para isso vc precisa criar a classe:


onde esse MeuMapConverter() é uma classe que implementa com.thougthworks.xstream.converter.Converter e imprime o mapa do jeito que vc quer...
vc pode seguir esse tutorial: http://xstream.codehaus.org/converter-tutorial.html

--
Caelum
www.caelum.com.br

biggahed
Smalltalk
[Avatar]

Membro desde: 15/03/2010 18:18:02
Mensagens: 3
Offline

Brigadao cara, funcionou perfeitamente.
 
Índice dos Fóruns » Frameworks e Bibliotecas brasileiros
Ir para:   
Powered by JForum 2.1.8 © JForum Team