UNIVERSIDAD LAICA “ELOY ALFARO” DE MANABÍFACULTAD DE CIENCIAS INFORMÁTICASTEMA DE INVESTIGACIÓN:STRUTS 2MATERIA:INGENIERIA...
Introducción¿Qué es Struts?Es un framework que implementa el patrón de arquitectura MVC en JavaUn framework es la extensió...
PLANTEAMIENTO DE PROBLEMAEn la época en la que vivimos y nos desenvolvemos como personas naturaleso jurídicas es relevante...
ObjetivosObjetivo GeneralDesarrollar un aplicativo web, tomando como herramienta principal en eldesarrollo el uso del Fram...
JUSTIFICACIÓNLa utilización de Framework en la actualidad se encuentra en masivo crecimientopermitiendo el desarrollo de a...
FrameworkLa palabra inglesa "framework" (marco de trabajo) define, en términos generales,un conjunto estandarizado de conc...
Struts 2Struts es un framework para el desarrollo de aplicaciones Web bajo el patrón MVCen la plataforma Java EE. Su carác...
Estrictamente hablando, las acciones no necesitan implementar una interface oextender de alguna clase base. El único requi...
VENTAJAS DE USAR STRUTSA continuación se mencionan las ventajas de usar Struts en el desarrollo de lacapa de presentación ...
Desventajas:• Se requiere por parte de los desarrolladores un conocimiento profundo ydetallado de Servlets y JSPs lo que r...
Diferencias entre Strut y Strut 2Clases ActionStrut 1.- Requiere clases de acción para extender una clase base abstracta.S...
Materiales UtilizadosEntorno de Desarrollo Integrado= NeetbeansLenguaje de Programación= JavaFramework= Strut 2Sistema de ...
Configurar el filtro.Librerias- JDK- ServidorLibrerias: Struts2JDK de Java: 1.7Servidor: Apache Tomcat 7<?xml version="1.0...
¿Que debe contener la o las clases que sirven decontrolador?.
Declaración de un action en el Struts.xmlEtiquetas StrutsLas etiquetas que struts2 nos provee nos ayudan mucho al momento ...
AplicacionesCalculadora Struts2Login
HolaMundo en Strut2Aplicación Automática de Ejemplo de Netbeans
Errores en el IDE EclipseInstalación NetBeans Prototipo Calculadora
DISEÑO Y CONSTRUCCIÓN DE LA PROPUESTAUn framework o infraestructura digital, es una estructura conceptual y tecnológica de...
CODIFICACIÓN DEL PROYECTO:Bello Flores Ramon DavidDelgado Alonso Henry HarryFlores Anchundia Victor ManuelJalca Saltos Lui...
ConclusionesAl utilizar framework para desarrollar aplicaciones web obtendremos una ayuda enal momento de generar codigo o...
DificultadesLas dificultades encontradas en el desarrollo de las aplicaciones de prueba para elframework Struts2 fueron.Co...
Referencias BibliográficasConcepto de Frameworkhttp://www.programacion.com/articulo/manual_basico_de_struts_156Concepto de...
Próxima SlideShare
Cargando en…5
×

Documentacion struts 2

724 visualizaciones

Publicado el

1 comentario
0 recomendaciones
Estadísticas
Notas
  • Sé el primero en recomendar esto

Sin descargas
Visualizaciones
Visualizaciones totales
724
En SlideShare
0
De insertados
0
Número de insertados
4
Acciones
Compartido
0
Descargas
22
Comentarios
1
Recomendaciones
0
Insertados 0
No insertados

No hay notas en la diapositiva.

