i ngenierÍa de s oftware l aboratorio x struts – utilización de tiles eduardo saavedra a....
TRANSCRIPT
![Page 1: I NGENIERÍA DE S OFTWARE L ABORATORIO X Struts – Utilización de Tiles Eduardo Saavedra A. 27/10/2009](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4821a28abb57c92170e/html5/thumbnails/1.jpg)
INGENIERÍA DE SOFTWARELABORATORIO XStruts – Utilización de Tiles
Eduardo Saavedra A.
27/10/2009
![Page 2: I NGENIERÍA DE S OFTWARE L ABORATORIO X Struts – Utilización de Tiles Eduardo Saavedra A. 27/10/2009](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4821a28abb57c92170e/html5/thumbnails/2.jpg)
TÓPICOS
1. Introducción2. Ejemplo3. Aplicación de prueba
![Page 3: I NGENIERÍA DE S OFTWARE L ABORATORIO X Struts – Utilización de Tiles Eduardo Saavedra A. 27/10/2009](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4821a28abb57c92170e/html5/thumbnails/3.jpg)
INTRODUCCIÓN
![Page 4: I NGENIERÍA DE S OFTWARE L ABORATORIO X Struts – Utilización de Tiles Eduardo Saavedra A. 27/10/2009](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4821a28abb57c92170e/html5/thumbnails/4.jpg)
INTRODUCCIÓN
Tiles es un plugin para struts que se utiliza para establecer la maqueta constante de la aplicación web.
Con TILES por ejemplo, se podría definir una cabecera, menú, cuerpo y pie de una página web.
La gracia de esto es que no hay repetición de código, no hay inclusiones “sucias” y es configurable por medio de un XML
Entonces cuando se requiera hacer un cambio, simplemente se editan los archivos necesarios y no TODOS (bajo acoplamiento en vistas).
![Page 5: I NGENIERÍA DE S OFTWARE L ABORATORIO X Struts – Utilización de Tiles Eduardo Saavedra A. 27/10/2009](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4821a28abb57c92170e/html5/thumbnails/5.jpg)
EJEMPLO DE USO DE TILES
![Page 6: I NGENIERÍA DE S OFTWARE L ABORATORIO X Struts – Utilización de Tiles Eduardo Saavedra A. 27/10/2009](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4821a28abb57c92170e/html5/thumbnails/6.jpg)
EJEMPLO
Cabecera
Menú
Pie
Cuerpo
![Page 7: I NGENIERÍA DE S OFTWARE L ABORATORIO X Struts – Utilización de Tiles Eduardo Saavedra A. 27/10/2009](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4821a28abb57c92170e/html5/thumbnails/7.jpg)
Netbeans posee por defecto este plugin al instalar struts. Al crear un proyecto struts, dentro del struts-config, se puede ver la siguiente línea:
Ella hace referencia a otro archivo de configuración llamado tiles-defs.xml El archivo viene con algunos ejemplos para su
análisis.
EJEMPLO
![Page 8: I NGENIERÍA DE S OFTWARE L ABORATORIO X Struts – Utilización de Tiles Eduardo Saavedra A. 27/10/2009](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4821a28abb57c92170e/html5/thumbnails/8.jpg)
La estructura de archivos para la presente disposición es:
EJEMPLO
El tiles-defs dice lo siguiente:
![Page 9: I NGENIERÍA DE S OFTWARE L ABORATORIO X Struts – Utilización de Tiles Eduardo Saavedra A. 27/10/2009](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4821a28abb57c92170e/html5/thumbnails/9.jpg)
Las ventajas de tiles es que permite crear una estructura base y luego extender de esta estructura para situaciones mas especificas.
EJEMPLO
![Page 10: I NGENIERÍA DE S OFTWARE L ABORATORIO X Struts – Utilización de Tiles Eduardo Saavedra A. 27/10/2009](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4821a28abb57c92170e/html5/thumbnails/10.jpg)
Lo que se encuentra dentro de las definiciones son los “nombres de variables”. Aquí es donde se especifican los jsp (páginas) a
ciertas variables que después podrán ser utilizadas.
EJEMPLO
![Page 11: I NGENIERÍA DE S OFTWARE L ABORATORIO X Struts – Utilización de Tiles Eduardo Saavedra A. 27/10/2009](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4821a28abb57c92170e/html5/thumbnails/11.jpg)
Lo que se encuentra dentro de las definiciones son los “nombres de variables”. Aquí es donde se especifican los jsp (páginas) a
ciertas variables que después podrán ser utilizadas.
EJEMPLO
![Page 12: I NGENIERÍA DE S OFTWARE L ABORATORIO X Struts – Utilización de Tiles Eduardo Saavedra A. 27/10/2009](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4821a28abb57c92170e/html5/thumbnails/12.jpg)
Veamos el contenido del layout.jsp
Primero y como siempre se definen las tld a utilizar. (7,9,10,11)
EJEMPLO
![Page 13: I NGENIERÍA DE S OFTWARE L ABORATORIO X Struts – Utilización de Tiles Eduardo Saavedra A. 27/10/2009](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4821a28abb57c92170e/html5/thumbnails/13.jpg)
Luego, como ya se ha visto se utilizan estas tld e distintos ambitos (html en linea 14) y en la linea 16… aparece la “tiles”, notese que hace alusión a una variable llamada browserTitle, la que debería estar definida en el tiles-defs.
EJEMPLO
![Page 14: I NGENIERÍA DE S OFTWARE L ABORATORIO X Struts – Utilización de Tiles Eduardo Saavedra A. 27/10/2009](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4821a28abb57c92170e/html5/thumbnails/14.jpg)
Luego, como ya se ha visto se utilizan estas tld e distintos ambitos (html en línea 14) y en la línea 16… aparece la “tiles”, nótese que hace alusión a una variable llamada browserTitle, la que debería estar definida en el tiles-defs.
EJEMPLO
![Page 15: I NGENIERÍA DE S OFTWARE L ABORATORIO X Struts – Utilización de Tiles Eduardo Saavedra A. 27/10/2009](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4821a28abb57c92170e/html5/thumbnails/15.jpg)
Luego, como ya se ha visto se utilizan estas tld e distintos ambitos (html en línea 14) y en la línea 16… aparece la “tiles”, nótese que hace alusión a una variable llamada browserTitle, la que debería estar definida en el tiles-defs.
EJEMPLO
![Page 16: I NGENIERÍA DE S OFTWARE L ABORATORIO X Struts – Utilización de Tiles Eduardo Saavedra A. 27/10/2009](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4821a28abb57c92170e/html5/thumbnails/16.jpg)
Y mas abajo en el layout.jsp se ve donde se inserta lo definido en el tiles-defs
EJEMPLO
![Page 17: I NGENIERÍA DE S OFTWARE L ABORATORIO X Struts – Utilización de Tiles Eduardo Saavedra A. 27/10/2009](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4821a28abb57c92170e/html5/thumbnails/17.jpg)
El contenido de esos jsp por separado es:
EJEMPLO
header.jsplogin.jsp
body.jsp
![Page 18: I NGENIERÍA DE S OFTWARE L ABORATORIO X Struts – Utilización de Tiles Eduardo Saavedra A. 27/10/2009](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4821a28abb57c92170e/html5/thumbnails/18.jpg)
El nombre de la definición que se analizó era “principal”.
¿Como se accede entonces desde struts a esta definición en tiles? Simple… a través de los forward en los Action ,
desde el struts-config:
Entonces si se requiere mostrar otra estructura (por ejemplo una para ver productos) cambiando por ejemplo el body, simplemente se realiza un forward referenciando un nuevo “path” y en el tiles-defs se debe definir ese “path”
EJEMPLO
![Page 19: I NGENIERÍA DE S OFTWARE L ABORATORIO X Struts – Utilización de Tiles Eduardo Saavedra A. 27/10/2009](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4821a28abb57c92170e/html5/thumbnails/19.jpg)
Entonces si se requiere mostrar otra estructura (por ejemplo una para ver productos) cambiando por ejemplo el body, simplemente se realiza un forward referenciando un nuevo “path” y en el tiles-defs se debe definir ese “path”
Cabe destacar que ahora los path no son “etc/etc/pagina.jsp, sino que se hace referencia un path del tiles-defs
EJEMPLO
struts-config:
tiles-defs:
![Page 20: I NGENIERÍA DE S OFTWARE L ABORATORIO X Struts – Utilización de Tiles Eduardo Saavedra A. 27/10/2009](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4821a28abb57c92170e/html5/thumbnails/20.jpg)
APLICACIÓN DE PRUEBA
![Page 21: I NGENIERÍA DE S OFTWARE L ABORATORIO X Struts – Utilización de Tiles Eduardo Saavedra A. 27/10/2009](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4821a28abb57c92170e/html5/thumbnails/21.jpg)
APLICACIÓN DE PRUEBA
Hágalo usted mismo
![Page 22: I NGENIERÍA DE S OFTWARE L ABORATORIO X Struts – Utilización de Tiles Eduardo Saavedra A. 27/10/2009](https://reader035.vdocumento.com/reader035/viewer/2022062410/5665b4821a28abb57c92170e/html5/thumbnails/22.jpg)
BIBLIOGRAFÍA
http://struts.apache.org/ http://www.adictosaltrabajo.com/tutoriales/tu
toriales.php?pagina=strutstiles http://www.roseindia.net/struts/struts_tiles.sh
tml http://www.roseindia.net/struts/using-tiles-def
s-xml.shtml www.google.com :P