开发环境:JDevloper 11.1.2.1.0+ Oracle Database 10g Express Edition 10.2.0.1。
完成《 Creating ADF Menus for Page Navigation 》。
实验介绍:对于树形结构的全局性的导航规则,如下图:
可以考虑创建多个UnBounded TaskFlow来分割作为页面,如下图:
(1)adfc-config.xml是默认的最高级的导航规则,是程序的总入口。
(2)adfc-products-config.xml 封装以Products为根节点的导航规则。
(3)adfc-sales-config.xml 封装以Sales为根节点的导航规则。
注意,请以adfc-xxx-config.xml的格式来命名Unbounded TaskFlow。
重要步骤说明:
1. 先后创建两个Unbounded TaskFlow
注意勾掉默认选中的"Create as Bounded TaskFlow“。
2. 为Unbounded TaskFlow创建菜单模型
(1)右键点击Unbounded TaskFlow,选择”Create or Update ADF Menu“
(2)分别为三个Unbounded TaskFlow创建三个菜单模型
3. 按照需求修改菜单模型
(1)修改菜单模型上下级关系
(2)父节点作为GroupNode,子节点作为ItemNode
以sale_menu为例:sales作为GroupNode,其它作为其子节点。
GroupNode不指向具体的页面,ItemNode才指向具体的页面。
(3)如果某个父节点同时也是别人的子节点,需要设置为SharedNode
以products_menu为例,它还有一个子节点Sales是定义在sales_menu中的,因此右键点击Products节点为其增加SharedNode,即Sales节点。
使用EL表达式引用sales_menu。
4. 创建页面模板使用菜单模型
这里大量使用了navigationPane组件,其中的commandNavigationItem使用了菜单模型。
具体页面代码,请参考Project源码。
6. 设计和运行效果
完成《 Creating ADF Menus for Page Navigation 》。
实验介绍:对于树形结构的全局性的导航规则,如下图:
可以考虑创建多个UnBounded TaskFlow来分割作为页面,如下图:
(1)adfc-config.xml是默认的最高级的导航规则,是程序的总入口。
(2)adfc-products-config.xml 封装以Products为根节点的导航规则。
(3)adfc-sales-config.xml 封装以Sales为根节点的导航规则。
注意,请以adfc-xxx-config.xml的格式来命名Unbounded TaskFlow。
重要步骤说明:
1. 先后创建两个Unbounded TaskFlow
注意勾掉默认选中的"Create as Bounded TaskFlow“。
2. 为Unbounded TaskFlow创建菜单模型
(1)右键点击Unbounded TaskFlow,选择”Create or Update ADF Menu“
(2)分别为三个Unbounded TaskFlow创建三个菜单模型
![](http://4.bp.blogspot.com/-A0aF4zkj8rY/T2AOq47m2_I/AAAAAAAADnA/6BpOmoUl8XE/s1600/5.gif)
3. 按照需求修改菜单模型
(1)修改菜单模型上下级关系
![](http://1.bp.blogspot.com/-g6heK0k-RWE/T2ASqNHCCAI/AAAAAAAADog/J22mB2e4eJw/s1600/6.gif)
(2)父节点作为GroupNode,子节点作为ItemNode
以sale_menu为例:sales作为GroupNode,其它作为其子节点。
GroupNode不指向具体的页面,ItemNode才指向具体的页面。
![](http://1.bp.blogspot.com/-W_iMbc_8YbY/T2ASpwYXLMI/AAAAAAAADoU/8mUP1pVnzFE/s1600/7.gif)
(3)如果某个父节点同时也是别人的子节点,需要设置为SharedNode
以products_menu为例,它还有一个子节点Sales是定义在sales_menu中的,因此右键点击Products节点为其增加SharedNode,即Sales节点。
![](http://4.bp.blogspot.com/-5CyrnXVP1-I/T2ASpkmfxJI/AAAAAAAADoI/B281KTdcVSo/s1600/8.gif)
使用EL表达式引用sales_menu。
![](http://3.bp.blogspot.com/-JeTqMZQw0F0/T2ASpSyDy4I/AAAAAAAADn8/hbqS5YJSpKo/s1600/9.gif)
4. 创建页面模板使用菜单模型
这里大量使用了navigationPane组件,其中的commandNavigationItem使用了菜单模型。
具体页面代码,请参考Project源码。
6. 设计和运行效果
Project 下载:MenuWebApp.7z
http://maping930883.blogspot.com/2009/09/adf028adf-controller.html