预计时间:20分钟
目录
<!--[if !supportLists]-->l <!--[endif]-->创建第一页
<!--[if !supportLists]-->l <!--[endif]-->在两个页面之间导航
<!--[if !supportLists]-->l <!--[endif]-->向第二页添加组件
<!--[if !supportLists]-->l <!--[endif]-->添加用于实现动态导航的下拉列表
<!--[if !supportLists]-->l <!--[endif]-->添加第三页
<!--[if !supportLists]-->l <!--[endif]-->实现动态页面导航
<!--[if !supportLists]-->l <!--[endif]-->部署应用程序
<!--[if !supportLists]-->l <!--[endif]-->实现高级动态页面导航
本教程将使用以下技术和资源:
JavaServer Faces组件/
Java EE平台
<!--[if !vml]--><!--[endif]-->1.2/Java EE 5*
<!--[if !vml]--><!--[endif]-->1.1/J2EE 1.4
Travel数据库
<!--[if !vml]--><!--[endif]-->不是必需的
BluePrints AJAX组件库
<!--[if !vml]--><!--[endif]-->不是必需的
* 为了使用NetBeans IDE 6.0的Java EE 5功能,使用完全符合Java EE 5标准的应用服务器,比如Sun Java Application Server 9/GlassFish。
本教程针对GlassFish v2 Application Server。如果您使用的是其他服务器,请参考发行说明和常见问题解答以了解已知问题和解决方法。有关支持的服务器和 Java EE 平台的详细信息,请参见发行说明。
创建第一页
在本教程的第一部分中,您将创建一个包含两个页面的Web应用程序,并使用按钮在两个页面之间进行导航。随后,将添加一个Drop Down List组件,以使用户能够在运行时选择目标页。
首先,创建一个包含Static Text组件和Button组件的页面。
<!--[if !supportLists]-->1. <!--[endif]-->创建一个新的Web应用程序项目,并将其命名为NavigationExample。使用GlassFish V2 Application Server和Visual Web JavaServer Faces框架。
出现新项目,并且其初始页会显示在Visual Designer中。
<!--[if !supportLists]-->2. <!--[endif]-->从Palette的Basic类别中,将一个Static Text组件拖放到页面上。通过直接在该组件的默认文本上键入内容,将其text属性更改为Page One。
<!--[if !supportLists]-->3. <!--[endif]-->将一个Button组件从Palette拖放到页面上,并将其text属性更改为Go。
<!--[if !supportLists]-->¡ <!--[endif]-->请注意:在IE7中有一个已知问题会影响到JSF1.2 Button组件的宽度。解决方法是将组件按钮放到一个布局组件中(Grid Panel、Group Panel或Layout Panel)。
在两个页面之间导航
接下来,在应用程序中添加另一个页面,然后通过创建链接或页面连线指定第一页和第二页之间的导航。
<!--[if !supportLists]-->1. <!--[endif]-->在可视编辑器的编辑区域空白处右键单击,然后从弹出菜单中选择“页面导航”。
Page Flow Editor将显示“Page1.jsp”图标<!--[if !vml]--><!--[endif]-->,它表示您在上一部分中创建的页面。注意, 该图标具有4个特性:
<!--[if !supportLists]-->a. <!--[endif]-->其标记指示图标显示的页面类型。绿色箭头只是页面时项目的主页面。
<!--[if !supportLists]-->b. <!--[endif]-->图标表示的文件名称用于区分产品中的页面。
<!--[if !supportLists]-->c. <!--[endif]-->“+”符号用于展开图标,以显示页面上的组件。
<!--[if !supportLists]-->d. <!--[endif]-->连线端点用于绘制页面之间的导航线。
<!--[if !supportLists]-->2. <!--[endif]-->按如下方法创建一个新JSP页面:
<!--[if !supportLists]-->a. <!--[endif]-->在编辑区域中右键单击,然后选择New File。
<!--[if !supportLists]-->b. <!--[endif]-->在New File对话框中,在Categories下面选择Java Server Faces,在File Types下面选择Visual Web JSF Page,然后单击Next。
<!--[if !supportLists]-->c. <!--[endif]-->接受默认名称 Page2,然后单击Finish。
将在Page Flow Editor中显示Page2.jsp图标,并在Projects窗口的NavigationExample >Web Pages节点下面添加Page2.jsp节点。
<!--[if !supportLists]-->3. <!--[endif]-->如果创建Page2.jsp之后未在Page Flow Editor中显示,请选择faces-config.xml以显示Editor。
<!--[if !supportLists]-->4. <!--[endif]-->单击Page1.jsp图标上的“+”号以将其放大,以便可以看到button1图标。
<!--[if !supportLists]-->5. <!--[endif]-->单击button1图标,并拖动一条直线到Page2.jsp图标。出现一条由第一页指向第二页的连线。默认情况下,新创建的连线名称为case1。
<!--[if !supportLists]-->6. <!--[endif]-->双击该连线的名称,然后将其由case1更改为Page2。
<!--[if !supportLists]-->7. <!--[endif]-->单击编辑工具栏中的XML以查看在最后两步中生成的代码。粗体显示的导航规则添加到托管bean代码下面,以省略号(...)表示。
代码样例 1:生成的代码
http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd">
在faces-config标记内添加的代码用于指定此Web应用程序的单个导航规则。每个导航规则都指定一个初始页以及一个或多个目标页。

