Copyright  Altran SDB, 2001. All rights reserved. 1  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José.

Slides:



Advertisements
Presentaciones similares
1 Datos sobre webloggers Datos extraidos de la encuesta a webloggers disponibles en la web de los autores.
Advertisements

Desarrollo de aplicaciones en n- capas
RED NACIONAL DE TELEDETECCIÓN AMBIENTAL (RNTA)
Curso de Java “Java para Web” Rogelio Ferreira Escutia.
Rogelio Ferreira Escutia Modelo Vista Controlador.
1 INFORME RESUMEN SOBRE EL NIVEL DE UTILIZACION DE LAS TIC EN LAS EMPRESAS GALLEGAS ( Resumen PYMES ) Noviembre de 2004.
1 INFORME RESUMEN SOBRE EL NIVEL DE UTILIZACION DE LAS TIC EN LAS EMPRESAS GALLEGAS (MICROEMPRESAS, resultados provisionales) 29 de julio de 2004.
Nau Gran dHivern Intr. a la creación y gestión de páginas web Introducción a la web.
Internet y tecnologías web
CREACIÓN DE PÁGINAS WEB CON SHAREPOINT DESIGNER 2007 (Sesión 2) Ricardo Ferrís Castell ( ) Departament D Informàtica.
02- PLAN DOCENTE Febrero 2009 SIES – SISTEMA INTEGRADO DE EDUCACIÓN SUPERIOR.
Respuestas Buscando a Nemo.
Red Social: “Un millón de Amigos”.
Fundamentos de Diseño de Software INFT.1
Introduccion a UML Wilson Peláez Hernández
Esquema de Mapeo de Base de Datos Relacionales a Objetos
C ONFIGURACIÓN C UENTAS D E C ORREO ZTE N281. C ONFIGURACIÓN C UENTAS D E C ORREO ZTE N281 1-Ingrese a menú 2-Ingrese a Mensajes 3-Ingrese a Correo 4-Seleccione.
Patrón MVC con STRUTS.
1 Reporte Componente Impacto Por Orden Territorial Por Departamento No Disponible ND *Los indicadores para el año 2008 no fueron calculados.
CGI I La mayor parte de los elementos HTML de que disponemos permite al visitante visualizar los contenidos de un sitio, pero no interactuar con él. Dicho.
Phone2Wave-Server Manual de Operación.
Programación Distribuida
"java del lado del servidor" Servlet y JSP Java Server Pages.
C REACIÓN DE B LOGS EN ESPOL Profesora: Eva María Mera Intriago Escuela Superior Politécnica del Litoral Impulsando la sociedad del conocimiento Instituto.
Oscar Navarrete J. Jorge Gutiérrez A.
Índice 1. Introducción, objetivos y justificación del proyecto.
Servlets Servlets.
JSP Copyright ISIPE – Instituto de Servicios Informáticos para Empresas – Universidad Siglo 21 – Cualquier copia u otro uso debe ser autorizado expresamente.
Introduccion a las páginas WEB HTML
Curso de Java y Aplicaciones Web
Java 2 Platform Enterprise Edition
Proyecto Fin de Carrera E.T.S. Ingeniería Informática 26 de Septiembre de 2006 DESARROLLO DE UN COMPONENTE TECLADO ALUMNO: Fco. Javier Sánchez Ramos TUTORES:
INTRODUCCIÓN A UML Oscar Miguel Alonso Moreno.
Ingeniería del Software
Trabajo Practico – Base de Datos II
1  2008 Universidad de Las Américas - Ingeniería de Software : Dr. Juan José Aranda Aboy ACI491: Ingeniería de Software Unidad 7: Proceso de Ingeniería.
DIAGRAMA DE COMPONENTES INTEGRANTES Córdova Vásquez Giovanny Escobar Alvares Calixto Gomez Quinteros Adelaida Pinto Flores Yarmila.
Objetivo. Dado que ya tenemos la planificación temporal del proyecto, que responde a: ¿Qué se hará?, ¿Quién lo hará?, y ¿Cuándo lo hará? ¿Qué recursos.
“¿Qué Pienso de mi futuro?”
RESUMENCURSO STRUTS 2 Resumen de lo visto en este tercer módulo: VISTA del framework Struts 2 Debes tener los conceptos muy claros sobre: Results UI Tags.
Ing. CIP Fabián Silva Alvarado
Clases y objetos La unidad fundamental de programación OO son las clases. Conjunto de métodos y semántica Qué se va a hacer POO Clase: que define la implementación.
“Android – Hola Mundo” Rogelio Ferreira Escutia. 2 Creación del Proyecto.
Implementación del patrón Modelo-Vista-Controlador
Modelado Arquitectónico
Java Server Faces.
InfoPath Ventajas y Uso.
SPRING MVC.
J2EE Java Enterprise edition eilin chang Matthew pabon Gabriel vega.
Marco Conceptual para la Gestión de Conocimiento de entornos de colaboración: aplicación a la creación de un portal de revistas electrónicas EUITIO Daniel.
CURSO STRUTS 2 RESUMEN Resumen de lo visto en este primer módulo de INTRODUCCIÓN al framework Struts 2 Debes tener los conceptos muy claros sobre: Framework.
MÓDULO 1: Introducción al framework Struts 2
Universidad Central de Venezuela Facultad de Ciencias Postgrado en Ciencias de la Computación Sistemas Distribuidos Albany Márquez.
FRAMEWORK VS Código fuente
Aplicaciones Web de Servidor
Introducción al Lenguaje. ¿ Qué es PHP ? O Hypertext Pre-processoes (PHP) es un lenguaje de "código abierto" interpretado, de alto nivel, embebido en.
I NGENIERÍA DE S OFTWARE L ABORATORIO IX Struts Eduardo Saavedra A. 27/10/2009.
Jakarta Struts version Juan Manuel Zorrilla Gamarra Mario Titto Acostupa.
Introducción a UML Departamento de Informática Universidad de Rancagua
CONTRATOS DE CLIENTES Orlando Sedamano Cornejo Marco Bustinza
SOFTTEK INTERNAL © Copyright All Rights Reserved. Valores Corporativos Softtek S.A. de C.V. Struts Academia Java.
Guadalupe Andrade Mociño.  Significa Modelo Vista Controlador  Es un patrón de diseño  Esta compuesto por tres grandes capas: modelo, vista y controlador.
Your Logo ING. FREDY ALEXANDER MARTINEZ. Here comes your footer  Page 2 Este patrón fue descrito por primera vez por Trygve Reenskaug en 1979, y la implementación.
Aclaraciones al modelo MVC del Framework de Justicia
Servicios Web Conjunto de aplicaciones o de tecnologías con capacidad para interoperar en la Web. Estas aplicaciones o tecnologías intercambian datos entre.
Helpers en ASP.NET MVC3. Introducción Los helpers son una herramienta muy potente para generar nuestro propio código HTML dentro de las vistas. Los helpers.
Softlogia S.R.L. Formación de Recursos Humanos Java Server Faces Instructor: Martin R. Baspineiro.
Introducción a programación web Martin Esses. Formularios HTML se utilizan para pasar datos a un servidor. Un formulario HTML puede contener elementos.
JSF Simplificando nuestro trabajo. JSF – Java Server Faces Celula Creative SUN 2 La principal intención es liberar al programador de aspectos Web Pretende.
Introducción a programación web Martin Esses. En las presentaciones anteriores, vimos como enviar datos a un controlador usando POST y como generar formularios.
Transcripción de la presentación:

