posts - 108,comments - 56,trackbacks - 0
             1、單選按鈕
             <h:selectOneRadio id="sel" value="#{HelloBean.selected}">
             
          <f:selectItem id="red" itemLabel=" red " itemValue="red"/>
             
          <f:selectItem id="green" itemLabel=" green " itemValue="green"/>
             
          </h:selectOneRadio> 

             2、配置本地化
             faces-config.xml文件中添加
             
          <application>
             
          <locale-config>
             
          <default-locale>zh_CN</default-locale>
             
          </locale-config>
             
          </application> 

             3、配置全局錯(cuò)誤頁面
            建立錯(cuò)誤頁面error.jsp
            isErrorPage
          ="true"
            ……
            
          <%=exception.getLocalizedMessage()%>

            配置web.xml(可以自由配置異常類型
          /另外也可以根據(jù)error-code配置)
            
          <error-page>
             
          <exception-type>java.lang.Exception</exception-type>
             
          <location>/error.jsp</location>
            
          </error-page>

             4、配置統(tǒng)一的頁面
          配置所有"error"都指向同一個(gè)頁面error.jsp(faces-config.xml)
          <navigation-rule>
               
          <from-view-id>*</from-view-id>
              
          <navigation-case>
                 
          <from-outcome>error</from-outcome>
                
          <to-view-id>/error.jsp</to-view-id>
              
          </navigation-case>
          </navigation-rule> 

             5、request.setAttribute("name")
            在JSF中轉(zhuǎn)換成:
            FacesContext facesContext 
          = FacesContext.getCurrentInstance();
            facesContext.getExternalContext().getRequestMap().put(
          "name","value"); 

             6、配置保存視圖的狀態(tài)(javax.faces.STATE_SAVING_METHOD)
          Web.xml:
          <context-param>
              
          <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
              
          <param-value>client</param-value>
          </context-param>
          或者保存在服務(wù)器上:
          <context-param>
              
          <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
              
          <param-value>server</param-value>
          </context-param>
          一般在開發(fā)應(yīng)用的時(shí)候保存在客戶端,如果保存在服務(wù)器端就無法知道視圖是否過期,會(huì)造成修改了JSP后,頁面之間不一致。 

             7、使用JSTL
          <%@ taglib uri="
             8、修改系統(tǒng)自帶的錯(cuò)誤提示信息
          在myfaces-all.jar的 javax.faces.包下面properties文件

             9、MyFaces與JSF(SUN)的包會(huì)有沖突
          有時(shí)無法跳轉(zhuǎn),后來發(fā)現(xiàn)原因在于我把Sun的JSF兩個(gè)包都包括進(jìn)來了,發(fā)生了沖突,其實(shí)MyFaces中就已經(jīng)有了jsf-impl.jar包。

             10、在JSF中應(yīng)用JS
          在JSF中應(yīng)用javascript在提交前做一些客戶端的驗(yàn)證或修改DOM動(dòng)作時(shí),有兩種常用方法
          1、在form中添加onsubmit屬性
          <h:form onsubmit="return JS()">
          ……
          </h:form>
          2、在commandButton中添加onclick屬性
          <h:commandButton  onclick="return JS()"/>
          注意:JS在驗(yàn)證失敗(即不希望提交時(shí))必須return 
          false,否則都會(huì)提交。

             11、保護(hù)/下面的jsp文件不被直接訪問
          在web.xml中加入:
          <security-constraint>
          <display-name>
              Prevent access to raw JSP pages that are for JSF pages.
          </display-name>
          <web-resource-collection>
              
          <web-resource-name>Raw-JSF-JSP-Pages</web-resource-name>
              
          <!-- Add url-pattern for EACH raw JSP page -->
              
          <url-pattern>/welcome.jsp</url-pattern>
              
          <url-pattern>/login.jsp</url-pattern>
          </web-resource-collection>
          <auth-constraint>
                
          <description>No roles, so no direct access</description>
          </auth-constraint>
          </security-constraint> 

             個(gè)人認(rèn)為,JSF目前技術(shù)不夠成熟,采用JSF框架有很大的技術(shù)風(fēng)險(xiǎn),當(dāng)遇到問題時(shí)很難找到答案,而且兼容性不好,經(jīng)常會(huì)有莫名奇妙的問題冒出來。而且同時(shí)SUN的JSTL和JSF之間的EL都不能很好的融合,期待JSF2.0,期待MyFaces1.2。但是JSF是一個(gè)標(biāo)準(zhǔn),將來一定會(huì)變得很成熟。JSF類似.NET,所以JSF會(huì)吸收.NET的很多優(yōu)點(diǎn),JSF前景甚好。前不久看到在NETBEAN下開發(fā)JSF,發(fā)現(xiàn)JSF的組件很豐富。

             JSF入門:
          http://www.javaworld.com.tw/confluence/pages/viewpage.action?pageId=2630
             RichFaces Demo:http://livedemo.exadel.com/richfaces-demo/richfaces/tabPanel.jsf
             IBM JSF:http://www.ibm.com/developerworks/cn/java/j-jsf3/
          posted on 2007-06-25 17:58 破繭而出 閱讀(1717) 評(píng)論(0)  編輯  收藏 所屬分類: 框架

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 鄢陵县| 三明市| 沙田区| 陆良县| 深水埗区| 霍邱县| 扎鲁特旗| 绵竹市| 陇南市| 建湖县| 绥宁县| 张掖市| 晋城| 广东省| 宣汉县| 乌鲁木齐市| 饶平县| 沅江市| 金华市| 分宜县| 新沂市| 天祝| 泽库县| 红安县| 泰安市| 三河市| 年辖:市辖区| 普安县| 南平市| 青神县| 涞水县| 扶沟县| 密云县| 娄底市| 卢湾区| 尉氏县| 曲阜市| 莱芜市| 凤台县| 大冶市| 玉环县|