在NetBeans 6中開發Ajax功能的JSF組件
早些年,微軟件的開發利器總是讓Java陣營的IDE顯得很弱智。微軟種可視化的開發方式讓無數的Java程序員向往。雖然Eclipse的出現在一定程度上緩解了這種心態,但還是有差距啊。長江后浪推前浪,前浪死在沙灘上。如今的NetBeans 6號稱很牛,試一試,發現確實也比較牛,雖然不能完全與微軟的IDE相提并論,但至少讓我們看到真正可視化編程的曙光。下面就介紹一下如何在NetBeans6中可初見化的開發具有Ajax功能的JSF組件。
開發運行環境:NetBeans 6+GlassFish v2
一、創建設計頁面
1.在NetBeans6下創建一個名稱為ListboxExample的web application,選擇Visual Web JavaServer Faces框架,進入Page.jsp的可視化設計器界面。
2.從工具面板(Palette)中拖一個Listbox組件放在頁面的左上方,在屬性面板(Properties),設置Listbox的id為personDD。看看,這是不是有點像早期的VB6或是如今的VS2008的操作了?
3.設置Listbox的multiple屬性為True,這里主要是為了讓Listbox可以進行多個值的選擇。
4.在工具面板(Palette)中拖一個Text Area組件,放置在頁面的右邊。它用于顯示在Listbox選擇一個選項時它的子選擇。
5.在屬性窗口中,設置Text Area組件的row屬性為10。
二、設計Bean
為了將ListBox中的數據保存起來,這里采用了JavaBean的方式。
1.在Navigator窗口中,右擊SessionBean1,并選擇Edit Java Source.。
2.在sessionBeans1類中加入代碼:
Option[] listOptions;
3.在listOptions是點擊右鍵,選擇Insert Code選擇項,選擇Getter and Setter選擇項,如下圖所示:
在出來的界面上,打上勾,點擊OK。
com.sun.webui.jsf.model.Option
5.以同樣的方式,再添加代碼
String[] choices;
并加入getter與setter方法
6.在這個Bean時,還需要在這的構造函數里添加初始化Listbox的代碼,代碼如下:
三、綁定Listbox組件至Bean
接下來需要將上面所設計的Listbox與Bean進行數據綁定。
1.打開Page1.jsp頁面的設計頁面,右擊Listbox組件,選擇choose Bind to Data選項。
2.在出來界面中,選擇SessionBean 1>listOptions,點擊OK,如下圖所示:
3.在Listbox的屬性窗口,選擇selected屬性,點右邊的按鈕,在出來的對話框(與上面的有點類似)選擇SessionBean1 > choices,點擊OK。
四、Listbox的Ajax功能實現
當選擇Listbox中的一條記錄時,在Text Area中應該顯示該記錄的子選項。
1.在設計頁面中,右擊Listbox組件,選擇Edit Event Handler>processValueChange。
2.在該方法中添加如下代碼
3.在頁面的設計模式下,選擇Listbox的屬性窗口,點擊onChange屬性,在出來的對話框中輸入如下代碼
至此,功能已經完成,可以運行來看效果。但下面再加一個增加與刪除的功能。
五、Listbox選擇項的維護
為了對Listbox能進行頁面上的增加與刪除,這里加多兩個button.
1.打開SessionBean1的代碼進行編輯,加入新的屬性,如下
當然,按前面的方法為counter增加getter與setter方法。
2.在SessionBean1增加如下的兩個方法
3.打開頁面的設計模式,從工具面板中拖一個Button,將ID修改為add,名稱修改為增加。再拖一個Button,ID為Remove,名稱為刪除。
4.雙擊增加按鈕,在add_action()方法中添加如下代碼
5.雙擊刪除按鈕,在remove_action ()方法中添加如下代碼;
完成,運行整個工程。
參考:http://www.netbeans.org/kb/60/web/clientsiderendering.html
Powered by: BlogJava Copyright © 詩特林