MyEclipse開發(fā)JSF之創(chuàng)建Managed Beans淺析
MyEclipse開發(fā)JSF三.創(chuàng)建Message Bundle
Message Bundle文件是一個簡單的屬性文件,存儲與keys相關的消息,提供國際化支持,也可以用在JSP頁面中。Struts也提供了類似的文件ApplicationResources.properties。
在JSF中,可以在頁面中加載message bundle使用如下代碼:﹤f:loadBundle basename="com.jsfdemo.MessageBundle" var= "bundle"/﹥
在創(chuàng)建message bundle文件之前,在src文件中通過右鍵選擇“New ﹥ Package”來創(chuàng)建com.jsfdemo包。使用新鍵文件向導來創(chuàng)建message bundle文件,如圖3.1:
MyEclipse開發(fā)JSF圖1
Figure 3.1: Creating the Message Bundle file
創(chuàng)建完MessageBundle.properties文件以后,要添加在JSP頁面顯示的每個標簽的key/value對或者是文本字符串??梢詮椭葡旅嬷械膬热莸絤essage bundle文件中。
MessageBundle.properties
user_name_label=User Name:
user_password_label=Password:
login_button_label=Login
MessageBundle.properties文件的內容
MessageBundle文件創(chuàng)建完以后,下一步,我們要創(chuàng)建ManagedBean以處理用戶登錄。
MyEclipse開發(fā)JSF四.創(chuàng)建 Managed Beans
這部分我們將創(chuàng)建Managed Beans來執(zhí)行l(wèi)ogin操作,在這個Demo中,登錄操作就是簡單的核對用戶名和密碼是否都是myeclipse,并將頁面轉向到userLoginSuccess.jsp。
首先用MyEclipse JSF Editor打開faces-config.xml文件
MyEclipse開發(fā)JSF圖2
Figure 4.1: Opening faces-config.xml file for editing
點擊右上角的Add ManagedBean來添加新的bean,如圖所示:
MyEclipse開發(fā)JSF圖3
Figure 4.2: Launch the ManagedBean wizard from the Outline View
點擊以后出現(xiàn)新的Managed Bean向導,如圖所示添加值
MyEclipse開發(fā)JSF圖4
Figure 4.3: Setup the new ManagedBean's class and properties
MyEclipse開發(fā)JSF圖5
Figure 4.4: Managed Bean Wizard Final Page
點擊完成以后,發(fā)現(xiàn)在Outline View中新增加了一個UserBean.
MyEclipse開發(fā)JSF圖6
Figure 4.5: UserBean now shown in the Outline View
UserBean.java的源代碼也出現(xiàn)在 java編輯器中。
MyEclipse開發(fā)JSF圖7
Figure 4.6: UserBean Java source opened up in an editor
Username 和password的setters和getters方法已經(jīng)為我們產(chǎn)生了,接下來就是要在這個類中增加一個方法loginUser來處理用戶登錄的操作。
代碼如下所示:
UserBean.java
- public String loginUser() ...{
- if("myeclipse".equals(getUserName()) && "myeclipse".equals(getPassword()))
- return "success";
- FacesContext facesContext = FacesContext.getCurrentInstance();
- FacesMessage facesMessage = new FacesMessage(
- "You have entered an invalid user name and/or password");
- facesContext.addMessage("loginForm", facesMessage);
- return "failure";
- }
我們注意到,UserBean類沒有繼承任何JSF的類或接口,它只是一個簡單的JavaBean包括額外邏輯來執(zhí)行操作。他包括了類似Struts中的Struts Form 和 Struts Action的功能,將二者集成到一個類中.
另外,這些方法并沒有返回到指定的類,像Struts中的ActionForward那樣。
MyEclipse開發(fā)JSF之創(chuàng)建Managed Beans就向你介紹到這里,那么之后我們將繼續(xù)向你介紹MyEclipse開發(fā)JSF的其他步驟。
【編輯推薦】