Spring MVC configurar url-patrón
Intento configurar el controlador simple.
Yo tengo:
enweb.xml
<servlet>
<servlet-name>mvc-dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>mvc-dispatcher</servlet-name>
<url-pattern>/index.jsp</url-pattern>
</servlet-mapping>
enmvc-dispatcher-servlet.xml
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix">
<value>/jsp/</value>
</property>
<property name="suffix">
<value>.jsp</value>
</property>
</bean>
<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="urlMap">
<map>
<entry key="/index.jsp">
<ref bean="mainPage"/>
</entry>
</map>
</property>
</bean>
<bean name="mainPage" class="ru.mypack.TBController" />
aquí está miControlador:
public class TBController extends AbstractController {
@Override
protected ModelAndView handleRequestInternal(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception {
System.out.println("It is here");
ModelAndView model = new ModelAndView("index");
return model;
}}
¡Me ejecuto en Tomcat 6 y en esta configuración funciona (/index.jsp) perfecto!
Pero si cambio el patrón de url como este
<servlet-mapping>
<servlet-name>mvc-dispatcher</servlet-name>
<url-pattern>*.jsp</url-pattern>
</servlet-mapping>
devuelve 404 accediendo a /index.jsp
Veo "Está aquí" en la consola, significa que el patrón url funciona bien, pero ModelAndView no se inicializa
Lo extraño es que parece que intenta acceder a un recurso vacío (Chrome no me muestra "HTTP Status 404 -")
Por favor, ayúdeme a entender lo que está pasando ... ¿Podría faltar algo en la especificación de patrón de url?
UPD:
Gracias a Pavel Horal, la solución ha sido encontrada.
Acabo de reemplazar mi patrón de url en web.xml con
<url-pattern>/test/*</url-pattern>
Y ahora responde por /test/index.jsp