Copyright  Altran SDB, All rights reserved. 1  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Clase 8: Introducción a Struts ACI – 843 JAVA II

Copyright  Altran SDB, All rights reserved. 2  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Objetivos Entender el Patrón de Diseño Modelo – Visualización – Controlador (Model-View- Controller MVC) Conocer la funcionalidad y organización del framework Simplificar el “first touch” Saber cómo hacerlo funcionar

Copyright  Altran SDB, All rights reserved. 3  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Contenidos El Patrón MVC Arquitectura de Struts Model View Controller Referencias Conclusiones

Copyright  Altran SDB, All rights reserved. 4  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy ¿Qué es Struts? Struts es una herramienta de soporte para el desarrollo de aplicaciones Web bajo el patrón MVC bajo la plataforma J2EE (Java 2, Enterprise Edition). aplicaciones WebpatrónMVC J2EE Se desarrollaba como parte del proyecto Jakarta de la Apache Software Foundation, pero actualmente es un proyecto independiente conocido como Apache Struts.Jakarta Apache Software FoundationApache Struts Struts permite reducir el tiempo de desarrollo. Su carácter de "software libre" y su compatibilidad con todas las plataformas en que Java Entreprise esté disponible, lo convierte en una herramienta altamente disponible.software libre

Copyright  Altran SDB, All rights reserved. 5  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy ¿En qué consiste? Es un framework de la capa de presentación que implementa el patrón MVC en Java: Un framework es la extensión de un lenguaje mediante una jerarquía de clases que implementan una funcionalidad y que (opcionalmente) pueden ser extendidas. MVC 2

