JavaBeanのプロパティおよびメソッドのチューニング

作成するBeanInfoクラスごとに、JDeveloperのインスペクタでJavaBeanに対して表示するプロパティおよびメソッドと表示しないプロパティおよびメソッドを決定できます。

次の場合に、プロパティまたはメソッドをチューニングできます。

注意: BeanInfoから1つ以上のプロパティ、メソッドまたはイベントを公開した場合は、プロパティ、メソッドまたはイベントを記述する情報についてBeanInfoの使用をIDEに強制することになります。したがって、プロパティ、メソッドまたはイベントを選択するとただちに、その他の選択しないプロパティ、メソッドまたはイベントはすべてクラスから公開されなくなります。

標準JavaBeanクラスのプロパティまたはメソッドをチューニングするには、次のようにします。

  1. BeanのBeanInfoクラスを作成します。
  2. アプリケーション・ナビゲータで、BeanInfoクラスを選択します。
  3. エディタ・ウィンドウで、「クラス」というエディタ・タブを選択します。

    エディタ・タブは、エディタ・ウィンドウで現在開いているドキュメントの一番下にあるタブです。

  4. クラス・エディタで、「プロパティ」または「メソッド」タブを選択し、宣言済のプロパティまたはメソッドのリストを表示します。
  5. プロパティをBeanInfoを介して参照できるようにするには、「プロパティ」タブを選択し、そのページでプロパティのget()およびset()チェック・ボックスを選択します。

    プロパティに対して選択するこれらのチェック・ボックスの組合せには、プロパティの読取り/書込みアクセスを反映する必要があります。たとえば、書込み専用のプロパティの場合にはset()チェック・ボックスのみを選択します。読取り専用のプロパティの場合にはget()チェック・ボックスのみを選択します。

    BeanInfoクラスを介してプロパティを公開し、プロパティ・インスペクタに表示するには、get()set()の両方を選択する必要があります。インスペクタには読取り/書込み両用のプロパティのみが表示されます。

  6. BeanInfoを介して参照されないようにプロパティを非表示にするには、プロパティ・ページで、そのプロパティのget()set()の両方のチェック・ボックスの選択を解除します。

    どのプロパティ・チェック・ボックスも選択しない場合、エディタはBeanInfoクラス定義からプロパティ・ディスクリプタ・メソッドを削除します。この場合、IDEはJavaイントロスペクションに従い、すべてのプロパティが公開されます。

  7. Beanで定義するメソッドを明示的に公開するには、「メソッド」タブを選択し、そのページで目的のメソッドの「公開」を選択します。メソッドを使用できないようにする場合は、そのメソッドの「公開」チェック・ボックスの選択を解除します。

    どのメソッド・チェック・ボックスも選択しない場合、エディタはBeanInfoクラス定義からメソッド・ディスクリプタ・メソッドを削除します。この場合、IDEはJavaイントロスペクションに従い、すべてのメソッドが公開されます。

公開するプロパティおよびメソッドには、JDeveloperによりgetProperDescriptors()メソッドとgetMethodDescriptors()メソッドが実装されます。このメソッドには、設計時に使用可能にするプロパティおよびメソッドに関する情報を含むディスクリプタ・オブジェクトの配列をインスタンス化するコードが含まれています。エディタで選択しなかったプロパティとメソッドはコードから削除され、IDEのプロパティ・インスペクタには表示されません。

BeanInfoを介してプロパティまたはメソッドを公開するが、プロパティ・インスペクタには表示されないようにするには、setHidden()メソッドを使用してプロパティまたはメソッドを非表示にします。この方法を機能させるには、IDEが非表示設定を認識する必要があります。JDeveloperを含め、すべてのIDEが非表示設定に従うわけではありません。したがって、非表示のフラグが設定されたプロパティおよびメソッドでも、ユーザーに表示される場合があります。

JavaBeanのネーミング・パターンに従っていないクラスのプロパティまたはメソッドをチューニングするには、次のようにします。


BeanInfoクラスを使用したJavaBeanのカスタマイズ方法
JavaBeanのイベントのチューニング
JavaBeanのデフォルト・プロパティまたはイベントの指定

JavaBeansについて
BeanInfoクラスについて
プロパティ、メソッドおよびイベントのチューニングについて

JavaBeansの開発
BeanInfoクラスの作成方法