版權聲明:本文為部落客chszs的原創文章,未經部落客允許不得轉載。 https://blog.csdn.net/chszs/article/details/1722390
ICEfaces Note(1)
一、ICEfaces架構的主要元素包括:
1)Persistent Faces Servlet:通過”.faces“擴充名映射到Persistent Faces Servlet。
2)Blocking Servlet:管理所有要阻塞和非阻塞的請求。
3)D2D ViewHandler:建立Direct-to-DOM rendering環境。
4)D2D Parser:從JSP文檔中聚集元件樹。
5)D2D RenderKit:翻譯元件樹到DOM。
6)DOM Response Writer:往DOM中寫入。
7)DOM Serializer:序列化DOM。
8)DOM Updater:聚集DOM的改變到單個的增量DOM更新。
9)Component Suite:提供豐富的JSF元件集。
10)Client-side Ajax Bridge:持續DOM更新請求的産生和響應處理。
二、DataTable元件:顯示資料的表元件。
1)支援表頭Facet(table Header facet)和表尾Facet(table Footer facet);
2)内嵌列元件,依次包含列頭(column header),列尾(column footer)和commandSortHeader facet;
3)帶一可選功能支援分頁浏覽(a paged tabled view)。
tag-name:<ice:dataTable>
tag-class:com.icesoft.faces.component.ext.taglib.DataTableTag
component-class:com.icesoft.faces.component.ext.HtmlDataTable
component-type:com.icesoft.faces.HtmlDataTable
component-family:javax.faces.Command
renderer-class:com.icesoft.faces.component.ext.renderkit.TableRenderer
renderer-type:com.icesoft.faces.Table

<ice:form xmlns:h="http://java.sun.com/jsf/html"

xmlns:f="http://java.sun.com/jsf/core"

xmlns:ice="http://www.icesoft.com/icefaces/component">

<ice:panelGrid styleClass="contentLayoutGridStyle" columns="1" border="0">

<ice:panelTabSet styleClass="componentPanelTabSetLayout">

<ice:panelTab label="#{msgs['tabbedHeadings.demo']}">

<ice:panelGrid styleClass="componentLayoutRootTable" columns="1">

<ice:panelGrid styleClass="formBorderHighlight">

<h3>

<ice:outputText value="#{msgs['component.textFields.directions']}"/>

</h3>

<br/>

<ice:panelGrid columns="2" rowClasses="textFieldNameRow,textFieldNameRow,textFieldCommentsRow">

<ice:outputText styleClass="propertyLabel" value="#{msgs['component.textFields.name']}"/>

<ice:inputText value="#{textFields.name}" partialSubmit="true"/>

<ice:outputText styleClass="propertyLabel" value="#[msgs['component.textFields.password']}"/>

<ice:inputSecret value="#{textFields.password}" partialSubmit="true"/>

<div style="padding-top:5px;">

<ice:outputText styleClass="propertyLabel" value="#{msgs['component.textFields.comments']}"/>

</div>

<ice:inputTextarea value="#{textFields.comments}" cols="20" rows="4" partialSubmit="true"

style="width:280px;height:80px;overflow:auto;"/>

</ice:panelGrid>

</ice:panelGrid>



<ice:outputText value="#{msgs['component.textFields.serverFeedback']}"/>


<ice:panelGrid columns="2">

<ice:outputText value="#{msgs['component.textFields.name']}" styleClass="valueHeader"/>

<ice:outputText value="#{textFields.name}" styleClass="valueText"/>


<ice:outputText value="#{msgs['component.textFields.password']}" styleClass="valueHeader"/>

<ice:outputText value="#{textFields.password}" styleClass="valueText"/>


<ice:outputText value="#{msgs['component.textFields.comments']}" styleClass="valueHeader"/>

<ice:outputText value="#{textFields.comments}" styleClass="valueText"/>



</ice:panelGrid>

</ice:panelTab>

<ice:panelTab label="#{msgs['tabbedHeadigns.description']}">

<iframe src="./docs/textEntryDoc.html" class="includeIframe" width="100%"></iframe>


<ice:panelTab label="#{msgs['tabbedHeadings.source']}">

<iframe src="./sourcecodeStream.html?path=./inc/components/textFields.jspx"

class="includeIframe" width="100%">

</iframe>

</ice:panel>

</ice:panelTabSet>

</ice:panelGrid>

</ice:form>