Copyright  Altran SDB, All rights reserved. 6  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Funcionamiento Struts implementa el patrón del Modelo Vista Controlador (MVC) el cual se utiliza ampliamente y es considerado de gran solidez.patrónModelo Vista Controlador (MVC) De acuerdo con este modelo, el procesamiento se separa en tres secciones diferenciadas, llamadas el modelo, las vistas y el controlador: MVC

Copyright  Altran SDB, All rights reserved. 7  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Funcionamiento (2) Cuando se programan aplicaciones Web con el patrón MVC, siempre surge la duda de usar un solo controlador o usar varios controladores, pues si se considera mejor usar un solo controlador para tener toda la lógica en un mismo lugar, surge un grave problema: dicho controlador se convierte en lo que se conoce como "fat controller", es decir un controlador saturado de peticiones. Struts surge como la solución a este problema, pues implementa un único controlador (ActionServlet) que evalúa las peticiones del usuario mediante un archivo configurable (struts- config.xml).

Copyright  Altran SDB, All rights reserved. 8  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy ¿Cómo trabaja?

Copyright  Altran SDB, All rights reserved. 9  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Patrón MVC

Copyright  Altran SDB, All rights reserved. 10  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Patrón MVC (2)

Copyright  Altran SDB, All rights reserved. 11  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Arquitectura funcional básica Navegador 1. Solicitud2. Acciones 3. Resultados 4. Redireccionamiento 6. Resultado 5. Consulta Controller (Servlet) Model (JavaBeans y/o EJBs) View (JSPs, TagLibs)

Copyright  Altran SDB, All rights reserved. 12  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Navegador 1. Solicitud4. Perform 6. Resultado 7. Redireccionamiento 9. Resultado 8. Consulta Objetos de Negocio JavaBeans View (JSPs, TagLibs) config XML Action 5. Acciones Model 2. Sets y Validate 3. Resultado Controller (Servlet) Action Form Arquitectura funcional básica (2)

Copyright  Altran SDB, All rights reserved. 13  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Clases que proporciona

Copyright  Altran SDB, All rights reserved. 14  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Modelo Model = ActionForms + Actions + Objetos de Negocio ActionForms: Validador de formularios Actions: Ejecutor de acciones sobre los Objetos de Negocio: Patrón de diseño Fachada (Facade) Objetos de Negocio: Entidades que representan los conceptos del negocio, sus características y comportamiento

Copyright  Altran SDB, All rights reserved. 15  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Son JavaBeans con las siguientes características: Extienden org.apache.struts.action.ActionForm Implementan set y get para cada input del formulario Definen un método validate que retorna una lista de errores Opcional: método reset para reinicializarse Modelo (2): ActionForms

