<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Java學習

    java,spring,structs,hibernate,jsf,ireport,jfreechart,jasperreport,tomcat,jboss -----本博客已經搬家了,新的地址是 http://www.javaly.cn 如果有對文章有任何疑問或者有任何不懂的地方,歡迎到www.javaly.cn (Java樂園)指出,我會盡力幫助解決。一起進步

     

    tomahawk JSF組件擴展組件(一)

    <%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%>

    一.資源文件的反編譯:native2ascii -reverse -encoding gb2313 b.properties a.properties

    二.<f:verbatim> 組件用于將HTML元素添加到頁面中,并使 HTML 元素具有這些組件的行為。直接把HTML元素放在<h:panelGroup>中會發生錯誤,因為HTML元素并不是JSF的子組件。如果使 用 Faces Verbatim 組件,請確保遵循以下準則:

    • IDE 使用的 JSP 頁中的代碼必須是對稱的、格式正確的XML,包括 <f:verbatim> 標記內的標記。例如,在 <f:verbatim> 標記中不能以 <table> 開頭,但可以將結束 </table> 標記放在結束 </f:verbatim> 標記后面。
    • <f:verbatim> 組件中不能嵌入其他 JavaServer Faces 組件。

    三.HTML編輯器組件:<t:inputHtml id="inputHtml" value="#{dvoFace.map['inputHtml']}" displayValueOnly="#{dvoFace.attribute}"/>

    四.Tomahawk 組件中的 forceId 屬性能使生成出來的組件ID不像JSF生成出來的form:cid 的形式,forceId="true"使生成出來的ID就是實際編寫的ID。

    五.<t:validate*/>組件中包含大量已定義的驗證:
      
    <t:validateEmail />        電子郵件驗證
        <t:validateCreditCard />    信用卡驗證
        <t:validateRegExpr pattern='\d{5}' />    使用正則表達式驗證
        <t:validateEqual for="equal" />        與id="equal"的組件組做相等驗證
    六.aliasBean和aliasBeanScope(aliasBeanScope組件里可以設置多個aliasBean組件.)組件可以為subview里有組件或頁面以別名的方式為當前view傳遞bean
    <t:aliasBean alias="#{ali}" value="#{alibean}">
       <f:subview id="subviewer">
        <t:outputText forceId="true" id="ot" value="#{ali.name}"></t:outputText>
       </f:subview>
      </t:aliasBean>

    七.<t:buffer>組件的使用:

    <t:buffer into="#{buffer1}">
            <t:div><h:outputText value="Buffer One"/></t:div>
    </t:buffer>
    <t:buffer into="#{buffer2}">
            <t:div><h:outputText value="Buffer Two"/></t:div>
    </t:buffer>
    <h:outputText value="#{buffer2}" escape="false"/>
    <h:outputText value="#{buffer1}" escape="false"/>
    <h:outputText value="#{buffer2}" escape="false"/>
    它可以把內容先緩沖起來,再用<h:outputText>組件顯現出來,這樣就可以把順序比較后的組件先render出來。
    八.在table的排序:
    list.sort:

     

    <t:dataTable styleClass="standardTable"
                headerClass
    ="standardTable_SortHeader"
                footerClass
    ="standardTable_Footer"
                rowClasses
    ="standardTable_Row1,standardTable_Row2"
                var
    ="car"
                value
    ="#{list.cars}"
                sortColumn
    ="#{list.sort}"
                sortAscending
    ="#{list.ascending}"
                preserveDataModel
    ="true"
                preserveSort
    ="true">

            
    <f:facet name="header">
                
    <h:outputText value="(header table)"  />
            
    </f:facet>
            
    <f:facet name="footer">
                
    <h:outputText value="(footer table)"  />
            
    </f:facet>

            
    <h:column>
                
    <f:facet name="header">
                    
    <t:commandSortHeader columnName="type" arrow="true">
                        
    <h:outputText value="#{example_messages['sort_cartype']}" />
                    
    </t:commandSortHeader>
                
    </f:facet>
                
    <h:outputText value="#{car.type}" />
                
    <f:facet name="footer">
                    
    <h:outputText id="ftr1" value="(footer col1)"  />
                
    </f:facet>
            
    </h:column>

            
    <h:column>
                
    <f:facet name="header">
                    
    <t:commandSortHeader columnName="color" arrow="true">
                        
    <h:outputText value="#{example_messages['sort_carcolor']}" />
                    
    </t:commandSortHeader>
                
    </f:facet>
                
    <h:outputText value="#{car.color}" />
                
    <f:facet name="footer">
                    
    <h:outputText id="ftr2" value="(footer col2)"  />
                
    </f:facet>
            
    </h:column>

    </t:dataTable>
    protected void sort(final String column, final boolean ascending)
    {
            Comparator comparator 
    = new Comparator()
            
    {
                
    public int compare(Object o1, Object o2)
                
    {
                    SimpleCar c1 
    = (SimpleCar)o1;
                    SimpleCar c2 
    = (SimpleCar)o2;
                    
    if (column == null)
                    
    {
                        
    return 0;
                    }

                    
    if (column.equals("type"))
                    
    {
                        
    return ascending ? c1.getType().compareTo(c2.getType()) : c2.getType().compareTo(c1.getType());
                    }

                    
    else if (column.equals("color"))
                    
    {
                        
    return ascending ? c1.getColor().compareTo(c2.getColor()) : c2.getColor().compareTo(c1.getColor());
                    }

                    
    else return 0;
                }

            }
    ;
            Collections.sort(_cars, comparator);
    }

    posted on 2009-03-24 10:00 找個美女做老婆 閱讀(316) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     

    導航

    統計

    公告

    本blog已經搬到新家了, 新家:www.javaly.cn
     http://www.javaly.cn

    常用鏈接

    留言簿(6)

    隨筆檔案

    文章檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: a级成人毛片免费图片| 亚洲国产精品免费观看| 亚洲第一视频在线观看免费| 国产成人免费a在线资源| 亚洲中文无码永久免| 日韩激情淫片免费看| 亚洲AV无码一区二区大桥未久 | 九九九精品视频免费| 亚洲av片一区二区三区| 免费播放美女一级毛片| 亚洲第一永久AV网站久久精品男人的天堂AV | 豆国产96在线|亚洲| 免费在线观看亚洲| 曰批全过程免费视频免费看| 亚洲无码精品浪潮| 91免费国产视频| 亚洲人成影院在线| 波多野结衣在线免费视频| 中文日韩亚洲欧美制服| 在线免费观看一级毛片| 欧亚一级毛片免费看| 国产精品国产亚洲精品看不卡| 95老司机免费福利| 亚洲人成77777在线观看网| 成人国产mv免费视频| 午夜免费国产体验区免费的| 国产偷国产偷亚洲清高动态图| 日本不卡免费新一区二区三区| 亚洲人成免费电影| 国产免费人人看大香伊| 久久精品无码免费不卡| 亚洲精品日韩中文字幕久久久| 女人被男人桶得好爽免费视频| 精品亚洲成a人在线观看| 亚洲中文字幕无码爆乳AV| 在线观看免费中文视频| 亚洲va中文字幕| 亚洲AV无码成人精品区蜜桃| 成人人观看的免费毛片| 国产精品偷伦视频免费观看了| 亚洲人和日本人jizz|