Documentacion struts 2

  1. 1. UNIVERSIDAD LAICA “ELOY ALFARO” DE MANABÍFACULTAD DE CIENCIAS INFORMÁTICASTEMA DE INVESTIGACIÓN:STRUTS 2MATERIA:INGENIERIA DE SOFTWARE IIINTEGRANTES:VILLAMAR ALCIVAR PEDRO ALEXANDERPROFESOR:ING. JORGE PINCAYCURSO:QUINTO NIVEL “B”AÑO LECTIVO:2013 – 2014
  2. 2. Introducción¿Qué es Struts?Es un framework que implementa el patrón de arquitectura MVC en JavaUn framework es la extensión de un lenguaje mediante una o más jerarquíasde clases que implementan una funcionalidad y que (opcionalmente) puedenser extendidas. El framework puede involucrar TagLibraries.El patrón de arquitectura MVC (Model-View-Controller) es un patrón que definela organización independiente del Model (Objetos de Negocio), la View (interfazcon el usuario u otro sistema) y el Controller (controlador del workflow de laaplicación:El navegador genera una solicitud que es atendida por el Controller (un Servletespecializado). El mismo se encarga de analizar la solicitud, seguir laconfiguración que se le ha programado en su XML y llamar al Actioncorrespondiente pasándole los parámetros enviados. El Action instanciará y/outilizará los objetos de negocio para concretar la tarea. Según el resultado queretorne el Action, el Controller derivará la generación de interfaz a una o másJSPs, las cuales podrán consultar los objetos del Model a fines de realizar sutarea.
  3. 3. PLANTEAMIENTO DE PROBLEMAEn la época en la que vivimos y nos desenvolvemos como personas naturaleso jurídicas es relevante estar en constante cambio, estos cambios sonaplicados en varios aspectos cotidianos tales como, en el desarrollo deaplicaciones web que nos brindan servicios a los usuarios para ayudarnos asolucionar algún inconveniente.
  4. 4. ObjetivosObjetivo GeneralDesarrollar un aplicativo web, tomando como herramienta principal en eldesarrollo el uso del Framework de Java Struts 2, la cual va a permitir tenerun login el cual servirá para proyectos posteriores.Objetivo EspecíficoImplementar el Framework Strut 2 en la aplicación a crearConcebir el Funcionamiento del Framework StrutAplicar los Conocimientos Adquiridos con el uso de este framework en eldesarrollo de aplicaciones web JavaEntender el patrón Modelo Vista Controlador
  5. 5. JUSTIFICACIÓNLa utilización de Framework en la actualidad se encuentra en masivo crecimientopermitiendo el desarrollo de aplicaciones completas en el sentido de que son devital ayuda para el programador como para el usuario final.Considerando el avance de las tecnologías, y la obligación de adaptación a la quese está expuesto, es conveniente la creación de sistemas o aplicaciones que leinformen a los usuarios los gastos o los egresos que se han producido en el díacon el fin de que a estos se encuentren informados sobre el total del capital quetiene en existencia.
  6. 6. FrameworkLa palabra inglesa "framework" (marco de trabajo) define, en términos generales,un conjunto estandarizado de conceptos, prácticas y criterios para enfocar un tipode problemática particular que sirve como referencia, para enfrentar y resolvernuevos problemas de índole similar.En el desarrollo de software, un framework o infraestructura digital, es unaestructura conceptual y tecnológica de soporte definido, normalmente conartefactos o módulos de software concretos, que puede servir de base para laorganización y desarrollo de software. Típicamente, puede incluir soportede programas, bibliotecas, y un lenguaje interpretado, entre otras herramientas,para así ayudar a desarrollar y unir los diferentes componentes de un proyecto.Representa una arquitectura de software que modela las relaciones generales delas entidades del dominio, y provee una estructura y una especial metodología detrabajo, la cual extiende o utiliza las aplicaciones del dominio.¿QUÉ ES UN FRAMEWORK WEB J2EE?Un framework, es una estructura software compuesta de componentespersonalizables eintercambiables que permiten desarrollar una aplicación. Enotras palabras, un framework se puede considerar como una aplicación genéricaincompleta y configurable a la que podemos agregarle algunas piezas paraconstruir una aplicación concreta.Los objetivos principales de los frameworks son: acelerar el proceso de desarrollo,reutilizar código ya existente y promover buenas prácticas de desarrollo como eluso de patrones.En particular, un framework web J2EE, es un conjunto de componentes desoftware, por ejemplo clases JAVA, descriptores y archivos de configuración enXML, basados en la plataforma J2EE y, que constituyen un diseño reutilizable quefacilita y agiliza el desarrollo de sistemas web que se ejecutarán en servidoresJ2EE
  7. 7. Struts 2Struts es un framework para el desarrollo de aplicaciones Web bajo el patrón MVCen la plataforma Java EE. Su carácter de “software libre” y su compatibilidad contodas las plataformas en las que Java Entreprise está disponible lo convierten enuna herramienta altamente disponible. La versión 2 del framework introdujoalgunas mejoras sobre la primera versión, de cara a simplificar las tareas máscomunes en el desarrollo de aplicaciones web, así como mejorar su integracióncon AJAX, etc.El framework está diseñado para agilizar el ciclo de desarrollo completo, desde laconstrucción, con la implementación, para el mantenimiento de las aplicaciones através del tiempo.Para hacer más fácil presentar datos dinámicos, el framework incluye unabiblioteca de etiquetas web. Las etiquetas interactúan con las validaciones y lascaracterísticas de internacionalización del framework, para asegurar que lasentradas son válidas, y las salidas están localizadas. La biblioteca de etiquetaspuede ser usada con JSP, FreeMarker, o Velocity; también pueden ser usadasotras bibliotecas de etiquetas como JSTL y soporta el uso de componentes JSF.Struts 2 no es precisamente el heredero de Struts 1, sino que es la mezcla de dosframewoks: WebWork 2 y StrutsFuncionamiento GeneralStruts se basa en el patrón de diseño MVC el cual separa tres seccionesdiferenciadas llamadas Modelo, Vista y Controlador. Esto busca separar el modelode datos, las interfaces de usuario y la lógica de negocios en tres componentesdiferentes.El ModeloEs básicamente los datos de la aplicación y las reglas de negocio, que serían losActions en Struts 2.Las acciones o Actions son clases encargadas de realizar la lógica para servir unapetición. Cada URL es mapeada a una acción específica, la cual proporciona lalógica necesaria para servir a cada petición hecha por el usuario.
  8. 8. Estrictamente hablando, las acciones no necesitan implementar una interface oextender de alguna clase base. El único requisito para que una clase seaconsiderada un Action es que debe tener un método que no reciba argumentosque regrese ya sea un Stringo un objeto de tipo Result. Por default el nombre deeste método debe ser "execute" aunque podemos ponerle el nombre quequeramos y posteriormente indicarlo en el archivo de configuración de Struts.La VistaPuede ser cualquier tecnología de vista como los JSP, entre otros. Estos son elmedio por el cual el usuario podrá interactuar con la aplicación. En Struts 2, sonlos Results.Son las respuesta de regreso al usuario. Este proceso tiene dos componentes, eltipo del result y el result mismo.El tipo del result indica cómo debe ser tratado el resultado que se le regresará alcliente. Por ejemplo un tipo de Result puede enviar al usuario de vuelta una JSP,otro puede redirigirlo hacia otro sitio, mientras otro puede enviarle un flujo de bytes(para descargar un archivo por ejemplo).El ControladorEs el intermediario entre la Vista y el Modelo, ante las peticiones generadas por elCliente en la Vista. Así, éste se encarga de invocar al Modelo cualquier cambio enlos datos de la aplicación, para que pueda ser devuelta a la Vista, como respuestaante la petición del usuario. En Struts 2, esta tarea la realiza el Filter Dispatcher.El "FilterDispatcher" es el punto de entrada del framework. A partir de él se lanzala ejecución de todas las peticiones que involucran al framework.Las principales responsabilidades del "FilterDispatcher" son:Ejecutar los Actions que son los manejadores de las aplicaciones.Comenzar la ejecución de la cadena de interceptores (de la que hablaremos en unmomento).Limpiar el "ActionContext", para evitar fugas de memoria.
  9. 9. VENTAJAS DE USAR STRUTSA continuación se mencionan las ventajas de usar Struts en el desarrollo de lacapa de presentación para aplicaciones basadas en tecnología Web – Java.Ventajas:* Implementa el patrón de arquitectura MVC (Model-View-Controller) cuyopropósito principal es separar el código de la capa de presentación del código dela capa de negocio facilitando la asignación de roles y la especialización defunciones dentro del marco de un proyecto.* El controlador ya se encuentra implementado por Struts:Las acciones que se ejecutarán sobre el modelo de objetos de negocio seimplementan basándose en clases predefinidas por el framework, siguiendo elpatrón Facade.La generación de interfaz se soporta mediante un conjunto de Tags predefinidospor Struts cuyo objetivo es evitar el uso de Scriplets (ltrozos de código Java entre"<%" y "%>"), lo cual genera ventajas de mantenimiento del código y deperfomance de la aplicación en desarrollo.* Potencia la reutilización de código y soporta múltiples interfaces de usuario(Html, sHtml, Wml, Desktop applications, etc.).* Struts implementa varios patrones de diseño de la arquitectura J2EE tales como:* Service to worker* Dispatcher View* Front Controller* View Helper* Synchronize (Déjà vu) Token* Ya que Struts está basado en tecnologías estándares como Java Servlets,JavaBeans, XML, hereda el ambiente de estos estándares y puede operar concualquier tecnología basada en JSP o Servlet.* Beneficio en términos de costo por licencia: Struts es un Open Source Software(OSS), lo que significa que su uso es libre.
  10. 10. Desventajas:• Se requiere por parte de los desarrolladores un conocimiento profundo ydetallado de Servlets y JSPs lo que representa una curva de aprendizaje, quederequerirse no se recomienda en proyectos cortos.• En comparación con la tecnología de Servlets y JSPs, los desarrolladoresprincipiantes encuentran que la documentación en línea de www.Apache.orgesconfusa y pobremente organizada. Existen menos libros de Struts que de Servletsy JSPs.• Existen opiniones encontradas en cuanto al tema de la implementación que haceStruts del patrón de arquitectura MVC. Para muchos, este “códigoescondido” lequita transparencia a las aplicaciones construidas con Struts y las hace más difícilde entender.• El tiempo de deployment de las aplicaciones desarrolladas con Struts seincrementa, ya que el servidor de aplicaciones tiene que buscar la ubicación de laslibrerías desarrolladas (tags) y las clases a la cuales están asociadas, pararesolverlas y validarlas.• Fin del mantenimiento El desarrollo de Struts1 ha finalizado aunque dadoelamplio parque de aplicaciones realizado en esta tecnología significara que solo elmantenimiento es una razón justificada para conocer la tecnología.• Cambio El framework ha demostrado problemas arquitectónicos, o mejor dicho adesvelado mejores acercamientos a problemas que no pueden ser incluidos en sudiseño por el final en su desarrollo.• Ámbito limitado Struts es una solución web basada en MVC que esta dirigida aser implementada con HTML, JSPs y Servlets.• Soporte J2EE Struts requiere un contenedor de servlets que soporte lasespecificaciones JSP 1.1 y Servlet 2.2• Complejidad Separar el problema en partes introduce complejidad. Nohayninguna duda que hace falta algo de educación para manejar Struts.• Otros Flujo adaptable y patrón Strategy para el controlador
  11. 11. Diferencias entre Strut y Strut 2Clases ActionStrut 1.- Requiere clases de acción para extender una clase base abstracta.Strut 2.-Un acción Struts puede implementar una acción de la interfaz, junto conotras interfaces para que los servicios opcionales y personalizados. Struts 2proporciona una clase base ActionSupport para implementar interfaces de usocomún.Conversión de tiposStrut 1.- Propiedades ActionForm son usualmente los Strings. Struts 1 utilizaCommons-BeanUtils de conversión de tipos. Convertidores son por clase, y no sepueden configurar por ejemplo.Strut 2.- Utiliza OGNL para la conversión de tipo. El marco incluye convertidoresde tipos primitivos, objetos básicos y comunes.ValidaciónStrut 1.- Soporta validación manual por medio de una validación método en elActionForm, o a través de una extensión del Commons Validator.Strut 2.- Es compatible con validación manual a través de la validación de métodoy el marco de validación XWork. La validación Marco XWork admite la validaciónde encadenamiento en sub-inmueble con las validaciones definidas para el tipo declase de propiedades y el contexto de validación
  12. 12. Materiales UtilizadosEntorno de Desarrollo Integrado= NeetbeansLenguaje de Programación= JavaFramework= Strut 2Sistema de Gestión de Datos = MySqlConfiguraciónConfiguracion de Struts2- Struts.xmlConfigurar los actions.<!DOCTYPE struts PUBLIC"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN""http://struts.apache.org/dtds/struts-2.0.dtd"><struts><!-- Configuration for the default package. --><package name="default" extends="struts-default"><action name="ejecutar" class="com.procesos.ProcesosAction" ><result name="success">/index.jsp</result></action></package></struts>
  13. 13. Configurar el filtro.Librerias- JDK- ServidorLibrerias: Struts2JDK de Java: 1.7Servidor: Apache Tomcat 7<?xml version="1.0" encoding="UTF-8"?><web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"><filter><filter-name>struts2</filter-name><filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class></filter><filter-mapping><filter-name>struts2</filter-name><url-pattern>/*</url-pattern></filter-mapping><session-config><session-timeout>30</session-timeout></session-config><welcome-file-list><welcome-file>index.jsp</welcome-file></welcome-file-list></web-app>
  14. 14. ¿Que debe contener la o las clases que sirven decontrolador?.
  15. 15. Declaración de un action en el Struts.xmlEtiquetas StrutsLas etiquetas que struts2 nos provee nos ayudan mucho al momento de crearnuestras vistas, cabe recalcar la importancia del nombre que se le de a cadacontrol, por que con el, serán accedidos desde la clase de JavaPara poder usar las etiquetas de Struts2 es importante añadir la etiqueta:<%@ taglib prefix="s" uri="/struts-tags" %>Al principio de nuestra vista.
  16. 16. AplicacionesCalculadora Struts2Login
  17. 17. HolaMundo en Strut2Aplicación Automática de Ejemplo de Netbeans
  18. 18. Errores en el IDE EclipseInstalación NetBeans Prototipo Calculadora
  19. 19. DISEÑO Y CONSTRUCCIÓN DE LA PROPUESTAUn framework o infraestructura digital, es una estructura conceptual y tecnológica desoporte definido, normalmente con artefactos o módulos de software concretos, con basea la cual otro proyecto de software puede ser más fácilmente organizado y desarrollado..Este proyecto presenta una metodología que permitirá desarrollar un softwareorientado a que el usuario tenga un informe diario de los egresos que genera enel día.PLANEACIÓNNuestro Grupo de Trabajo está conformado por seis integrantes, los cuales hanhecho un trabajo exhaustivo para llevar a cabo este proyecto, hemos trabajado enequipo como lo es el hecho de aportar ideas para la ejecución y el mejoramientode nuestra aplicación y a la vez hemos realizado una parte individual comoinvestigar sobre nuestra cuenta propia el uso de metodologías ágiles, laprogramación y la utilización del framework Strut 2ORGANIZACIÓNTeniendo en cuenta el perfil de cada una de los miembros del grupo, las áreas detrabajo quedaran definidas de la siguiente forma:INVESTIGACIÓN Y ANÁLISIS:Bello Flores Ramon DavidDelgado Alonso Henry HarryFlores Anchundia Victor ManuelJalca Saltos Luiggi AlexanderPalma Zambrano Laura LucíaVillamar Alcívar Pedro Alexander
  20. 20. CODIFICACIÓN DEL PROYECTO:Bello Flores Ramon DavidDelgado Alonso Henry HarryFlores Anchundia Victor ManuelJalca Saltos Luiggi AlexanderPalma Zambrano Laura LucíaVillamar Alcívar Pedro AlexanderPLANIFICACIÓN DEL PROYECTO.Para llevar a cabo esta aplicación hemos necesitado de mucha ayuda en especialdel internet, mediante este medio hemos recogido información y nos ha brindadola ayuda necesaria para entender, comprender y utilizar el framework Strut 2 .
  21. 21. ConclusionesAl utilizar framework para desarrollar aplicaciones web obtendremos una ayuda enal momento de generar codigo o de realizer alguna accion.Strut es una herramienta que nos permitió desarrollar dichas aplicaciones talescomo la calculadora o el login y que en partes tambien nos permitio o nos facilitoayuda al momento de ahorarranos líneas de código.Recomendaciones.Cuando se va a utlizar o a desarrollar aplicaciones utlizando frameworks esnecesario primero escoger los componentes a utilizar, escoger y saber el manejarcontenedor de servlets en este caso utlizamos apache tomcat version 7, esnecesario tener un conocimiento de este programa ya que es de importancia paraque se ejecute las aplicaciones que programaremos.
  22. 22. DificultadesLas dificultades encontradas en el desarrollo de las aplicaciones de prueba para elframework Struts2 fueron.Configuración del servidor.Error en la conección con la Base de datos.Configuración del filtro dispacher.IncovenientesPara realizar estas aplicaciones utilizamos el Entorno de Desarrollo IntegradoNetbeans, tambien realizamos la prueba en el IDE Eclipse pero no nos funcionocomo esperábamos.Ademas no teníamos conocimiento de como instalar y configurar el ApacheTomcat eso ocasionó que nos tocara desintalar por varias veces el IDE Neetbeanhasta que le encontramos solucion a dicho problema.Existieron ocaciones en que al momento de ejecutar la aplicacion esta nosenviaba un mensaje de error esto se debía a que existía conflictos en el Puerto dellocalhost
  23. 23. Referencias BibliográficasConcepto de Frameworkhttp://www.programacion.com/articulo/manual_basico_de_struts_156Concepto de Struthttp://es.wikipedia.org/wiki/FrameworkVentajashttp://es.scribd.com/doc/112443456/Ventajas-y-Desventajas-de-Usar-StrutsStrut 1 Vs Strut 2http://struts.apache.org/release/2.1.x/docs/comparing-struts-1-and-2.html

×