繁体   English   中英

JDeveloper ADF:CreateInsert自动提交吗?

[英]JDeveloper ADF: CreateInsert auto committing?

我目前从ADF Faces技术以及JDeveloper开始。 我有一个.jspx页面,在其中打开一个弹出窗口,其中存在一个与视图对象绑定的ADF表单。 每当弹出窗口打开时,它都会调用createInsert操作,但随后会弹出一些错误消息,就像在执行验证一样。

到目前为止我已经考虑或尝试过的事情:

  1. 页面的“跳过验证”属性设置为TRUE。 我不知道还能尝试什么。
  2. 每个输入的自动提交属性都设置为FALSE。

考虑

我认为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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM