ADF之ADFUtils.getApplicationModuleForDataControl("AppModuleDataControl")
来源:互联网 发布:淘宝改后台会不会死号 编辑:程序博客网 时间:2024/06/12 20:07
在ADF开发的过程中,我们通常在view层的bean中调用model层的AppModule中的方法.
那首先我们需要得到AppModule.
我们通常会用到ADFUtils, JSFUtils这两个工具包.
我们知道ADF框架很多都是基于元数据来进行配置的.
那么经常就会通过解析el表达式来获取相应的值.
在ADFUtils中的getApplicationModuleForDataControl(String name)方法中.
public static ApplicationModule getApplicationModuleForDataControl(String name) { return (ApplicationModule)JSFUtils.resolveExpression("#{data." + name + ".dataProvider}"); }
在找到JSFUtils里的解析表达式的方法去看到.
public static Object resolveExpression(String expression) { FacesContext facesContext = getFacesContext(); Application app = facesContext.getApplication(); ExpressionFactory elFactory = app.getExpressionFactory(); ELContext elContext = facesContext.getELContext(); ValueExpression valueExp = elFactory.createValueExpression(elContext, expression, Object.class); return valueExp.getValue(elContext); }通过上面的方法体.我们可以理解为取得各种值的方法其实就是去解析el表达式.
然后通过容器查找,返回我们想要的值.
那么我们在调用ADFUtils.getApplicationModuleForDataControl("AppModuleDataControl")的方法的时候.
这里的参数字符串AppModuleDataControl是怎么确定的呢?
我们都知道在我们在拖动一个model层的数据到页面来的时候.model层的数据就能显示到页面上,那么这些是靠什么联系起来的呢?
这就要注意到在view层我们有一个DataBindings.cpx文件了.这个文件就是负责记录各个页面和页面的定义文件之间的映射以及mdel层AppModule用的
这里我们叫作AppModule的注册吧.
当我们要去用ADFUtils.getApplicationModuleForDataControl("AppModuleDataControl")的时候,一定要确保AppModuleDataControl在DataBindings.cpx文件里进行注册.
否则就取不到AppModule的实例.
以上仅仅是个人的理解和看法, 如有误,请帮忙指出.本人十分感谢.
- ADF之ADFUtils.getApplicationModuleForDataControl("AppModuleDataControl")
- adf
- adf
- adf
- adf
- ADF
- ADF组件之 SelectBooleanCheckbox使用(用于ADF table)
- Oracle ADF之 LOV 级联下拉菜单
- Oracle ADF 自定义PopUp之noteWindow
- ADF11g-010:ADF组件之 SelectBooleanCheckbox使用(用于ADF table)
- 使用ADF Faces 之三:创建和使用ADF自定义合成组件
- ADF高级开发 之二:为ADF Web应用增加安全
- ADF开发之:指定空间范围Ajax查询
- ADF Region性能调优之 Activation 属性
- ADF中VO绑定变量之required属性
- ADF控件之绑定后台局部刷新 (PPR)
- ADF之View层和Model层依赖
- ArcGIS Server .NET ADF中的AJAX之深入浅出/CallbackResult详解
- Shell 编程8(循环语句until)
- 阅读英文原版计算机书籍的一些经验
- 如何去掉Eclipse恼人的悬浮框提示
- 寻找最长等差数列
- 时事点评:人间呼唤真善美,生活需要真善美
- ADF之ADFUtils.getApplicationModuleForDataControl("AppModuleDataControl")
- 笔记本怎么设置WIfi热点
- SOD violations will not be checked
- DOS框下运行javac中文显示乱码
- u-boot系统启动流程
- Android 常用代码
- Hibernate --Hibernate 的应用(Hibernate 的结构)
- opencv的图象格式IplImage 和CBitmap的转换
- Oracle物化视图刷新方式on commit