Estoy intentando seguir el patrón en Design Patterns web based applications. Todo funciona bien desde el punto de vista de la creación de URL "raíz".Asignación de URL en Tomcat al servlet FrontController
me gustaría poner todas las solicitudes a través del "Front Controller", por lo que he puesto
<servlet-mapping>
<servlet-name>ControllerServlet</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
en el web.xml
. Dando un paso adelante con Netbeans muestra la petición de entrada, y la acción que trabaja bien, pero entonces la línea
request.getRequestDispatcher("/WEB-INF/" + view + ".jsp").forward(request, response);
TAMBIÉN se ve atrapado por el controlador, se va a la acción de nuevo y todo falla.
Puedo hacerlo funcionar al no ir desde la raíz de URL, p.
<servlet-mapping>
<servlet-name>ControllerServlet</servlet-name>
<url-pattern>/pages/*</url-pattern>
</servlet-mapping>
Pero eso no es lo que quiero. ¿Hay alguna forma de hacerlo funcionar con URL "raíz"?
Gracias por las respuestas, parece compleja por lo que me va a tomar un tiempo para llegar a los filtros, por ahora sólo voy a dejar todo en/pages/ – Mark
Puede hacer coincidir solicitudes sin extensión con path.match ("^. * \\/[^ \\.] * $") Y reenviarlo a su controlador frontal. – Ring
@BalusC ¿cuál es el punto de 'substring'? – user2418306