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

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

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

    jwebee

    jwebee

    BlogJava 首頁 新隨筆 聯系 聚合 管理
      11 Posts :: 0 Stories :: 0 Comments :: 0 Trackbacks
    第一個JSF程式 中,我們簡單的定義了頁面的流程由 index.jsp 到 welcome.jsp,接下來我們擴充程式,讓它可以根據使用者輸入的名稱與密碼是否正確,決定要顯示歡迎訊息或是將使用者送回原頁面進行重新登入。

     

    首先我們修改一下UserBean:
    • UserBean.java
     
    package onlyfun.caterpillar;

    public class UserBean {
    private String name;
    private String password;
    private String errMessage;

    public void setName(String name) {
    this.name = name;
    }

    public String getName() {
    return name;
    }

    public void setPassword(String password) {
    this.password = password;
    }

    public String getPassword() {
    return password;
    }

    public void setErrMessage(String errMessage) {
    this.errMessage = errMessage;
    }

    public String getErrMessage() {
    return errMessage;
    }

    public String verify() {
    if(!name.equals("justin") ||
    !password.equals("123456")) {
    errMessage = "名稱或密碼錯誤";
    return "failure";
    }
    else {
    return "success";
    }
    }
    }

     

    在UserBean中,我們增加了密碼與錯誤訊息屬性,在verify()方法中,我們檢查使用者名稱與密碼,它傳回一個字串,"failure"表示登入錯誤,並會設定錯誤訊息,而"success"表示登入正確,這個傳回的字串將決定頁面的流程。

     

    接下來我們修改一下 faces-config.xml 中的頁面流程定義:
    • faces-config.xml
     
    <?xml version="1.0"?>
    <!DOCTYPE faces-config PUBLIC
    "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
    "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">

    <faces-config>
    <navigation-rule>
    <from-view-id>/pages/index.jsp</from-view-id>
    <navigation-case>
    <from-outcome>success</from-outcome>
    <to-view-id>/pages/welcome.jsp</to-view-id>
    </navigation-case>
    <navigation-case>
    <from-outcome>failure</from-outcome>
    <to-view-id>/pages/index.jsp</to-view-id>
    </navigation-case>
    </navigation-rule>

    <managed-bean>
    <managed-bean-name>user</managed-bean-name>
    <managed-bean-class>
    onlyfun.caterpillar.UserBean
    </managed-bean-class>
    <managed-bean-scope>session</managed-bean-scope>
    </managed-bean>
    </faces-config>

     

    根據上面的定義,當傳回的字串是"success"時,將前往 welcome.jsp,如果是"failure"的話,將送回 index.jsp。

     

    接下來告訴網頁設計人員Bean名稱與相關屬性,以及決定頁面流程的verify名稱,我們修改 index.jsp 如下:
    • index.jsp
     
    <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
    <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
    <%@page contentType="text/html;charset=Big5"%>
    <html>
    <head>
    <title>第一個JSF程式</title>
    </head>
    <body>
    <f:view>
    <h:form>
    <h3>請輸入您的名稱</h3>
    <h:outputText value="#{user.errMessage}"/><p>
    名稱: <h:inputText value="#{user.name}"/><p>
    密碼: <h:inputSecret value="#{user.password}"/><p>
    <h:commandButton value="送出"
    action="#{user.verify}"/>
    </h:form>
    </f:view>
    </body>
    </html>

     

    當要根據verify運行結果來決定頁面流程時,action屬性中使用 JSF Expression Language "#{user.verify}",如此JSF就知道必須根據verify傳回的結果來導航頁面。

     

    <h:outputText>可以取出指定的Bean之屬性值,當使用者因驗證錯誤而被送回原頁面時,這個錯誤訊息就可以顯示在頁面上。


    周行 2008-05-22 12:35 發表評論

    文章來源:http://www.tkk7.com/zhouxing/archive/2008/05/22/SimpleNavigation.html
    posted on 2008-05-22 12:35 jwebee 閱讀(135) 評論(0)  編輯  收藏

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


    網站導航:
     
    主站蜘蛛池模板: 国产青草亚洲香蕉精品久久| 久久综合九九亚洲一区| 亚洲国产精品免费观看| 久久WWW免费人成一看片| 亚洲视频一区二区三区| www.免费在线观看| 亚洲精品国产情侣av在线| 免费播放春色aⅴ视频| 国产成人亚洲精品蜜芽影院| 国产美女无遮挡免费视频| 国产精品亚洲一区二区无码| 亚洲VA综合VA国产产VA中| 一级做a爰片久久毛片免费陪 | 国产免费直播在线观看视频| 亚洲欧洲日产国码av系列天堂| sihu国产精品永久免费| 久久九九亚洲精品| 免费大片av手机看片高清| 亚洲国产精品综合久久一线| 亚洲乱码国产乱码精品精| 在线毛片片免费观看| 亚洲综合在线成人一区| 青青视频观看免费99| 亚洲国产精品成人AV在线| 亚洲色偷偷狠狠综合网| 无码av免费一区二区三区试看| 亚洲狠狠狠一区二区三区| 国产精品免费一级在线观看| 一级有奶水毛片免费看| 7777久久亚洲中文字幕蜜桃| 女人与禽交视频免费看| 怡红院免费全部视频在线视频| 亚洲电影免费观看| 免费在线不卡视频| 中文字幕在线观看免费视频| 亚洲第一综合天堂另类专| 亚洲国产精品成人精品无码区| 国拍在线精品视频免费观看| 一级毛片视频免费观看| 亚洲国产超清无码专区| 免费一级毛片一级毛片aa|