如 Java/Jarkarta EE 版本歷史所列,Java EE 7 標準發佈於 2013 年,伴隨的 JavaServer Faces 2.2 標準,已實作於 GlassFish 4.x 版本。其 .xhtml 網頁支援的標籤可參考 Oracle JavaEE 7 JSF 2.2 網站,共分成如下 6 種命名空間。
- h: 為 JSF 超文字(html)標籤庫,提供標準 HTML 標籤的 JSF 版本,如 h:form、h:inputText 等,用於生成 HTML 表單元素。
- f: 為 JSF 特殊功能(function)標籤庫,提供 JSF 的核心功能標籤,如 f:view、f:ajax、f:convertDateTime 等,用於處理事件、轉換器和 AJAX 功能。
- ui: 為 JSF 配置用戶介面(user interface)標籤庫,提供模板和組合元件功能的標籤,如 ui:composition、ui:include、ui:repeat 等,用於定義和重複利用頁面結構。
- c: 為 JSTL 核心(core)標籤庫,提供 JSTL的核心功能標籤,如 c:forEach、c:if、c:set 等,用於邏輯控制和迭代。
- cc: 為 JSTL 組合元件(composite component)標籤庫,提供定義和使用組合元件的標籤,如 cc:interface、cc:implementation、cc:attribute 等,用於創建可重複利用的元件。
- fn: 為 JSTL 函數(function)標籤庫,提供 JSTL 的函數標籤,如 fn:contains、fn:substring、fn:replace 等,用於字符串操作和其他常見功能。
其中,後面3種 JSTL (JavaServer Pages Standard Tag Library) 命名空間主要為了相容於早期發展的 JSP (JavaServer Pages) 網頁。以下針對 JSF (JavaServer Faces) 常見的前3種命名空間標籤,由 Miscosoft Copilot 摘要成表格如下。
h:命名空間標籤 |
描述 |
h:body |
定義 HTML 文檔的主體。 |
h:button |
渲染 HTML 按鈕。 |
h:column |
定義數據表中的列。 |
h:commandButton |
渲染可以提交表單的按鈕。 |
h:commandLink |
渲染可以提交表單的鏈接。 |
h:dataTable |
渲染數據表。 |
h:doctype |
聲明文檔類型。 |
h:form |
渲染 HTML 表單。 |
h:graphicImage |
渲染圖像。 |
h:head |
定義 HTML 文檔的頭部。 |
h:inputFile |
渲染文件輸入字段。 |
h:inputHidden |
渲染隱藏輸入字段。 |
h:inputSecret |
渲染密碼輸入字段。 |
h:inputText |
渲染文本輸入字段。 |
h:inputTextarea |
渲染文本區輸入字段。 |
h:link |
渲染超鏈接。 |
h:message |
顯示單個驗證消息。 |
h:messages |
顯示所有驗證消息。 |
h:outputFormat |
渲染格式化文本。 |
h:outputLabel |
為輸入字段渲染標籤。 |
h:outputLink |
渲染超鏈接。 |
h:outputScript |
渲染腳本。 |
h:outputStylesheet |
渲染樣式表鏈接。 |
h:outputText |
渲染文本。 |
h:panelGrid |
渲染網格面板。 |
h:panelGroup |
將組件分組在一起。 |
h:panelpassthrough.Element |
渲染透傳元素。 |
h:selectBooleanCheckbox |
渲染布爾值的複選框。 |
h:selectManyCheckbox |
渲染多選複選框組。 |
h:selectManyListbox |
渲染多選列表框。 |
h:selectManyMenu |
渲染多選菜單。 |
h:selectOneListbox |
渲染單選列表框。 |
h:selectOneMenu |
渲染單選菜單。 |
h:selectOneRadio |
渲染單選單選按鈕組。 |
f:命名空間標籤 |
描述 |
f:actionListener |
為組件註冊一個動作監聽器。 |
f:ajax |
為組件添加 Ajax 功能。 |
f:attribute |
為組件添加一個屬性。 |
f:attributes |
為組件添加多個屬性。 |
f:convertDateTime |
將字符串轉換為日期/時間對象。 |
f:converter |
為組件註冊一個轉換器。 |
f:convertNumber |
將字符串轉換為數字。 |
f:event |
為組件註冊一個事件監聽器。 |
f:facet |
為組件聲明一個面。 |
f:loadBundle |
加載資源包。 |
f:metadata |
為視圖聲明元數據。 |
f:param |
為組件添加一個參數。 |
f:passThroughAttribute |
為組件添加一個透傳屬性。 |
f:passThroughAttributes |
為組件添加多個透傳屬性。 |
f:phaseListener |
為生命周期註冊一個階段監聽器。 |
f:resetValues |
重置輸入組件的值。 |
f:selectItem |
為選擇組件添加一個項目。 |
f:selectItems |
為選擇組件添加多個項目。 |
f:setPropertyActionListener |
當動作事件發生時設置屬性。 |
f:subview |
在視圖中聲明一個子視圖。 |
f:validateBean |
驗證一個 bean。 |
f:validateDoubleRange |
驗證值是否在雙精度範圍內。 |
f:validateLength |
驗證字符串的長度。 |
f:validateLongRange |
驗證值是否在長整數範圍內。 |
f:validateRegex |
根據正則表達式驗證字符串。 |
f:validateRequired |
驗證值是否不為 null。 |
f:validator |
為組件註冊一個驗證器。 |
f:valueChangeListener |
為組件註冊一個值變更監聽器。 |
f:verbatim |
渲染原始文本。 |
f:view |
聲明一個視圖。 |
f:viewAction |
聲明在視圖處理期間調用的動作。 |
f:viewParam |
聲明一個視圖參數。 |
ui:命名空間標籤 |
描述 |
ui:component |
定義可重用的組件,可以包含在其他頁面中。 |
ui:composition |
定義頁面的模板,允許包含其他組件。 |
ui:debug |
提供 JSF 頁面的調試信息。 |
ui:decorate |
類似於 `ui:include`,但允許插入用戶定義的模板。 |
ui:define |
定義模板的一部分,可以填充內容。 |
ui:fragment |
定義頁面的一部分,可以包含在其他頁面中。 |
ui:include |
包含另一個頁面或模板的內容。 |
ui:insert |
將內容插入到模板的定義部分。 |
ui:param |
將參數傳遞給包含的頁面或模板。 |
ui:remove |
從渲染輸出中移除內容。 |
ui:repeat |
對集合中的每個項目重複頁面的一部分。 |
沒有留言:
張貼留言