posts - 108,comments - 56,trackbacks - 0
          <2007年6月>
          272829303112
          3456789
          10111213141516
          17181920212223
          24252627282930
          1234567

          常用鏈接

          隨筆分類(lèi)(145)

          隨筆檔案(53)

          我的鏈接

          收藏BLOG

          搜索

          •  

          最新評(píng)論

          閱讀排行榜

             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ò)誤頁(yè)面
            建立錯(cuò)誤頁(yè)面error.jsp
            isErrorPage
          ="true"
            ……
            
          <%=exception.getLocalizedMessage()%>

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

             4、配置統(tǒng)一的頁(yè)面
          配置所有"error"都指向同一個(gè)頁(yè)面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>
          一般在開(kāi)發(fā)應(yīng)用的時(shí)候保存在客戶端,如果保存在服務(wù)器端就無(wú)法知道視圖是否過(guò)期,會(huì)造成修改了JSP后,頁(yè)面之間不一致。 

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

             9、MyFaces與JSF(SUN)的包會(huì)有沖突
          有時(shí)無(wú)法跳轉(zhuǎn),后來(lái)發(fā)現(xiàn)原因在于我把Sun的JSF兩個(gè)包都包括進(jìn)來(lái)了,發(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文件不被直接訪問(wèn)
          在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)遇到問(wèn)題時(shí)很難找到答案,而且兼容性不好,經(jīng)常會(huì)有莫名奇妙的問(wèn)題冒出來(lái)。而且同時(shí)SUN的JSTL和JSF之間的EL都不能很好的融合,期待JSF2.0,期待MyFaces1.2。但是JSF是一個(gè)標(biāo)準(zhǔn),將來(lái)一定會(huì)變得很成熟。JSF類(lèi)似.NET,所以JSF會(huì)吸收.NET的很多優(yōu)點(diǎn),JSF前景甚好。前不久看到在NETBEAN下開(kāi)發(fā)JSF,發(fā)現(xiàn)JSF的組件很豐富。

             JSF入門(mén):
          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 破繭而出 閱讀(1716) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): 框架

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


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 岳普湖县| 佛教| 五原县| 沾益县| 贵南县| 金川县| 正定县| 仁怀市| 承德市| 二连浩特市| 石狮市| 晴隆县| 西安市| 广河县| 克什克腾旗| 郧西县| 桐乡市| 阿拉善左旗| 滦南县| 镇坪县| 盈江县| 田林县| 永济市| 时尚| 百色市| 朝阳县| 彰化县| 郸城县| 手游| 恩施市| 湟源县| 连云港市| 镇雄县| 泽州县| 马关县| 鸡西市| 绥中县| 德安县| 鱼台县| 江油市| 四川省|