Oracle9i JDeveloperより前のリリースでは、JSPページで直接使用するために定義済のWeb対応JavaBeansまたはWeb Beanのセットが用意されていました。 Oracle9i JDeveloperからは、JSPページのWeb Beanテクノロジは、コンポーネント・パレットのビジネス・コンポーネントWeb Beanのタグ・ライブラリにある次のJSPタグを介して全面的にアクセスできるようになりました。
注意: JDeveloperでは、JSPページでのカスタムWeb BeanおよびOracleの定義済Web Beanの使用を現在もサポートしていますが、それらの代替としてビジネス・コンポーネントWeb Beanのタグ・ライブラリに用意されているJSPタグの使用をお薦めします。
JDeveloperのWeb Beanは、JSP開発者がBeanから直接HTMLを出力できるコンポーネントです。 Web Beanは、JSPページのHttpRequest
オブジェクトおよびHttpResponse
オブジェクトにアクセスでき、コンテンツを動的に生成するために使用されます。 ビジネス・コンポーネントのコンポーネント・タグと同様に、Web Beanは再利用可能なオブジェクトであり、一貫したルック&フィールが求められるJSPページの開発が簡略化されます。次のことが可能です。
コンポーネント・パレットから<jbo:DataWebBean>
データ・タグまたは<jbo:WebBean>
データ・タグを挿入することにより、JSPページでWeb Beanを使用
すべてのWeb Beanは、直接または間接的に、JDeveloperのWebBean
インタフェースを実装します。Web Beanは、次の2つのカテゴリに分けられます。
Data Web Bean: ビュー・オブジェクトにより表されるビジネス・コンポーネント行セットにバインド
HTML Web Bean: データにバインドされず、ビジュアルWeb BeanまたはUI Web Beanとして機能
Data Web Beanを使用すると、ビジネス・コンポーネント・プロジェクトで定義されているビュー・オブジェクトが表す行セットにアクセスできます。 Data Web Beanは、DataWebBean
インタフェースを直接には実装せず、WebBean
インタフェースとDataWebBean
インタフェースの両方を実装するクラスDataWebBeanImpl
を拡張します。Data Web Beanの実装により、ビジネス・コンポーネントにカプセル化されたデータにアクセスできる再利用可能なJSPページ要素の作成が簡単になります。
たとえば、Data Web Beanを使用して次のことができます。
マスター/ディテール・フォームの作成
複雑なデータのグラフ形式およびツリー形式での表示
Data Web Beanには、次のものが含まれます。
HTMLまたはデータにバインドされないWeb Beanは、次のことを行います。
WebBean
インタフェースを直接実装します。
(HTMLオブジェクトをレンダリングし、クラスHTMLElementContainer
を拡張する)HTMLToolbar
などのクラスを拡張します。
たとえば、Toolbar Web Beanは、親のHTMLToolbar
と同じようにHTMLツールバーを生成しますが、親とは異なり、メンバー変数内に一部のJSP暗黙オブジェクトへの参照を格納します。JSPページの暗黙オブジェクトは、JavaスクリプトレットなどのJSP要素にアクセスできます。
HTML Web Beanには次のものがあります。
Web Beanのソース・コード
JDeveloperの定義済Web Beanの使用方法および独自のWeb Beanの作成方法を理解するには、JDeveloperのWeb Beanクラスに関する知識が必要です。
これらのクラスおよびインタフェースのソース・コードは、ZIPファイル<jdev_install>/src/bc4jhtmlsrc.zip
にあります。<jdev_install>
はJDeveloperがインストールされているディレクトリです。
定義済のWeb Beanは、次のクラスとインタフェースを継承します。
Web Beanの既知の問題
qView
インスタンス変数はData Web Beanではサポートされていません。
Oracle9i JDeveloperより前のリリースでは、Web Beanの作成ウィザードによりインスタンス変数qView
が生成され、これによりビュー・オブジェクトの行セットの操作が可能でした。Oracle9i JDeveloperでは、このインスタンス変数はサポートされていません。JDeveloperを使用してWebアプリケーションの開発を進めるには、次のような変更をする場合、個々に指定を変更する必要があります。
qView
から getRowSet()
次に例を示します。
qView.setRangeSize(-1);
qView.first();
これを、次のように変更します。
getRowSet().setRangeSize(-1);
getRowSet().first();
JDeveloper 3.2から、Web BeanのレンダリングにpopulateForm()
メソッドは使用できなくなりました。
ユーザーは、renderToString()
メソッドを実装する必要があります。 HTMLフィールド・レンダラでData Web Beanとビジネス・コンポーネント・データ・タグの両方にアクセスできるようにするため、このように変更されました。 <jdev_install>/BC4J/src/lib
フォルダのbc4jhtmlsrc.zip
ファイル内にあるソース・ファイルoracle.jdeveloper.html.HTMLFieldRendererImpl.java
を参照してください。
JSPページおよびビジネス・コンポーネントについて
Web Beanの使用
Copyright © 1997, 2004, Oracle. All rights reserved.