早些年,微软件的开发利器总是让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。
4 .在代码的空白地点地右健,选择 fix imports ,引入类
com.sun.webui.jsf.model.Option
5.以同样的方式,再添加代码
String[] choices;
并加入getter与setter方法
6.在这个Bean时,还需要在这的构造函数里添加初始化Listbox的代码,代码如下:
![](https://i-blog.csdnimg.cn/blog_migrate/04e85f05536ccd79982bbca17251f63e.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/7a3782e39bce8b40e9b05a5e4fd452d8.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/7a3782e39bce8b40e9b05a5e4fd452d8.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/7a3782e39bce8b40e9b05a5e4fd452d8.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/da43bcbc871cd4f18defa9179da7af64.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/04e85f05536ccd79982bbca17251f63e.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/9723ec7779ef47d51f1f48b9337ffca0.gif)
三、绑定Listbox组件至Bean
接下来需要将上面所设计的Listbox与Bean进行数据绑定。
1.打开Page1.jsp页面的设计页面,右击Listbox组件,选择choose Bind to Data选项。
2.在出来界面中,选择SessionBean 1>listOptions,点击OK,如下图所示:
3.在Listbox的属性窗口,选择selected属性,点右边的按钮,在出来的对话框(与上面的有点类似)选择SessionBean1 > choices,点击OK。
![](https://i-blog.csdnimg.cn/blog_migrate/04e85f05536ccd79982bbca17251f63e.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/7a3782e39bce8b40e9b05a5e4fd452d8.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/7a3782e39bce8b40e9b05a5e4fd452d8.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/7a3782e39bce8b40e9b05a5e4fd452d8.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/da43bcbc871cd4f18defa9179da7af64.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/04e85f05536ccd79982bbca17251f63e.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/9723ec7779ef47d51f1f48b9337ffca0.gif)
注;以上内容来自网络,本人不承担任何连带责任
文章转自:http://www.zhuaxia.com/item/658609215