Diferencia entre revisiones de «SiteMesh 2»

De Dos Ideas.
Saltar a: navegación, buscar
(Para qué se usa)
(Cómo se implementa)
Línea 15: Línea 15:
  
 
== Cómo se implementa ==
 
== Cómo se implementa ==
 +
 +
=== Instalar SiteMesh Manualmente ===
 +
 +
Seguir estos 3 pasos:
 +
 +
# Agregar la biblioteca [http://wiki.sitemesh.org/display/sitemesh/Download SiteMesh jar] en WEB-INF/lib
 +
# Configurar el siguiente filtro en el archivo WEB-INF/web.xml, dentro del tag <web-app>
 +
 +
<pre>
 +
<filter>
 +
  <filter-name>sitemesh</filter-name>
 +
  <filter-class>com.opensymphony.sitemesh.webapp.SiteMeshFilter</filter-class>
 +
</filter>
 +
 +
<filter-mapping>
 +
  <filter-name>sitemesh</filter-name>
 +
  <url-pattern>/*</url-pattern>
 +
</filter-mapping>
 +
</pre>
 +
 +
# Crear el archivo decorators.xml en el directorio WEB-INF con el siguiente contenido
 +
 +
<pre>
 +
<?xml version="1.0" encoding="UTF-8"?>
 +
<decorators>
 +
</decorators>
 +
</pre>
  
 
== Nuestra experiencia ==
 
== Nuestra experiencia ==

Revisión del 15:06 14 sep 2012

Qué es SiteMesh

Es un framework Java para aplicaciones web que aplica el patrón de diseño Decorator para permitir la separación de contenido en la capa de presentación.

Con este framework se puede definir la distribución de contenido (layout) de la vista y componerla en base a páginas simples, las cuales conformarán una página compleja (decorada) justo antes de enviarse al cliente.

Para qué se usa

SiteMesh utiliza Filters disponibles a partir de la versión 2.3 de Java Servlet.

  • SiteMesh intercepta las peticiones de todas las paginas HTML generadas, procesa el contenido y lo "decora" para obtener el resultado final.
  • También puede generar una pagina compleja a partir de varias pequeñas.

Diagrama sitemesh.png

Cómo se implementa

Instalar SiteMesh Manualmente

Seguir estos 3 pasos:

  1. Agregar la biblioteca SiteMesh jar en WEB-INF/lib
  2. Configurar el siguiente filtro en el archivo WEB-INF/web.xml, dentro del tag <web-app>
<filter>
  <filter-name>sitemesh</filter-name>
  <filter-class>com.opensymphony.sitemesh.webapp.SiteMeshFilter</filter-class>
</filter>
 
<filter-mapping>
  <filter-name>sitemesh</filter-name>
  <url-pattern>/*</url-pattern>
</filter-mapping>
  1. Crear el archivo decorators.xml en el directorio WEB-INF con el siguiente contenido
<?xml version="1.0" encoding="UTF-8"?>
<decorators>
</decorators>

Nuestra experiencia