No mapeamento do IndexController
package br.com.controle.horas.controllers;
import br.com.caelum.vraptor.Controller;
import br.com.caelum.vraptor.Get;
import br.com.caelum.vraptor.Path;
@Controller
public class IndexController {
@Path("/")
public void index(){}
}
Deu o seguinte erro
java.lang.IllegalStateException: There are two rules that matches the uri '/' with method GET: [FixedMethodStrategy: / index ALL], [FixedMethodStrategy: / index ALL] with same priority. Consider using @Path priority attribute.
com.google.common.base.Preconditions.checkState(Preconditions.java:177)
br.com.caelum.vraptor.http.route.DefaultRouter.checkIfThereIsAnotherRoute(DefaultRouter.java:124)
br.com.caelum.vraptor.http.route.DefaultRouter.parse(DefaultRouter.java:116)
br.com.caelum.vraptor.http.route.DefaultRouter$Proxy$_$$_WeldClientProxy.parse(Unknown Source)
br.com.caelum.vraptor.http.DefaultControllerTranslator.translate(DefaultControllerTranslator.java:63)
br.com.caelum.vraptor.http.DefaultControllerTranslator$Proxy$_$$_WeldClientProxy.translate(Unknown Source)
br.com.caelum.vraptor.observer.RequestHandlerObserver.handle(RequestHandlerObserver.java:91)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
java.lang.reflect.Method.invoke(Unknown Source)
org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:93)
org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:266)
org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:253)
org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:232)
org.jboss.weld.event.ObserverNotifier.notifyObserver(ObserverNotifier.java:169)
org.jboss.weld.event.ObserverNotifier.notifyObserver(ObserverNotifier.java:165)
org.jboss.weld.event.ObserverNotifier.notifyObservers(ObserverNotifier.java:119)
org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:112)
org.jboss.weld.event.EventImpl.fire(EventImpl.java:83)
br.com.caelum.vraptor.VRaptor.doFilter(VRaptor.java:118)
Pelo que eu entendi do erro me corriga se eu estiver enganado... O erro ocorre porque ele eu não informei o tipo de requisição, dai o server pediu para eu informar qual tipo de requisição se é Get ou Post como não informei nada ele levantou a exeção "java.lang.IllegalStateException:" Para poder seguir em frente com o curso eu coloquei parametros dentro da Annotation @Path o value e o priority como o codigo abaixo e adicionei mais uma Annotation @Get
package br.com.controle.horas.controllers;
import br.com.caelum.vraptor.Controller;
import br.com.caelum.vraptor.Get;
import br.com.caelum.vraptor.Path;
@Controller
public class IndexController {
@Path(value="/", priority=1)
@Get
public void index(){}
}
Funcionou corretamente mas gostaria de saber porque o @Path("/") desta forma levantou exceção?Alguém teria alguma idéia?