頁面片段是可重複使用的頁面區塊(如頁首、頁尾、導覽列),擁有獨立的頁面 Bean,副檔名為 .jspf。本教學示範在 NetBeans IDE 6.5 中建立包含「公司 Logo 片段」與「導覽片段」的雙頁面應用,並展示片段如何繼承主頁面樣式。
sky.jpgFile → New Project → Web → Web Application,專案名 FragmentExample,啟用 Visual Web JavaServer Faces 框架。Page1.jsp,設定頁面標題為 Sky Company Home。CompanyLogo、Navigation。Welcome to Sky Company。CompanyLogo 片段進入編輯模式。720px、高度 120px。url 屬性的省略號按鈕 → Add File → 選取 sky.jpg → OK。IDE 會複製圖片至專案 resources 目錄。Navigation 片段,設定寬度 150px、高度 100px。Home。Company News,ID newLink,URL /faces/News.jsp。Web Pages → New → Visual Web JSF Page,命名 News。Page1.jsp,在 導航視窗 按 Ctrl 選取兩個 <div>(片段)與靜態文本組件 → 右鍵 Copy。News.jsp,在導航視窗 form1 上右鍵 Paste。We have a new CEO.,頁面標題 Sky Company News,背景色設為淺黃色。在各頁面的 Java 原始碼 prerender() 方法加入:
public void prerender() {
Navigation nav = (Navigation) getBean("Navigation");
Hyperlink homeLink = nav.getHomeLink();
homeLink.setDisabled(true);
}
public void prerender() {
Navigation nav = (Navigation) getBean("Navigation");
Hyperlink newsLink = nav.getNewsLink();
newsLink.setDisabled(true);
}
需 import com.sun.webui.jsf.component.Hyperlink;(右鍵 Fix Imports 自動完成)。
Home 在首頁灰顯、Company News 在新聞頁灰顯,點擊可正常跳轉。Copyright 1994-2007 Sky Company,加入每頁底部。100px),百分比在 IE6 易異常。faces-config.xml 導航規則,將 <from-view-id> 設為通配符 /* 簡化維護。immediate="true" 並為每頁配置導航規則。