前两个实验使用的都是Explicit SavePoints,本实验介绍如何使用Implicit SavePoints,即隐式SavePoints。
重点步骤说明:
1. 修改adf-config.xml,设置enable-implicit-savepoint=true
<adf-controller-config xmlns="http://xmlns.oracle.com/adf/controller/config">
<savepoint-datasource>
java:comp/env/jdbc/HRConnDS
</savepoint-datasource>
<enable-implicit-savepoints>true</enable-implicit-savepoints>
</adf-controller-config>
2. 设置Bounded TaskFlow的Critical=true
这里只设置Department TaskFlow的Critical=true,Location TaskFlow和Employee TaskFlow的Critical=false。
3. 运行
(1)main.jspx页面
(2)Location TaskFlow
修改一些信息,并点击Submit,然后点击To Department TaskFlow。
(3)Deparment TaskFlow
修改一些信息,并点击Submit,然后点击To Employee TaskFlow。
这时会弹出一个确认窗口,这是因为Department TaskFlow的Critical=true。
(4)点击确定后,数据库表ORADFCSAVPT中会增加一条记录
(5)关闭浏览器,模拟用户做了一般的工作,然后关闭浏览器。
(6)重新访问应用,选择Save Point ID,然后点击Restore。
(7)发现页面直接导航到了Employee TaskFlow
(8)点击Back按钮,发现Department页面的数据依然保留着最后的修改
(9)点击Back按钮,发现Location页面的数据依然保留着最后的修改
Project 下载:ADF_TaskFlow_SavePoints_Implicit.7z
没有评论:
发表评论