[英]JDeveloper ADF: CreateInsert auto committing?
我目前从ADF Faces技术以及JDeveloper开始。 我有一个.jspx页面,在其中打开一个弹出窗口,其中存在一个与视图对象绑定的ADF表单。 每当弹出窗口打开时,它都会调用createInsert操作,但随后会弹出一些错误消息,就像在执行验证一样。
到目前为止我已经考虑或尝试过的事情:
考虑
我认为createInsert操作是自动提交的,但是就像我所说的,我几天前才开始使用这些技术。 因此,也许这种“怪异行为”是由我尚未考虑的其他设置引起的。
这是打开弹出窗口时使用的代码(PopUpFecthListener)
public void createInsert(PopupFetchEvent popupFetchEvent) {
try {
System.out.println("Inside function");
ADFUtil.invokeEL("#{bindings.CreateInsertVariable.execute}");
Util.getAppModuleImpl().getFurVariableView1().getCurrentRow().setAttribute("Estado", "I");
System.out.println("Function has been executed");
} catch (Exception e) {
Util.logErrorJava("Error", e.getMessage());
}
}
这是我获取AppModuleImpl的方法
public static AppModuleImpl getAppModuleImpl() {
FacesContext context = FacesContext.getCurrentInstance();
ValueBinding vb = context.getApplication().createValueBinding("#{data}");
BindingContext bc = (BindingContext)vb.getValue(context);
DCDataControl dc = bc.findDataControl("AppModuleDataControl");
AppModuleImpl module = (AppModuleImpl)dc.getDataProvider();
return module;
}
我认为您应该尝试对输入控件使用立即属性。 为了更好地了解即时和验证机制, 请阅读本文
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.