开发环境:JDevloper 11.1.2.1.0+ Oracle Database 10g Express Edition 10.2.0.1。
接着上一个Project,有时我们想在界面上直接显示查询结果,查询条件是通过程序设置的,不要人工输入。
这时,我们需要手工增加Binding关系。
重点步骤说明:
1. 新建一个页面:adf_query_executeWithParams2.jsf
从Data Control面板中直接拖放EmployeeView1生成Table。
2. 切换到Bindings Tab
(1)在Bindings中,手工增加一个action
选择EmployeeView1中的ExecuteWithParams,并设置参数值。
这里直接给了参数值:S%,当然也可以从别的地方传过来。
(2)在Executables中,手工增加一个invokeAction
在Executables中的对象,在该页面被Load的时候执行。
给一个id名称:InvokeExecuteWithParams,Binds到ExecuteWithParams。
还有一个关键的地方要修改:双击InvokeExecuteWithParams,弹出属性界面。
默认的Refresh:deferred.
将其改成ifNeeded。
3. 运行页面
显示的全部是以S开头的Employee。
除了动态设置查询条件,本文所介绍的技巧具有一定的普遍意义,只要你想在页面Load时调用某个方法,都可以使用本文介绍的技巧。
Project 下载: ADF_Query_ExecuteWithParams(2).7z
参考文献:
1. http://vtkrishn.wordpress.com/2010/03/28/how-to-invoke-method-before-the-page-loads-in-adf/
1 条评论:
学习了!谢谢!
发表评论