tell me more icon自動コンポーネント・バインディング

ページの自動コンポーネント・バインディングを有効にするには、次のいずれかの方法を使用します。

  • 初期ページを作成する際、Create JSF Pageウィザードを使用して、新規のマネージドBeanを使用するか、既存のマネージドBeanを使用する「 Page Implementation 」オプションを選択します。
    Create JSFページのPage Implementationオプション
  • ページの設計時に、「 Desi gn then choose Page Properties 」メニューを選択して、Page Propertiesダイアログの「 Auto Bind 」をオンにし、ページの既存のマネージドBeanを選択するか、新規のマネージドBeanを作成します(次のステップを参照)。
    Page Propertiesダイアログ

繰り返しますが、自動コンポーネント・バインディングを有効にすると、Oracle JDeveloperは、そのJSFページのバッキングBeanを自動的に作成します。 バッキングBeanとは、ページ上のUIコンポーネントのロジックとプロパティが格納されたJSFマネージドBeanのことです。 マネージドBeanとは、初期化処理とスコープが faces-config.xmlファイル内に宣言的に設定されたJavaBeanです。 マネージドBeanの詳細については、別のTell Meトピックで説明します。

バッキングBeanは、次のアイテムを保持するために使用します。

  • ページ上のUIコンポーネント内の値をバッキングするプロパティ
  • ページ上のUIコンポーネントのイベントを処理するアクション・メソッド
  • ページのUIComponentツリーの各UIコンポーネントのインスタンス。これにより、ユーザー・インタフェースをプログラムで操作できます(たとえば、コンポーネントの表示/非表示)。

自動コンポーネント・バインディングを使用したページ上にUIコンポーネントを挿入すると、Oracle JDeveloperによって次の処理が実行されます。

  • バッキングBean内に、そのコンポーネントのBeanプロパティとアクセッサ・メソッドを挿入します。 以下に例を挙げます。
                                 
    private HtmlInputText inputText1;
                                 
    public void setInputText1(HtmlInputText inputText1) {
      this.inputText1 = inputText1;
    }
    public HtmlInputText getInputText1() {
      return inputText1;
    }
                              
  • ページ内で、コンポーネントの binding属性を使用して、コンポーネント・インスタンスをBeanプロパティにバインドします。 以下に例を挙げます。 <h:inputText binding="#{backing_login.inputText1}" id="inputText1"/>backing_loginはBean名)

    注:Oracle JDeveloperによって自動的にバインドされたコンポーネントのプロパティ・インスペクタでは、Bindingプロパティ・フィールドが編集不可になります。

Oracle JDeveloperは、バッキングBean上のプロパティについて、マネージド・プロパティを作成しません。 マネージド・プロパティとは、Beanがインスタンス化される際に値が投入されるBeanのプロパティです。 Beanを特定のプロパティ値でインスタンス化する場合は、 faces-config.xmlファイルにマネージド・プロパティ設定用のエントリを手動で追加する必要があります。

ページの作成時または設計時に、自動コンポーネント・バインディングを有効にしたかどうかに関係なく、ページの設計中であれば、いつでも自動コンポーネント・バインディングのオン/オフを切り替えることができます。それには、「 Desi gn then choose Page Properties 」を選択し、「 Auto Bind 」チェックボックスをオンまたはオフにします。 たとえば、ページに追加するいくつかのコンポーネントについて、自動的にプロパティとアクセッサ・メソッドが生成されるようにするには、そのコンポーネントを追加する直前に自動コンポーネント・バインディングをオンにして、コンポーネントを追加したあとでオフにします。

自動コンポーネント・バインディングを使用したページのXMLソース・コード内には、ファイルの末尾に自動バインディング用のコメント行が挿入されています。 以下に例を挙げます。

                         
<%-- 
oracle-jdev-comment:auto-binding-backing-bean-name:backing_login
--%>
                      

次の手順では、新規のマネージドBeanを作成することによって、自動コンポーネント・バインディングを有効にした状態を維持します。 次の手順が完了すると、 Login.jspページのソース・コードに自動バインディング用のコメント行が追加されます。