Menu

Patrón MVC con Struts Framework

 MVC es un patrón de diseño que especifica las capas que componen una aplicación web

La capa intermedia de una aplicación web puede dividirse en tres bloques funcionales con Struts Framework:

  1. Controlador: Es el cerebro de la aplicación, todas las peticiones a la capa intermedia se realizan desde el cliente son dirigidas al controlador. Este determina las acciones a realizar para cada petición e invocar al resto de los componentes de la aplicación. En aplicaciones J2EE el controlador se implementa mediante un servlet de java.
  2. Vista: Es la encargada de generar las respuestas que deben ser enviadas al cliente. Cuando estas respuestas tienen que incluir datos proporcionados por el controlador, el código XHTML será dinámico, por lo tanto será una página JSP.
  3. Modelo: Es la lógica del negocio de la aplicación, incluye el acceso a datos y su manipulación. El modelo está formado por una serie de componentes de negocios independientes de (controlador/vista), permitiendo su re utilización y desacoplamiento entre las capas. En Java el modelo se implementa con clases o EJB´s.

Clase ActionServlet

La clase ActionServlet Constituye el punto de entrada de la aplicación, recibiendo todas las peticiones http que llegan del cliente, se trata de un servlet http que hereda de HttpServlet.

El objeto HttpServlet cada vez que recibe una petición del cliente y a fin de determinar la operación a realizar extrae la última parte de la URL y la compara con la información almacenada en el archivo de configuración struts-config.xml, a partir de la cual el objeto lleva acabo la instanciación del JavaBean(ActionForm) asociado a la acción, después deposita la instancia en el contexto correspondiente, pasando a continuación el control de la petición al objeto Action encargado de procesarla.

 

Registro de ActionServlet en el archivo de configuración web.xml

Como podemos ver, estamos registrando la clase ActionServlet en el archivo de configuración de nuestra aplicación web, esto con el fin de que esta clase controle las peticiones del cliente, también estamos especificando el registro de nuestro archivo de configuración de struts llamado struts-config.xml que es el encargado de recibir las peticiones y asignarlas a una acción.

 

Una vez que ya registramos nuestro controlador y archivo de configuración de strust tenemos que crear una clase de acción (Action), después un formulario (ActionForm) y registrarlos en nuestro archivo de configuración de struts.

Creación del JavaBean para el ActionForm

Como se puede apreciar un JavBean no es más que una clase java con sus métodos set (…) y get (…). Esta será asociada al objeto Action para que cuando se haga la solicitud el controlador ActionServlet lo llena automáticamente con la información del formulario. El JavaBean debe contener los mismos atributos y mismos tipos que el formulario que lanza la petición.

Creación del Objeto Action

Este objeto es el encargado de procesar la petición del cliente, cuenta con un método llamado execute(…) que es el encargado de realizar las acciones del negocio. Una vez que ActionServlet llena el objeto ActionForm con la información del formulario pasa el control al objeto Action que se encargara de procesar la petición.

Nuestro método execute(…) cuenta con cuatro parámetros mapping: Este objeto nos permitirá redireccionarnos a alguna página definida en el archivo de configuración, form: Este trae una referencia al objeto ActionForm que se llenó con la información del formulario que realizo la petición, request y response: Estos dos contienen la funcionalidad de los servlets de java.

Ahora debemos tener una página donde redireccionarnos una vez que termino la ejecución del método execute(…).

 

Como se puede apreciar nuestra página JSP cuenta con un formulario el cual hace referencia a la acción a realizar, en este caso la acción se llama: “/consulta”. Esta cadena será buscada en el archivo struts-config.xml para su posterior manejo.

Una vez que ya tenemos nuestro objeto Action, ActionForm y nuestra página para ser redirigidos, procedemos a asociarlos en el archivo de configuración struts-config.xml para hacer que funcione nuestra aplicación struts.

Descripción de los atributos del archivo struts-config.xml

  1. Form-bean: son los JavaBeans que se crearon para almacenar información de las peticiones, tienen que ser registrados en este archivo para su uso.
  2. Action: indica la acción a realizar:
  3. Path: es el nombre de la petición.
  4. Name: nombre del ActionForm asociado a la acción, registrado previamente en Form-beans.
  5. Unknown: significa que esa acción se ejecutara por default en caso de tener más objetos Action.
  6. Type: Nombre cualificado de la clase Action que controlara la petición.
  7. Forward: aquí se define el nombre de la página a la que seremos direccionados después de procesar la petición.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *