2016-06-14 13 views
0

私は現在、ADF FacesテクノロジとJDeveloperを使用しています。私は.jspxページを持っています。このページでは、View ObjectにバインドされたADFフォームが存在するポップアップを開きます。ポップアップが開くたびにcreateInsertアクションが呼び出されますが、バリデーションが実行されているかのようにいくつかのエラーメッセージがポップアップします。私がこれまで考えられてか試してみたJDeveloper ADF:CreateInsertが自動的にコミットしていますか?

もの:

  1. ページの「SKIP検証」プロパティがTRUEに設定されています。私は 他に何をしようと知っていません。
  2. 各入力の自動提出プロパティはFALSEに設定されています。

配慮は私がcreateInsertアクションが自動提出だと思うが、私が言ったように私はほんの数日前にこれらの技術を使用し始めました。だから、おそらくこの "奇妙な行動"は、私がまだ考慮していない他の設定によって引き起こされています。

Popup message errors

は、ポップアップが開いたときにここで私が使用したコードは(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; 
} 

答えて

0

を取得する方法があります入力コントロールの即時属性を使用します。 即時および検証メカニズムの理解を深めるためread this article

関連する問題