Usare i template in Java Server Faces
Chi ha programmato almeno una volta in Asp.NET, conosce già il concetto di Master Page; una pagina HTML che funziona da template, nella quale alcuni parti sono dinamiche e altre fisse.
Di base le JSP non prevedono una cosa del genere, a parte il meccanismo degli include (come PHP).
Però se usiamo un framework, e nello specifico JSF, abbiamo la possiblità di usare i template.
Vediamo un semplice esempio; una volta creato il progetto (Netbeans ci permette di includere da subito le librerie che ci servono) create una pagina che chiamiamo template.xhtml:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:ui="http://java.sun.com/jsf/facelets">
<h:head>
<h:outputStylesheet name="style.css" library="css" />
</h:head>
<h:body>
<div id="page">
<div id="header">
<ui:insert name="header" ></ui:insert>
</div>
<div id="content">
<ui:insert name="content"></ui:insert>
</div>
<div id="footer">
<ui:insert name="footer"></ui:insert>
</div>
</div>
</h:body>
</html>
Come vedete è una semplice pagina con alcuni tag specifici.