| Registrar a un usuario en un sitio Web con Struts 1.2 |
| Paso 1: Flujo de ejecución de una aplicación Struts |
Este es el flujo de ejecución de nuestro ejemplo cuando un usuario se quiere registrar a un Sitio Web siguiendo el framework Struts versión 1.2.

- 1. petición
- el Navegador realiza una petición a una aplicación Struts
- esta petición es procesada por un Objeto de tipo ActionServlet
- 2. propaga
- el Objeto de tipo ActionServlet propaga los datos del Formulario e invoca al método validate(...) del objeto de tipo RegistroActionForm que hereda de ActionForm
- si la validación es incorrecta
- se retorna el error o errores de validación detectados encapsulados en un Objeto de tipo ActionErros
- si la validación es correcta
- 3. delega
- el objeto de tipo ActionServlet delega procesos específicos de petición a un objeto de tipo RegistroAction que hereda de Action
- 4. interfaz
- el Objeto de tipo RegistroAction interactúa con Componenentes del Modelo
- 5. redirige
- el Objeto de tipo ActionServlet redirige el control a una página JSP
- 6. respuesta
- la página JSP se renderiza y es enviada al navegador
Arquitectura Modelo-Vista-Controlador con Struts
- Struts provee un Framework
- para crear aplicaciones orientadas a la Arquitectura MVC con una serie de librerías y utilidades prefabricadas
- que puede ser extendido por diferentes puntos, así de esta forma las aplicaciones se pueden personalizar tanto como queramos
Componentes básicos de Struts
Las piezas que forman parte del puzzle de Struts son el Framework Base y las Etiquetas Estándares de Struts
- Framework Base
- provee el núcleo de la funcionalidad del MVC y se compone de los bloques de construcción de nuestra aplicación.
- el bloque más importante es el Servlet Controlador ActionServlet.
- el resto del Framework Base está compuesto de Clases base que nuestra aplicación heredará
- entre estas Clases se encuentran las Clase Action y las Clases ActionForm
- las Clases de tipo Action
- son utilizadas por las Clases ActionServlet para procesar peticiones específicas
- las Clases de tipo ActionForm
- son utilizadas para captar los datos de los Fornularios HTML y comprobar que los datos introducidos por el usuario son correctos
- Etiquetas Estándares de Struts
- Struts contiene un conjunto de Etiquetas Estándares para incrementar la funcionalidad de las páginas JSP
- las Etiquetas Estándares más utilizadas son html, bean y logic
- html
- se utiliza para generar formularios HTML que interactúan con las APIs de Struts
- bean
- se utiliza para interactuar con JavaBeans
- logic
- se utiliza para implementar condiciones de lógica de forma limpi
De la misma forma que una aplicacions Web utiliza un
deployment descriptor llamado
web.xml para inicializar recursos como Servlets y Etiquetas Personalizadas, Struts utiliza un
fichero de configuración llamado
struts-config.xml para sus propios recursos.