En este paquete se encuentra la interfaz Control
que implementan todos
los componentes Modelo de las JSP y el componente Control representado mediante la
clase ControlFilter
, que es un Filtro (implementa la interfaz
javax.servlet.Filter
) que intercepta todas las peticiones a la Aplicación
Web y toma decisiones sobre qué componente Modelo se ejecutará en cada
caso.
También están todas las clases que representan los distintos
componentes Modelo de la Aplicación, y que, por lo tanto, implementan la interfaz
Control
.
Para el desarrollo de la Aplicación Web se ha utilizado el paradigma de diseņo Modelo 2, Modelo Vista Controlador (MVC).
Aplicándolo a los Servlets y JSP, el paradigma del Modelo 2 se ha implementado la siguiente manera:
Control.
javax.servlet.Filter
) diseņado para aceptar y dirigir de forma apropiada las
peticiones y las respuestas enviadas por el cliente. La labor del filtro es comprobar el nombre del recurso requerido por la
petición (basándose en la URL), y buscar una implementación de la
interfaz Control
que tenga ese mismo nombre, pero con la primera letra en
mayúsculas, y ejecutar su método doLogic
definido en esa
interfaz, si existe.
Por lo tanto, todos los componentes Modelo, que contienen la lógica de
negocio asociada a cada JSP de la Aplicación, deben implementar la interfaz
Control
. Al hacerlo, contendrán el método doLogic
, que
es donde se ejecuta verdaderamente esa lógica de negocio. Este método
recibe un objeto HttpServletRequest
y otro HttpServletResponse
con la petición y la respuesta del cliente.
En el método doLogic
se preparan los datos que se
presentarán en la JSP, principalmente colocando datos procesados en el
ámbito de la petición. Al finalizar la ejecución del m
étodo, se pasarán la petición y la respuesta (modificadas si es
el caso) al resto de los filtros de la cadena de filtros, para llegar finalmente a la
JSP destino de la petición, donde se utilizan los datos generados por el
método doLogic
correspondiente para generar la respuesta HTML
dinámica que se enviará finalmente al cliente.