鍍金池/ 教程/ HTML/ JSF Facelets技術(shù)介紹
JSF數(shù)據(jù)表(h:dataTable)添加刪除
JSF <h:commandLink>標簽
JSF應(yīng)用程序入門示例
JSF數(shù)據(jù)表(ui:repeat)創(chuàng)建表
JSF列表框
JSF數(shù)據(jù)表(h:dataTable)DataModel排序數(shù)據(jù)
JSF復(fù)合組件
JSF <h:inputText>標簽
JSF表單組合框
JSF <h:messages>標簽
JSF <h:message>標簽
JSF轉(zhuǎn)換日期時間
JSF JDBC連接
JSF <h:inputHidden>標簽
JSF多選列表框
JSF <h:inputSecret>標簽
JSF自定義轉(zhuǎn)換器
JSF <f:ajax>標簽
JSF生命周期
JSF可重定位資源
JSFJSF用戶界面組件模型
JSF <h:attribute>標簽
JSF驗證器標簽
JSF驗證字符串長度
JSF轉(zhuǎn)換器標簽
JSF托管bean(Managed Bean)
JSF值變化的事件
JSF UI組件示例
JSF MySQL CURD實例
JSF數(shù)據(jù)表(h:dataTable)排序數(shù)據(jù)
JSF <h:graphicImage>標簽
JSF <f:convertNumber>標簽
JSF教程
JSF托管Bean
JSF輸出腳本
JSF <h:outputText>標簽
JSF操作事件
JSF驗證正則表達式
JSF數(shù)據(jù)表(h:dataTable)行號
JSF <h:setPropertyActionListener>標簽
JSF注入托管bean實例
JSF <h:commandButton>標簽
JSF Web資源
JSF <h:inputFile>標簽
JSF驗證浮點數(shù)值范圍
JSF Facelets視圖
JSF是什么?
JSF Facelets模板
JSF的特性(特點)
JSF自定義驗證器類
JSF單選按鈕
JSF輸出樣式
JSF數(shù)據(jù)表(h:dataTable)更新數(shù)據(jù)
JSF HTML5友好標記
JSF表單復(fù)選框(CheckBox)示例
JSF <h:form>標簽
JSF Facelets技術(shù)介紹
JSF輸出格式化
JSF <h:inputtextarea>標簽
JSF驗證整數(shù)范圍
JSF <h:panelGrid>標簽

JSF Facelets技術(shù)介紹

Facelets是一種輕量級的頁面聲明語言,用于使用HTML樣式構(gòu)建JSF(JavaServer Faces)視圖。

它包括以下功能:

  • 它使用XHTML創(chuàng)建網(wǎng)頁。
  • 除了支持JavaServer Faces和JSTL標記庫之外,它還支持Facelets標簽庫。
  • 它支持表達語言(EL)。
  • 它是使用組件和頁面的模板。

優(yōu)點

  • 它通過模板和復(fù)合組件支持代碼可重用性。
  • 它通過定制提供組件和其他服務(wù)器端對象的功能可擴展性。
  • 編譯時間更快
  • 它在編譯時驗證表達式語言。
  • 高性能渲染能力。

JSF(JavaServer Faces)技術(shù)支持各種標簽庫,以將組件添加到網(wǎng)頁。 為了支持JavaServer Faces標簽庫機制,F(xiàn)acelets使用XML命名空間聲明。

下表顯示了Facelets支持的標簽庫。

標簽庫 URI 前綴 示例 內(nèi)容
JSF Facelets標簽庫 http://xmlns.jcp.org/jsf/facelets ui: ui:component,ui:insert 模板標簽
JSF HTML標簽庫 http://xmlns.jcp.org/jsf/html h: h:head,h:body 所有UI組件對象的JavaServer Faces組件標記
JSF核心標簽庫 http://xmlns.jcp.org/jsf/core f: f:actionListener, f:attribute JSF標簽獨立于任何特定渲染工具包的自定義操作
傳遞元素標簽庫 http://xmlns.jcp.org/jsf jsf: jsf:id 支持HTML5友好標記的標簽
傳遞屬性標簽庫 http://xmlns.jcp.org/jsf/passthrough p: p:type 支持HTML5友好標記的標簽
復(fù)合組件標簽庫 http://xmlns.jcp.org/jsf/composite cc: cc:interface 支持復(fù)合組件的標簽
JSTL核心標簽庫 http://xmlns.jcp.org/jsp/jstl/core c: c:forEach, c:catch JSTL 1.2核心標簽
JSTL函數(shù)標簽庫 http://xmlns.jcp.org/jsp/jstl/functions fn: fn:toUpperCase, fn:toLowerCase JSTL 1.2函數(shù)標簽

Facelets應(yīng)用程序的生命周期

JSF規(guī)范定義了JavaServer Faces應(yīng)用程序的生命周期。以下步驟為基于 Facelets 的應(yīng)用程序的過程描述。

  1. 生命周期是在客戶端使用Facelets創(chuàng)建的網(wǎng)頁發(fā)出新請求時啟動。 JSF創(chuàng)建一個新的組件樹或javax.faces.component.UIViewRoot并放入FacesContex。

  2. 如果可用的UIViewRoot應(yīng)用于Facelets, 視圖可以填充組件進行渲染。

  3. 新建的視圖作為對客戶端的響應(yīng)而被渲染。

  4. 在渲染時,存儲此視圖的狀態(tài)用于下一個請求。 存儲輸入組件和表單數(shù)據(jù)的狀態(tài)。

  5. 客戶端可以與視圖交互,并從JSF應(yīng)用程序請求另一個視圖。 此時,保存的視圖從存儲狀態(tài)恢復(fù)。

  6. 恢復(fù)視圖再次通過JSF生命周期,如果沒有驗證問題,并且沒有觸發(fā)任何操作,最終將生成新視圖或重新呈現(xiàn)當前視圖。

  7. 如果請求相同的視圖,則再次呈現(xiàn)存儲的視圖。

  8. 如果要求新視圖,則繼續(xù)執(zhí)行【步驟2】。

  9. 將新視圖作為對客戶端的響應(yīng)。


上一篇:JSF表單組合框