Copyright  Altran SDB, All rights reserved. 16  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Ejemplo de ActionForms public final class ClienteForm extends ActionForm { private String nombre = null; ActionErrors errors = null; Cliente cliente = null;... public ClienteForm() {... // Crear u obtener el objeto... cliente = new Cliente(); errors = new ActionErrors;... } public String getNombre() { return (this.nombre); } public void setNombre(String nombre) { try { cliente.setNombre(nombre); } catch (Exception e) { errors.add("nombre", new ActionError("error.nombre")); } this.nombre = nombre; } public void reset( ActionMapping mapping, HttpServletRequest request) { this.nombre = null; } public ActionErrors validate( ActionMapping mapping, HttpServletRequest request) {... return errors; }

Copyright  Altran SDB, All rights reserved. 17  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Modelo (3) ActionForms No debe tener nada que corresponda a la lógica de negocio. Debe ser un Firewall entre el usuario y el Action que detenga todo tipo de errores de incompletitud o inconsistencia. Si el formulario se desarrolla en varias páginas (interfaces Wizard) el ActionForm y el Action deberán ser los mismos. Se debe declarar en struts-config.xml

Copyright  Altran SDB, All rights reserved. 18  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Modelo (4) Action Son clases que extienden org.apache.struts.action.ActionForm Implementan el método perform(ActionMapping, ActionForm, HttpServletRequest, HttpServletResponse) que retorna un ActionForward ActionMapping indica los posibles valores de retorno del ActionForward según el struts-config.xml ActionForm es el ActionForm que procesó el formulario (es nulo si no se ha definido un ActionForm en el struts- config.xml)

Copyright  Altran SDB, All rights reserved. 19  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Relación comando - modelo Diagrama en UML que muestra la relación del Comando (ActionServlet) al Modelo (Action)

Copyright  Altran SDB, All rights reserved. 20  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy

Copyright  Altran SDB, All rights reserved. 21  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Vistas La Vista de una aplicación Struts generalmente está construida usando tecnología Java Server Pages (JSP). Las páginas JSP pueden contener texto HTML estático y contenido dinámico basado en la interpretación de etiquetas de acción especiales El entorno JSP incluye un conjunto de etiquetas estándar y posibilita construir nuestra propia librería de etiquetas

Copyright  Altran SDB, All rights reserved. 22  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Vistas (2) Struts incluye una extensa librería de etiquetas personalizadas que facilitan la creación de interfaces de usuario (User Interface - UI) completamente internacionalizadas. Estas interfaces interactúan amigablemente con los beans ActionForm que son parte del Modelo del sistema.

Copyright  Altran SDB, All rights reserved. 23  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Vistas (3): Algunas etiquetas

Copyright  Altran SDB, All rights reserved. 24  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Internacionalización Struts provee la facilidad de crear aplicaciones multilenguaje. Para lograrlo, debe crearse un archivo llamado ApplicationResources.properties login.titulo=UDLA- ACI 843 JAVA II NetBeans login.labelusuario=Usuario : login.labelpassword=Password : Para cada idioma alternativo se creará un archivo nuevo terminado en "_xx.properties“ Después debe configurarse el lenguaje a utilizar en el archivo struts-config.xml.

Copyright  Altran SDB, All rights reserved. 25  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Internacionalización (2) Se debe configurar el Tag /servlet/init param/paramname application y ponerle como param-value la localización del archivo con el idioma principal: action... application com.java2.clases.ApplicationResources … Por último, En las paginas JSP se utiliza el Tag donde clave y subclave corresponden al texto por el que se reemplazará según el idioma del usuario. Ejemplo:

Copyright  Altran SDB, All rights reserved. 26  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Controlador Recibe las solicitudes del cliente. Decide qué función de la lógica de negocio se va a realizar (Action). Delega la responsabilidad para producir la siguiente fase del interfase de usuario en un componente Vista apropiado.

Copyright  Altran SDB, All rights reserved. 27  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Clases Action Son clases que extienden org.apache.struts.action.Action El objetivo de una clase Action es procesar una solicitud, mediante su método execute(), y devolver un objeto ActionForward que identifica dónde se debería reenviar el control (por ejemplo a una JSP) para proporcionar la respuesta apropiada. ActionMapping indica los posibles valores de retorno del ActionForward según el struts-config. xml

Copyright  Altran SDB, All rights reserved. 28  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy

Copyright  Altran SDB, All rights reserved. 29  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy El archivo struts-config.xml Es el archivo que le define a Struts el workflow de la aplicación. Posee dos elementos importantes: 1. Sección que contiene nuestras definiciones de beans de formulario. Posee dos atributos: – name: Es un identificador único para este bean, que será usado para referenciarlo en los correspondientes action Mappings. – type: El nombre de la clase Java de nuestro bean de formulario 2. Esta sección contiene nuestras definiciones de acciones. Posee tres atributos importantes: – name: Es un identificador único para este bean de formulario para usar con esta acción. – type: El nombre de la clase Java de nuestra Acción – path: El path a la clase Action en relación al contexto de la aplicación.

Copyright  Altran SDB, All rights reserved. 30  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Ejemplo Si se desea crear la aplicación Struts más simple posible, por ejemplo una página con un saludo, deberá hacerse lo siguiente: 1.Una página JSP (la presentación) 2.Una clase Action (componente del controlador) 3.La clase Action debe definirse en el struts- config.xml correctamente

Copyright  Altran SDB, All rights reserved. 31  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Diagrama de clases Como puede verse, solamente tendríamos dos archivos: una clase que hereda de struts.Action y una JSP con la presentación. La clase Action se configura en el struts-config.xml y se convierte en parte del controlador.

Copyright  Altran SDB, All rights reserved. 32  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Diagrama de colaboración Cuando la aplicación recibe una petición, Struts decidirá que debe cargar esa clase y través de ella cargará la JSP. Así se puede ver en el siguiente diagrama: Una petición llega a Struts (una URL). Struts mira en su “mapa” (el fichero struts-config.xml), y deduce que tiene que cargar la ClaseAction. Esta clase está configurada para que cargue una pagina JSP. Como se puede observar,no se carga la JSP directamente, hay que pasar por el controlador.

Copyright  Altran SDB, All rights reserved. 33  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Diagrama de secuencia Pasos seguidos por la aplicación en el plano temporal. Por lo general, en cualquier aplicación Web siempre se sigue un mismo esquema: 1.Se muestra un formulario 2.Se rellena 3.Se valida 4.Se manda a una página que realiza la lógica de negocio 5.Se muestra el resultado. Obviamente, este no es el ejemplo más clásico de una acción de Struts.

Copyright  Altran SDB, All rights reserved. 34  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy En Struts se necesitaría: 1.Una clase Action (su nombre podría empezar por Edit) encargada de cargar el formulario. 2.Un Bean tipo Form cuyos campos u atributos de instancia coinciden con los campos del formulario. (al ser tipo JavaBean tendrá los correspondientes métodos set y get para los atributos). Este form y sus atributos son un requisito imprescindible. 3.Una JSP que contiene el formulario citado. Los campos deben coincidir con los definidos en el Bean de formulario 4.Una clase Action (su nombre podría empezar por Save) encargada de pasar la instancia del formulario al Bean de Logica de Negocio, esperar su resultado y redirigir el flujo a una JSP de error o de éxito. 5.Un Bean de lógica de negocio (El que hace algo con los datos del formulario) 6.Una JSP para mostrar un mensaje en caso de éxito (o puede ser la misma del principio) 7.Una JSP para mostrar los errores en caso de error (o puede usarse una genérica). Struts permite cierta flexibilidad en cuanto a nombres, pero conviene especificar cual es Action, cual es Form, cual es Bean de negocio, etc.. así como meterlos en subpaquetes con ese nombre. Diagrama de secuencia (2)

Copyright  Altran SDB, All rights reserved. 35  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Diagrama de clases (2) Este sería el conjunto de clases utilizadas y sus relaciones: La clase edit también podría usar el formulario, aunque en principio, no tiene porqué.

Copyright  Altran SDB, All rights reserved. 36  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Diagrama de colaboración (2)

Copyright  Altran SDB, All rights reserved. 37  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Conclusiones Struts suministra un framework para implementar un diseño MVC en poco tiempo. Puede emplearse en cualquier aplicación Web independientemente de su funcionalidad y cuestiones de rendimiento o arquitectura. Es el resultado del trabajo de una comunidad con experiencias y necesidades heterogeneas que han pensado en términos generales. Puede extenderse aunque es recomendable seguir su filosofía de diseño.

Copyright  Altran SDB, All rights reserved. 38  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Bibliografía Introducción al framework Struts.PDF STRUTS.pdf ales.php?pagina=strutsbhttp:// ales.php?pagina=strutsb Aplicación paso a paso con Struts Como manejar Struts con Xdoclet

Copyright  Altran SDB, All rights reserved. 39  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Referencias en Internet struts/?dwzone=javahttp://www-128.ibm.com/developerworks/library/j- struts/?dwzone=java netbeans4/struts-el-netbeans4.shtmlhttp:// netbeans4/struts-el-netbeans4.shtml

Copyright  Altran SDB, All rights reserved. 40  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy EJEMPLO MÁS COMPLEJO DE STRUTS Aplicación de alta (creación e ingreso de nuevos usuarios) a un sistema.

Copyright  Altran SDB, All rights reserved. 41  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Funcionalidad deseada Ahora veremos un ejemplo más acorde con la funcionalidad esperada de una aplicación Web cualquiera. Se trata de una aplicación de alta de usuario, un tipo de aplicación muy común y que presenta en muchos sistemas. Veremos como implementar esto con struts. En cualquier otro entorno bastaría con crear un formulario y una página que realiza el alta y da el mensaje correspondiente; pero aquí no será tan simple. Entrada de aplicación: Un formulario de datos: username, password, edad, fechanacimiento y profesion Salida de aplicación : Una página que muestra si se ha dado de alta correctamente.

Copyright  Altran SDB, All rights reserved. 42  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Diagrama de clases

Copyright  Altran SDB, All rights reserved. 43  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Diagrama de Colaboración

Copyright  Altran SDB, All rights reserved. 44  2006Universidad de Las Américas - Escuela de Ingeniería - Seguridad Informática - Dr. Juan José Aranda Aboy Pasos en NetBeans Crear proyecto Web con la opción Struts. Dejar valores asumidos para el nombre de servlet (action) y para el Action URL Pattern ( *.do) 2.El proyecto genera automáticamente los archivos: 1. web\index.JSP 2. web\welcomeStruts.JSP 3. web\WEB-INF\struts-config.xml 4. src\java\com\myapp\struts\ApplicationResoure.properti es 3.Utilizar y adaptar apropiadamente los archivos del ejemplo en Struts - Implementación del patron MVC en WebStruts - Implementación del patron MVC en Web