I NGENIERÍA DE S OFTWARE L ABORATORIO X Struts – Utilización de Tiles Eduardo Saavedra A....
-
Upload
paula-diaz-parra -
Category
Documents
-
view
216 -
download
0
Transcript of I NGENIERÍA DE S OFTWARE L ABORATORIO X Struts – Utilización de Tiles Eduardo Saavedra A....
INGENIERÍA DE SOFTWARELABORATORIO XStruts – Utilización de Tiles
Eduardo Saavedra A.
27/10/2009
TÓPICOS
1. Introducción2. Ejemplo3. Aplicación de prueba
INTRODUCCIÓN
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).
EJEMPLO DE USO DE TILES
EJEMPLO
Cabecera
Menú
Pie
Cuerpo
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
La estructura de archivos para la presente disposición es:
EJEMPLO
El tiles-defs dice lo siguiente:
Las ventajas de tiles es que permite crear una estructura base y luego extender de esta estructura para situaciones mas especificas.
EJEMPLO
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
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
Veamos el contenido del layout.jsp
Primero y como siempre se definen las tld a utilizar. (7,9,10,11)
EJEMPLO
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
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
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
Y mas abajo en el layout.jsp se ve donde se inserta lo definido en el tiles-defs
EJEMPLO
El contenido de esos jsp por separado es:
EJEMPLO
header.jsplogin.jsp
body.jsp
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
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:
APLICACIÓN DE PRUEBA
APLICACIÓN DE PRUEBA
Hágalo usted mismo
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