ICEfaces Note(1)

本文介绍了ICEfaces架构的关键组成部分,如PersistentFacesServlet和BlockingServlet等,并详细解析了DataTable组件的功能特性,包括支持表头、表尾Facet及分页浏览等功能。

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:panelGrid styleClass="formBorderHighlight">
                
<h3>
                    
<ice:outputText value="#{msgs['component.textFields.serverFeedback']}"/>
                
</h3>
                
<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:panelGrid>
        
</ice:panelGrid>
    
</ice:panelTab>
    
<ice:panelTab label="#{msgs['tabbedHeadigns.description']}">
        
<iframe src="./docs/textEntryDoc.html" class="includeIframe" width="100%"></iframe>
    
</ice:panelTab>
    
<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>

 

转载于:https://www.cnblogs.com/yangjin-55/archive/2007/08/02/2786980.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值