VRaptor - Problema com rota inicial

Olá, galerinha do GUJ, tudo bem?
Estou com um problema com o VRaptor.

Eu peguei o blank-project, ajeitei bonitinho e está rodando no Netbeans. Limpei e construi após renomear e referenciar todos os .jar novamente. Quando executo a aplicação pela primeira vez, ele roda bonitinho. Se dou play pela IDE novamente, ele me aparece esse erro:java.lang.IllegalStateException: There are two rules that matches the uri '/' with method GET: [[FixedMethodStrategy: / IndexController.index() ALL], [FixedMethodStrategy: / IndexController.index() ALL]] with same priority. Consider using @Path priority attribute. br.com.caelum.vraptor.http.route.DefaultRouter.checkIfThereIsAnotherRoute(DefaultRouter.java:96) br.com.caelum.vraptor.http.route.DefaultRouter.parse(DefaultRouter.java:87) br.com.caelum.vraptor.http.DefaultResourceTranslator.translate(DefaultResourceTranslator.java:59) br.com.caelum.vraptor.interceptor.ResourceLookupInterceptor.intercept(ResourceLookupInterceptor.java:66) br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54) br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54) br.com.caelum.vraptor.core.EnhancedRequestExecution.execute(EnhancedRequestExecution.java:23) br.com.caelum.vraptor.VRaptor$1.insideRequest(VRaptor.java:92) br.com.caelum.vraptor.ioc.spring.SpringProvider.provideForRequest(SpringProvider.java:58) br.com.caelum.vraptor.VRaptor.doFilter(VRaptor.java:89)

Depois do erro, se eu limpo e construo o projeto, na primeira execução funciona, mas na segunda continua este mesmo erro.
O que pode ser?

Obrigado, fiquem com Deus! :smiley:

[quote=Nicolas Fernandes]Olá, galerinha do GUJ, tudo bem?
Estou com um problema com o VRaptor.

Eu peguei o blank-project, ajeitei bonitinho e está rodando no Netbeans. Limpei e construi após renomear e referenciar todos os .jar novamente. Quando executo a aplicação pela primeira vez, ele roda bonitinho. Se dou play pela IDE novamente, ele me aparece esse erro:java.lang.IllegalStateException: There are two rules that matches the uri '/' with method GET: [[FixedMethodStrategy: / IndexController.index() ALL], [FixedMethodStrategy: / IndexController.index() ALL]] with same priority. Consider using @Path priority attribute. br.com.caelum.vraptor.http.route.DefaultRouter.checkIfThereIsAnotherRoute(DefaultRouter.java:96) br.com.caelum.vraptor.http.route.DefaultRouter.parse(DefaultRouter.java:87) br.com.caelum.vraptor.http.DefaultResourceTranslator.translate(DefaultResourceTranslator.java:59) br.com.caelum.vraptor.interceptor.ResourceLookupInterceptor.intercept(ResourceLookupInterceptor.java:66) br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54) br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54) br.com.caelum.vraptor.core.EnhancedRequestExecution.execute(EnhancedRequestExecution.java:23) br.com.caelum.vraptor.VRaptor$1.insideRequest(VRaptor.java:92) br.com.caelum.vraptor.ioc.spring.SpringProvider.provideForRequest(SpringProvider.java:58) br.com.caelum.vraptor.VRaptor.doFilter(VRaptor.java:89)

Depois do erro, se eu limpo e construo o projeto, na primeira execução funciona, mas na segunda continua este mesmo erro.
O que pode ser?

Obrigado, fiquem com Deus! :D[/quote]
http://www.guj.com.br/java/198331-vraptor3-conflito-de-rotas-resolvido

Já acessei esse tópico renlih. Ele não soluciona o meu problema. A questão daquele tópico é que o JJWizard estava usando duas rotas iguais para funcionalidades diferentes. Aí tudo bem. No meu caso, eu limpo e construo a aplicação, e ela roda normalmente. Se, após isso, tento rodar de novo, dá o erro de rotas. Caso eu limpe e construa novamente, daí funciona. Depois disso, se rodo outra vez, não funciona. É muito estranho isso.

vc tem mais de um IndexController na aplicação?

Não, Lucas. Eu importei o blank-project, refatorei o nome do pacote inicial para o nome que eu queria, mudei tudo que precisava no web.xml… Limpei, construi e aconteceu esse problema. Porém, resolvi-o mudando a annotation @Path.

[code]//Ao invés de…
@Path("/")

// Funcionou usando o atributo priority.
@Path(value="/", priority=1)
[/code]

Mas você saberia me explicar o porquê daquele comportamento estranho?

aparentemente ele manteve o .class do IndexController padrão do blank-project… daí tem dois caras usando @Path("/")

tenta dar um refresh na pasta do projeto (F5 mesmo) e clean no projeto e no servidor.