<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∨无码无在线观看| 亚洲国产精品无码久久98| 免费在线观看视频网站| 久久精品国产亚洲AV无码麻豆 | 免费看美女被靠到爽的视频| 成人午夜视频免费| 亚洲日本va一区二区三区| 性感美女视频在线观看免费精品| 国产亚洲精品VA片在线播放| 天天看片天天爽_免费播放| 亚洲成av人无码亚洲成av人| 又大又黄又粗又爽的免费视频| 一级毛片免费视频网站| 亚洲乱码无码永久不卡在线| 一级毛片免费毛片一级毛片免费| 久久亚洲精品成人| 中文字幕无码免费久久99 | 亚洲午夜av影院| 日本免费中文字幕| 亚洲乱码中文论理电影| 日韩中文字幕免费| 国产三级在线免费观看| 亚洲系列国产精品制服丝袜第| 久久精品女人天堂AV免费观看| 国产产在线精品亚洲AAVV| 国产v亚洲v天堂无码网站| 国产成人精品免费视| 最新亚洲人成网站在线观看| 亚洲精品你懂的在线观看| 男女免费观看在线爽爽爽视频| 精品亚洲成A人在线观看青青| 亚洲伊人久久大香线蕉综合图片| 亚洲一区二区三区免费在线观看 | 亚洲免费闲人蜜桃| 亚洲第一黄片大全| 在线日本高清免费不卡| 国内成人精品亚洲日本语音 | 好吊妞788免费视频播放| 一区二区在线免费视频| 亚洲无人区视频大全|