JSF 2'de Facelet ile en basit şablon örneği aşağıdaki gibi yapılabilir :
Şablon İçeriği (template.xhtml olarak kaydediyoruz) :
<!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"> <title>Sablon Test</title> <body> Burasi Sablon <ui:insert name="Body" /> </body> </html>
Yukarıda şablonun değişecek bölümü ui:insert ile adı "Body" olarak verilmiştir. Bu şablona uygun bir sayfa aşağıdaki gibidir :
<ui:composition template="/template.xhtml" xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets"> <ui:define name="Body"> <h1>Body Content</h1> </ui:define> </ui:composition>
Bir şablon kullanmak için ui:composition elementi kullanılmakta ve template (şablon) olarak bir üsteki şablon dosyasının path'i verilmiştir. Bu şekilde şablonu seçtikten sonra şablondaki Body alanını ui:define ile <h1> elementi ekliyoruz. Yukarıdaki sayfa çalıştırıldığı zaman şablon sayfası çalıştırılacak ve body içerisine <h1>Body Content</h1> eklenecektir. Yukarıdaki template.xhtml sayfası başka sayfalarda da kullanılabilir.