Bom dia, estou tentando usar a api Gson junto com a ultima versão do vraptor.
No entanto, toda vez que faço o registro abaixo no web.xml, a aplicação não sobe.
Consegui resolver o erro ao startar o tomcat, eu estava usando uma versão mais antiga do vraptor e não me dei conta.
Agora o problema ocorre que mesmo registrando o gson no web.xml, o vraptor continua usando o xstream pra deserializar o json.
E como se não bastasse, o xstream não está conseguindo deserializar.
EVERE:Unhandledexceptionoccurredwhilstdecoratingpagecom.thoughtworks.xstream.converters.ConversionException:null:null---- Debugging information ----cause-exception:java.lang.NullPointerExceptioncause-message:nullclass:br.com.mobinvent.mobimaker.model.PlanEntityrequired-type:br.com.mobinvent.mobimaker.model.PlanEntityconverter-type:com.thoughtworks.xstream.converters.reflection.ReflectionConverterlinenumber:-1version:null-------------------------------atcom.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:79)atcom.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66)atcom.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:50)atcom.thoughtworks.xstream.core.TreeUnmarshaller.start(TreeUnmarshaller.java:134)atcom.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.unmarshal(AbstractTreeMarshallingStrategy.java:32)atcom.thoughtworks.xstream.XStream.unmarshal(XStream.java:1058)atcom.thoughtworks.xstream.XStream.unmarshal(XStream.java:1042)atcom.thoughtworks.xstream.XStream.fromXML(XStream.java:922)atbr.com.caelum.vraptor.deserialization.JsonDeserializer.deserialize(JsonDeserializer.java:62)atbr.com.caelum.vraptor.interceptor.DeserializingInterceptor.intercept(DeserializingInterceptor.java:87)atbr.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:59)atbr.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)atbr.com.caelum.vraptor.interceptor.ParametersInstantiatorInterceptor.intercept(ParametersInstantiatorInterceptor.java:96)atbr.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:59)atbr.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)atbr.com.caelum.vraptor.interceptor.InstantiateInterceptor.intercept(InstantiateInterceptor.java:48)atbr.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)atbr.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)atbr.com.caelum.vraptor.interceptor.ExceptionHandlerInterceptor.intercept(ExceptionHandlerInterceptor.java:67)atbr.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)atbr.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)atbr.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:56)atbr.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)atbr.com.caelum.vraptor.interceptor.FlashInterceptor.intercept(FlashInterceptor.java:83)atbr.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)atbr.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)atbr.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:56)atbr.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)atbr.com.caelum.vraptor.util.jpa.JPATransactionInterceptor.intercept(JPATransactionInterceptor.java:58)atbr.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)atbr.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)atbr.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:61)atbr.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)atbr.com.caelum.vraptor.interceptor.ResourceLookupInterceptor.intercept(ResourceLookupInterceptor.java:69)atbr.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)atbr.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)atbr.com.caelum.vraptor.core.EnhancedRequestExecution.execute(EnhancedRequestExecution.java:44)atbr.com.caelum.vraptor.VRaptor$1.insideRequest(VRaptor.java:91)atbr.com.caelum.vraptor.ioc.guice.GuiceProvider.provideForRequest(GuiceProvider.java:82)atbr.com.caelum.vraptor.VRaptor.doFilter(VRaptor.java:88)atorg.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)atorg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)atcom.opensymphony.sitemesh.webapp.SiteMeshFilter.obtainContent(SiteMeshFilter.java:129)atcom.opensymphony.sitemesh.webapp.SiteMeshFilter.doFilter(SiteMeshFilter.java:77)atorg.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)atorg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)atorg.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)atorg.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)atorg.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)atorg.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)atorg.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)atorg.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)atorg.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)atorg.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)atorg.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023)atorg.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)atorg.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:1852)atjava.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)atjava.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)atjava.lang.Thread.run(Thread.java:724)Causedby:java.lang.NullPointerExceptionatbr.com.caelum.vraptor.serialization.xstream.VRaptorClassMapper.shouldSerializeMember(VRaptorClassMapper.java:68)atcom.thoughtworks.xstream.mapper.MapperWrapper.shouldSerializeMember(MapperWrapper.java:74)atcom.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.determineType(AbstractReflectionConverter.java:445)atcom.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doUnmarshal(AbstractReflectionConverter.java:294)atcom.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshal(AbstractReflectionConverter.java:234)atcom.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72)...59moreAgo08,20131:31:17PMorg.apache.catalina.core.StandardWrapperValveinvokeSEVERE:Servlet.service()forservlet[default]incontextwithpath[]threwexceptioncom.thoughtworks.xstream.converters.ConversionException:null:null---- Debugging information ----cause-exception:java.lang.NullPointerExceptioncause-message:nullclass:br.com.mobinvent.mobimaker.model.PlanEntityrequired-type:br.com.mobinvent.mobimaker.model.PlanEntityconverter-type:com.thoughtworks.xstream.converters.reflection.ReflectionConverterlinenumber:-1version:null-------------------------------atcom.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:79)atcom.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66)atcom.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:50)atcom.thoughtworks.xstream.core.TreeUnmarshaller.start(TreeUnmarshaller.java:134)atcom.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.unmarshal(AbstractTreeMarshallingStrategy.java:32)atcom.thoughtworks.xstream.XStream.unmarshal(XStream.java:1058)atcom.thoughtworks.xstream.XStream.unmarshal(XStream.java:1042)atcom.thoughtworks.xstream.XStream.fromXML(XStream.java:922)atbr.com.caelum.vraptor.deserialization.JsonDeserializer.deserialize(JsonDeserializer.java:62)atbr.com.caelum.vraptor.interceptor.DeserializingInterceptor.intercept(DeserializingInterceptor.java:87)atbr.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:59)atbr.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)atbr.com.caelum.vraptor.interceptor.ParametersInstantiatorInterceptor.intercept(ParametersInstantiatorInterceptor.java:96)atbr.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:59)atbr.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)atbr.com.caelum.vraptor.interceptor.InstantiateInterceptor.intercept(InstantiateInterceptor.java:48)atbr.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)atbr.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)atbr.com.caelum.vraptor.interceptor.ExceptionHandlerInterceptor.intercept(ExceptionHandlerInterceptor.java:67)atbr.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)atbr.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)atbr.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:56)atbr.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)atbr.com.caelum.vraptor.interceptor.FlashInterceptor.intercept(FlashInterceptor.java:83)atbr.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)atbr.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)atbr.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:56)atbr.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)atbr.com.caelum.vraptor.util.jpa.JPATransactionInterceptor.intercept(JPATransactionInterceptor.java:58)atbr.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)atbr.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)atbr.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:61)atbr.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)atbr.com.caelum.vraptor.interceptor.ResourceLookupInterceptor.intercept(ResourceLookupInterceptor.java:69)atbr.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)atbr.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)atbr.com.caelum.vraptor.core.EnhancedRequestExecution.execute(EnhancedRequestExecution.java:44)atbr.com.caelum.vraptor.VRaptor$1.insideRequest(VRaptor.java:91)atbr.com.caelum.vraptor.ioc.guice.GuiceProvider.provideForRequest(GuiceProvider.java:82)atbr.com.caelum.vraptor.VRaptor.doFilter(VRaptor.java:88)atorg.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)atorg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)atcom.opensymphony.sitemesh.webapp.SiteMeshFilter.obtainContent(SiteMeshFilter.java:129)atcom.opensymphony.sitemesh.webapp.SiteMeshFilter.doFilter(SiteMeshFilter.java:77)atorg.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)atorg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)atorg.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)atorg.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)atorg.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)atorg.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)atorg.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)atorg.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)atorg.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)atorg.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)atorg.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023)atorg.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)atorg.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:1852)atjava.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)atjava.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)atjava.lang.Thread.run(Thread.java:724)Causedby:java.lang.NullPointerExceptionatbr.com.caelum.vraptor.serialization.xstream.VRaptorClassMapper.shouldSerializeMember(VRaptorClassMapper.java:68)atcom.thoughtworks.xstream.mapper.MapperWrapper.shouldSerializeMember(MapperWrapper.java:74)atcom.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.determineType(AbstractReflectionConverter.java:445)atcom.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.doUnmarshal(AbstractReflectionConverter.java:294)atcom.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.unmarshal(AbstractReflectionConverter.java:234)atcom.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72)
viniciusrdacosta
Lucas, posso usar o snapshot sim, mas tu tens alguma dica pra adicioanar ele pelo ivy ?
Se não vou colocar ele na mão mesmo.
Nykolas_Lima
viniciusrdacosta:
Lucas, posso usar o snapshot sim, mas tu tens alguma dica pra adicioanar ele pelo ivy ?
Se não vou colocar ele na mão mesmo.
Com o ivy você não consegue configurar repositórios? Se sim, você só precisar configurar o repositório de Snapshots e pronto.
viniciusrdacosta
Tudo certo agora.
Construi meu projeto com o vraptor-scaffold usando o ivy como gerenciador de dependencias.
No entanto, ao construir o projeto pelo ant, por algum motivo o projeto não compila pois não reconhece os métodos do Hamcrest (MethodNotFoundException) e não reconhece uma classe do jar apache commons-codec.
Detalhe: o Hamcrest está no classpath da aplicação e o commons-codec quando adicionado no ivy, da erro de dependência…