nesta postagem vou apresentar a maneira, mais simples que encontrei, de adicionar a funcionalidade TILES2 à uma aplicação JSF....
Para resumir este post, sugiro que leia meu post sobre a Criação Inicial de uma Aplicação JSF... usaremos ela como ponto de partida
Vamos começar baixando o TILES2 do site
http://tiles.apache.org/download.html
Para este post usarei a versão 2.0.4 do TILES2.
Pois bem, antes de mais nada, quero dizer que para integrar TILES2 + JSF vc NÃO precisa de nenhuma implementação de JSF externa (como MYFACES etc etc etc)....
Mas voltando ao assunto, do arquivo obtido utilizaremos apenas 3 JARs:
tiles-api-2.0.4.jar
tiles-core-2.0.4.jar
tiles-jsp-2.0.4.jar
Coloque-os na pasta lib de sua aplicação, mais ou menos como a imagem....
Estas bilbiotecas contém os TLDs e as classes necessárias para fazer nosso TILES2 funcionar....
Como disse anteriormente, a vida é fácil.... logo TILES2 tb deve ser hahahaha
vamos mexer no nosso web.xml?
Adicione as seguintes linhas ao seu WEB.XML
Muito bemmmmmmmm
<!-- TILES PARAMS -->
<servlet>
<servlet-name>tiles</servlet-name>
<servlet-class>org.apache.tiles.web.startup.TilesServlet</servlet-class>
<init-param>
<param-name>definitions-config</param-name>
<param-value>
/WEB-INF/tiles.xml
</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet>
<servlet-name>Tiles Dispatch Servlet</servlet-name>
<servlet-class>org.apache.tiles.web.util.TilesDispatchServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Tiles Dispatch Servlet</servlet-name>
<url-pattern>*.tiles</url-pattern>
</servlet-mapping>
agora seu tiles está configurado.... veja que estamos usando o arquivo /WEB-INF/tiles.xml como definition file.... entao vamos criar um tiles.xml de teste.... :)
Ok... agora só brincar....
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE tiles-definitions PUBLIC
"-//Apache Software Foundation//DTD Tiles Configuration 2.0//EN"
"http://tiles.apache.org/dtds/tiles-config_2_0.dtd">
<tiles-definitions>
<definition
name="minhaIndex"
template="index.jsp" >
</definition>
<definition
name="minhaIndexTunada"
extends="minhaIndex" >
<put-attribute
name="body"
value="/body.jsp"></put-attribute>
</definition>
</tiles-definitions>
que tal começar pelo index.jsp?
e que tal criarmos nosso body.jsp?
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles" %>
<f:view>
<f:subview id="index_body">
<tiles:insertAttribute name="body"/>
</f:subview>
</f:view>
PRONTOOOOOOOOOO
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<f:subview id="body_jsp_bacana">
<h:outputText value="INDEX TUNADAAAA"></h:outputText>
</f:subview>>
para acessar basta proceder da seguinte maneira
http://SEU_SERVIDOR:8080/NOME_DA_SUA_APLICACAO/app/minhaIndexTunada.tiles
valeuuuuuu
Um comentário:
Muito legal Bill. Abraço! Piva
Postar um comentário