ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Application Development Framework Webユーザー・インタフェース開発者ガイド
11gリリース1 (11.1.1.7.0)
B52029-07
  目次へ移動
目次

前
 
次
 

1 ADF Facesリッチ・クライアントの概要

この章では、ADF Facesリッチ・クライアントの概要を、その歴史、フレームワークの機能の概要およびライブラリ内の各コンポーネント・タイプの概要も含めて説明します。このガイドと組み合せて使用できるADF Facesデモ・アプリケーションについても説明します。

この章では、次の項目について説明します。

1.1 ADF Facesリッチ・クライアントの概要

ADF Facesリッチ・クライアント(ADF Facesとも呼ばれる)は、ビルトインのAsynchronous JavaScript and XML(AJAX)機能を含むJavaServer Faces(JSF)コンポーネントのセットです。AJAXでは、リッチ・クライアント型の機能をブラウザベースのアプリケーションに提供しますが、JSFを使用することでサーバー側制御が提供され、AJAXベースのアプリケーションを実装するためにアプリケーション開発者が記述する必要のある、JavaScriptコードの量が少なくなります。

ADF Facesリッチ・クライアント・フレームワーク(RCF)には、JSFコンポーネントの豊富なセットに加えて、JSF開発モデルに慣れている開発者になじみの深いクライアント側プログラミング・モデルが用意されています。大部分のRCFと標準JSFアプリケーションとの違いはほとんどなく、サーバー・プログラミング・モデルはJavaServer Facesであり、フレームワークではJavaServer Facesライフサイクル、サーバー側コンポーネント・ツリーおよび式言語(EL)が使用されます。ただし、RCFでは、クライアント側プログラミング・モデルと、サーバーに依存せずに実行されるライフサイクルも用意されています。開発者は、JavaScriptからコンポーネントの検索や操作が可能で、たとえば、getプロパティやsetプロパティ、イベントの受取りとキューイングなど、すべてJavaScriptから実行できます。RCFでは、状態に矛盾がないように、コンポーネントの状態の変更が自動的にサーバーと同期され、必要に応じてイベントがサーバーに送信され、追加処理が実行されます。

ADF Facesの詳細について説明する前に、ADF Facesライブラリと、リッチ・インターネット・アプリケーション(RIA)、およびAJAX全般の簡単な歴史について説明します。

1.1.1 ADF Facesの歴史

1990年代、ソフトウェア・ベンダーはインターネット・アプリケーションがデスクトップアプリケーションのように動作する必要があると認識し始め、これらのアプリケーションを構築するためのRIAフレームワークを開発しました。しかし、これらのフレームワークでは、この機能を使用するためにユーザーが独自のプラグインをインストールする必要がありました。Web規格の開発に伴い、Java Webアプリケーションが一般的になり、開発コミュニティ全体で、標準のビュー・レイヤー・フレームワークの必要性が認識され始めました。Java Community Process(JCP)はJava Webアプリケーションの標準ユーザー・インタフェースとしてJSFを開発しました。まだ発展途上段階にあったJSR-127(2001年)から始まり、2004年の最初のリリースを経て、現リリースに至るまで、JSF仕様の定義と仕様の参照実装を作成するためにJCPにコミュニティ(オラクル社を含む)からリソースが結集されました。JSFは現在Java EE規格の一部です。

JSFがエンタープライズJavaビュー・コンポーネントの作成の標準であることで、ベンダーは、規格に準拠したアプリケーション・サーバー上で実行できる、独自のコンポーネントを開発できます。これらのコンポーネントはより高性能になり、開発者はシック・クライアント・アプリケーションのように動作するブラウザ・ベースのRIAを開発できるようにまりました。このようなニーズに対応するため、オラクル社は、JSFの任意のランタイム実装上で使用できる、ADF Facesというコンポーネント・セットを開発しました。ADF Facesには、標準JSFコンポーネントの機能を超えるビルトイン機能を持つ100以上のコンポーネント(データ表、階層型の表、カラー・ピッカー、日付ピッカーなど)のセットが用意されています。以来、オラクル社は、テクノロジやオープン・ソース・コミュニティにコミットしていくという自社の方針に基づいて、ADF Facesコンポーネント・ライブラリのバージョンをApache Software Foundationに寄贈しており、これは現在Apache MyFaces Trinidadと呼ばれています。このコンポーネント・ライブラリは、現在Apache Software Foundationを通じて配布されています。

ADF Facesでは、複雑なコンポーネントの標準セットが提供されただけでなく、AJAXで部分ページ・レンダリングを使用して部分的にリフレッシュできるようにもなりました。AJAXは、非同期JavaScript、動的HTML(DHTML)、XML、およびXmlHttpRequest通信チャネルを組み合せた技術で、これを使用すると、ページ全体の再レンダリングの必要なくサーバーへのリクエストが行えます。ただし、AJAXを使用してのみ構築されたページでは、開発者が大量のJavaScriptを記述する必要があります。

最新バージョンのADF FacesではAJAXを最大限に活用しており、完全機能のフレームワークも用意されているため、開発者はAJAXベースのRIAを、手作業でコーディングするJavaScriptの量を最小限に抑えながら比較的簡単に実装できます。ADF Facesを使用すると、証券アナリストがドラッグ・アンド・ドロップを使用して新しい銘柄記号を表ビューに追加できる証券トレーダのダッシュボード・アプリケーションを構築できるようになり、表ビューは、拡張プッシュ・テクノロジを使用してサーバー・モデルによって更新されます。新しい取引を行うために、株式トレーダは実際のページを離れることなく、クライアントの新規株式の購入プロセスをナビゲートできます。ADF Facesにより、開発者はJavaScriptの複雑さやDHTMLのブラウザ間の違いに取り組む必要がなくなります。

1.1.2 リッチ・クライアント・コンポーネントとしてのADF Faces

ADF Facesリッチ・クライアント・フレームワークでは、ドラッグ・アンド・ドロップ、軽量なダイアログ、ナビゲーションとメニューのフレームワーク、包括的なJavaScript APIなどの豊富なRIA機能が用意されています。ライブラリには、階層的なデータ表、ツリー・メニュー、ページ内ダイアログ、アコーディオン・パネル、ディバイダ、ソート可能な表を含む、100を超えるRIAコンポーネントが用意されています。ADF Facesには、動的チャート、グラフ、ゲージ、および基礎となるデータをリアルタイムで表示するその他のグラフィックをレンダリングできるFlashおよびSVG対応のコンポーネントである、視覚化のコンポーネントも用意されています。各コンポーネントには、カスタマイズやスキニングに加えて、国際化とアクセシビリティの機能も用意されています。

これらの機能を実現するために、ADF FacesではリッチJSFレンダー・キットが使用されます。このキットでは、HTMLコンテンツだけでなく、対応するクライアント側のコンポーネントもレンダリングされます。このビルトイン・サポートにより、個々のテクノロジを熟知する必要なくRIAを構築できます。

ADF Facesは、Faceletsライブラリを使用するアプリケーションで使用することもできます。Faceletsは、ビュー用JSPエンジン・テクノロジを使用する際の代替方法となる、JSF中心の宣言XMLビュー定義テクノロジです。ADF Facesのアーキテクチャの詳細は、1.2項「ADF Facesコンポーネントのアーキテクチャ」を参照してください。


ヒント:

ADF FacesをADFモデル・データ・バインディングと組み合せて使用し、ADF Facesコンポーネントをビジネス・レイヤーに宣言的にバインドできます。ADFモデル・データ・バインディングを使用すると、コードの記述が必要な開発タスクのほとんどが宣言的になります。ただし、このガイドでは、ADF Facesコンポーネントの標準JSFアプリケーションでの使用についてのみ説明します。ADF FacesとADFモデルを組み合せた使用の詳細は、『Oracle Fusion Middleware Oracle Application Development Framework Fusion開発者ガイド』を参照してください。


RIAコンポーネントの充実したライブラリに加え、フル機能の開発環境にADF Facesコンポーネントの宣言サポートが組み込まれたJDeveloperも提供され、Webアプリケーションのビュー・レイヤーを簡便に構築できます。JDeveloperには、JSFページをWYSIWYG環境で表示するビジュアル・レイアウト・エディタが含まれています。JDeveloperのコンポーネント・パレットには、各ADF Facesコンポーネントがビジュアル形式で含まれ、ビジュアル・エディタでコンポーネントをページにドラッグ・アンド・ドロップできるため、タグ構文をページに手動で追加する必要がありません。JDeveloperにはモデリング、コーディング、デバッグ、テスト、チューニングおよびデプロイに関する機能が統合されているため、開発ライフサイクル全体で使用できます。JDeveloperの使用の詳細は、第2章「ADF Faces概説」を参照してください。

1.2 ADF Facesコンポーネントのアーキテクチャ

アプリケーション・ロジックの大半がクライアントにあるフレームワークと異なり、ADF Facesではアプリケーション・ロジックが主にサーバーに置かれ、JSFライフサイクルの中で実行されます。Javaデータ・モデルもサーバーに置かれ、ADF Facesフレームワークでコンポーネントの初期レンダリングがサーバーで実行され、ブラウザで直接使用されるHTMLコンテンツが生成されます。HTMLをサーバでレンダリングすることはクライアント側のレンダリングのオーバーヘッドが軽減されることを意味し、複雑なコンポーネントの場合に有効です。


注意:

ADF Facesは標準JSFテクノロジに準拠しているため、このガイドではJSF標準に付加する点、または異なる点を主に説明しています。このため、ADF Facesを使用して開発を始める前に、JSFがどのように機能するかについて、基本的な知識を得ておくことをお薦めします。JSFの詳細は、JavaのWebサイト(http://www.oracle.com/technetwork/java/index.html)を参照してください。


1.2.1 クライアント側アーキテクチャ

非常に多くのオブジェクトが作成されると、JavaScriptのパフォーマンスが低下することがあります。パフォーマンスを向上するために、RCFで、クライアントに存在するコンポーネント・オブジェクトの数とクライアントに送信される属性の数を最小にします。また、フレームワークのコンポーネントを構成するJavaScriptファイルは構成可能なパーティションに格納されており、アプリケーションに必要なJavaScriptのみをロードできます。

1.2.1.1 クライアント側コンポーネント

大部分のコンポーネント・ベースのフレームワーク同様、JSFのコンポーネント・モデルに固有の特性は、コンポーネントはネストして階層(通常コンポーネント・ツリーと呼ばれる)を形成できるということです。これは、親コンポーネントで子が追跡され、コンポーネント・ツリーをたどって特定のコンポーネントの子孫をすべて見つけることができるということです。コンポーネント・ツリー全体は従来どおりサーバーにあり、ADF Facesクライアント側コンポーネント・ツリーにはあまり移入されません。クライアント側コンポーネントは、主に、アプリケーション開発者とフレームワーク自体の両方に対するAPI規定を公開することでページに動作を追加するためにあります。たとえば、クライアントでのボタンの状態の切替えを可能にするのは、この規定です。このため、クライアント側コンポーネントは、クライアントで本当に必要なコンポーネントについてのみ作成され、通常、クライアント表現を持つよう明示的に構成されています。

既存のサーバー側コンポーネントに対応しないJavaScriptコンポーネントが存在することも可能です。たとえば、一部のADF Facesコンポーネントでは、ポップアップ・コンテンツが必要なクライアント側動作を持ちます。Java RichPopupコンポーネントが存在しなくても、これらのコンポーネントでAdfRichPopup JavaScriptコンポーネントを作成できます。

最も多く対話対象となるJavaScriptクラスはAdfUIComponentとそのサブクラスです。このクラスのインスタンスは、サーバー側コンポーネントのクライアント側表現です。各クライアント・コンポーネントには、プロパティ(キーと値のペア)のセットと、サポートされている各イベント・タイプ用のリスナーのリストがあります。すべてのRCF JavaScriptクラスは、他のJavaScriptライブラリと名前が競合しないようAdfで始まります。たとえば、RichCommandButtonAdfRichCommandButtonを持ち、RichDocumentAdfRichDocumentを持つなどです。

Java UIComponentオブジェクトはコンポーネントの状態を表し、リスナーを登録したり、プロパティを設定する際に対話対象となりますが、Rendererでは、コンポーネントのかわりにHTMLの生成とポストバックの受信が処理されます。RCFクライアント側JavaScriptレイヤーで、クライアント側コンポーネントはDocument Object Model(DOM)と直製対話しません。DOMとのすべての対話は、ピアと呼ばれる媒介を使用して行われます。ピアでは、Javaレンダラによって生成されたDOMと対話し、状態の更新とユーザーとの対話へのレスポンスが処理されます。

ピアでは、この他に次のような多くの処理が行われます。

  • DOMの初期化とクリーンアップ

  • DOMのイベント処理

  • ジオメトリ管理

  • 部分ページ・レスポンスの処理

  • 子の可視性の変更の処理

1.2.1.2 JavaScriptライブラリのパーティション化

JavaScriptを多用したフレームワークに共通する問題は、大規模なJavaScriptコード・ベースをクライアントに送信する最良の方法を決定することです。極端な方法は、すべてのコードを1つのJavaScriptライブラリにバンドリングすることで、この方法ではダウンロード時間が長くなります。逆の極端な方法はJavaScriptコードを多数の小さなJavaScriptライブラリに分割することで、この方法ではラウンドトリップ数が大きくなります。どちらの方法でも初期ページをロードするためのユーザーの待ち時間が不必要に長くなります。

この問題を軽減するために、ADF FacesではJavaScriptコードがパーティションに集約されます。JavaScriptライブラリ・パーティションには、コンポーネントのコードまたは通常一緒に使用される機能、あるいはその両方が含まれています。ADF Facesではデフォルトで、ダウンロード・サイズ合計とラウンドトリップ数合計のバランスを取ることを意図したパーティション化が行われます。

ADF Facesのライブラリ・パーティション化方式の利点の1つは、構成可能であることです。アプリケーションによって使用するコンポーネントおよび機能が異なるため、ADF Facesのデフォルトのパーティション化がすべてのアプリケーションに最適であるとはかぎりません。このため、ADF FacesのJavaScriptライブラリのパーティション化はアプリケーションごとにカスタマイズ可能になっています。このようなパーティション化により、アプリケーション開発者はJavaScriptライブラリのフットプリントをアプリケーションの要件に合せて調整できます。JavaScriptのパーティション化を構成する方法の詳細は、A.9項「JavaScriptライブラリのパーティション化の使用」を参照してください。

1.2.2 ADF Facesのアーキテクチャ上の機能

RCFでは、アプリケーション全体で使用できるアーキテクチャ上の機能が使用できます。たとえば、クライアントで処理が行われるため、ページ全体を再レンダリングする必要がなく、サーバーとの間のデータの交換が少量で済みます。これは、部分ページ・レンダリング(PPR)と呼ばれます。ADF Facesの多くのコンポーネントに、PPR機能がネイティブで実装されています。たとえば、ADF Facesの表コンポーネントには、表のスクロール、列ヘッダーのクリックによる表のソート、1つまたは複数の行の選択マークおよび表の特定の行の拡張などのAJAXスタイルの機能が組み込まれ、すべてサーバーへのラウンドトリップを必要とせずコーディングも不要です。詳細は、第7章「部分ページ・コンテンツの再レンダリング」を参照してください。

また、RCFでは、標準JSFライフサイクルに機能が追加されています。この例として、クライアント側の値のライフサイクル、1つのページに複数のフォームを使用することの弊害なしに独立して送信可能な領域をページに作成できるサブフォーム・コンポーネント、処理用に送信されるページの部分を限定できる最適化されたライフサイクルなどがあります。詳細は、第4章「ADF FacesでのJSFライフサイクルの使用」を参照してください。

RCFでは、標準JSFイベント・フレームワークが使用されます。ただし、RCFのイベントは、標準JavaScript DOMイベント・モデルを要約したものです。DOMイベント・モデルの要点を共有するイベントもありますが、機能を追加したものもあります。このため、たとえばボタンのclickイベントをリスニングする必要がありません。かわりに、キーまたはマウスのイベントで発生する可能性のあるAdfActionEventイベントをリスニングします。RCFイベントでは、イベントをサーバーに配信するようにも配信しないようにも構成できます。詳細は、第5章「イベントの処理」を参照してください。

ADF Facesの入力コンポーネントには検証機能が組み込まれています。required属性を設定するか、事前作成のADF Facesバリデータを使用することにより、コンポーネントに1つ以上のバリデータを設定します。また、ビジネス・ニーズに応じてカスタム・バリデータを作成することもできます。

ADF Faces入力コンポーネントには変換機能も組み込まれているため、ユーザーは情報を文字列として入力し、アプリケーションで文字列を日付などの他のデータ型に自動的に変換できます。逆に、文字列以外の型として格納したデータを表示および更新用に文字列に変換することもできます。inputDateなどの多くのコンポーネントでは、自動的にこの機能が提供されます。詳細は、第6章「入力の検証および変換」を参照してください。

これらのアーキテクチャ上の機能に加えてRCFでは次のものもサポートされています。

1.3 ADF Facesコンポーネント

ADF Facesコンポーネントは、通常2つのカテゴリに分けられます。レイアウト・コンポーネントは、ページのコンテンツの編成に使用されるコンポーネントです。ページのレイアウトを決めるコンテナとして機能するコンポーネント以外に、ADF Facesレイアウト・コンポーネントには、コンテンツを表示または非表示にできたり、セクション、リストまたは空の領域を提供するインタラクティブなコンテナ・コンポーネントも含めることができます。一部のレイアウト・コンポーネントでは、ページに表示されるコンポーネントのサイズと位置を決めるプロセスであるジオメトリ管理がサポートされます。RCFで、これらのコンポーネントにブラウザのサイズ変更アクティビティが通知され、これによってコンポーネントで子のサイズ変更が可能になります。これによって、特定のコンポーネントを拡大または縮小し、ブラウザの使用可能な領域を満たすことができます。JDeveloperにはビルトインのクイックスタート・レイアウトが用意されており、希望するページの外観に基づいて宣言的にレイアウト・コンポーネントをページに追加できます。レイアウト・コンポーネントとジオメトリ管理の詳細は、第8章「Webページ上のコンテンツの編成」を参照してください。

残りのコンポーネントは、一般的なカテゴリに含まれ、次のサブカテゴリに分けることができます。

1.4 ADF Facesデモ・アプリケーション

ADF Facesには、コンポーネントとアーキテクチャ機能のサンプルを試したり、ソース・コードを表示できるデモ・アプリケーションが含まれています。

1.4.1 ADF Facesデモ・アプリケーションのダウンロードとインストール方法

デモ・アプリケーション(コードおよび実行)を表示するには、JDeveloperをインストールし、アプリケーションをダウンロードしてJDeveloper内で開きます。

ADF Facesデモ・アプリケーションは、Oracle Technology Network(OTN)Webサイトからダウンロードできます。
http://www.oracle.com/technetwork/developer-tools/adf/overview/index-092391.html
に移動し、ADF Facesリッチ・クライアント・デモのインストールへのリンクをクリックします。表示されたページでは、アプリケーションが含まれているWARファイルをダウンロードする方法の詳細、およびアプリケーションをスタンドアロン・サーバーにデプロイする方法またはJDeveloperに含まれている統合WebLogicサーバーを使用してアプリケーションを実行する方法が説明されています。

アプリケーションをインストールしない場合には、「ADF Faces Rich Client Components Hosted Demo」リンクをクリックして、OTNから直接アプリケーションを実行できます。

1.4.2 ADF Facesデモ・アプリケーションの使用

デモ・アプリケーションには、次のものが含まれています。

  • タグ・ガイド: ADF Facesコンポーネント、バリデータ、コンバータと多様なタグのデモ、および属性値の変更のコンポーネントへの影響を確認できるプロパティ・エディタ。図1-1に、selectManyCheckboxコンポーネントのデモを示します。各デモには、関連するタグ・ドキュメントへのリンクが用意されています。

    図1-1 タグのデモ

    タグのデモ
  • スキニング: 様々なコンポーネントのスキニングのデモ。たとえば、スタイル・セレクタの変更がコンポーネントの表示に与える影響を確認できます。図1-2に、特定のスタイル・セレクタの設定によって影響を受けるinputNumberSpinboxコンポーネントを示します。

    図1-2 スキニングのデモ

    スキニングのデモ
  • 機能のデモ: ADFコンポーネントの様々な使用方法を示す各種ページ。たとえば、File Explorerは、ディレクトリ構造を表示し、ディレクトリとファイルの作成、保存、移動を行えるライブ・データ・モデルを使用したアプリケーションです。このアプリケーションは、図1-3に示すように、実際に動かすことのできるアプリケーションでADF Facesのコンポーネントと機能を紹介するためのものです。File Explorerアプリケーションの詳細は、1.4.3項「File Explorerアプリケーションの概要」を参照してください。

    図1-3 File Explorerアプリケーション

    File Explorerデモ・アプリケーション

    その他のページでは、レイアウト・コンポーネント、AJAXポストバック機能、ドラッグ・アンド・ドロップなどのADF Facesの主なアーキテクチャ上の機能を紹介します。図1-4に、AutoSubmit属性と検証を使用するデモを示します。

    図1-4 フレームワークのデモ

    フレームワークのデモ
  • ビジュアル・デザイン: コンポーネント・タイプを様々に使用して異なるUIデザインを実現するデモ。図1-5に、ツールバーの異なる外観を得る様子を示します。

    図1-5 ツールバーのデザインのデモ

    ツールバーのデザイン
  • Styles: インライン・スタイルとコンテンツ・スタイルの設定によってコンポーネントがいかに影響されるかのデモ。図1-6に、panelBoxコンポーネントに適用される異なるスタイルを示します。

    図1-6 スタイルのデモ

    インラインとコンテンツ・スタイルの設定
  • 混同されやすいコンポーネント: 同様の機能を提供するコンポーネントの比較。図1-7に、リストを表示する各コンポーネントの違いを示します。

    図1-7 混同されやすいコンポーネント

    混同されやすいコンポーネント

1.4.3 File Explorerアプリケーションの概要

File Explorerは完全に機能するアプリケーションのため、このガイドの多くの項で、重要な点を説明したり、コード・サンプルを示すためにこのアプリケーションが使用されます。File Explorerアプリケーションのソースは、fileExplorerディレクトリにあります。

File Explorerアプリケーションでは、fileExplorerTemplateページ・テンプレートが使用されます。このテンプレートには、アプリケーションの基本的なルック・アンド・フィールを提供する多くのレイアウト・コンポーネントが含まれます。レイアウト・コンポーネントの詳細は、第8章「Webページ上のコンテンツの編成」を参照してください。テンプレートの使用の詳細は、第19章「フラグメント、ページ、テンプレート、コンポーネントの作成および再利用」を参照してください。

アプリケーションの左側には、図1-8に示すディレクトリ構造と結果表付きの検索フィールドの2つの領域を持つpanelAccordionコンポーネントが含まれます。

図1-8 ディレクトリ構造パネルと検索パネル

ディレクトリ・パネルと検索パネル

両方の領域とも、展開および縮小できます。ディレクトリ構造は、treeコンポーネントを使用して作成されています。検索領域は、入力コンポーネント、コマンド・ボタンおよびtableコンポーネントを使用して作成されています。panelAccordionコンポーネントの使用の詳細は、第8.10項「アコーディオン・パネルおよびタブ付きのパネルにおけるコンテンツの表示または非表示」を参照してください。入力コンポーネントの使用の詳細は、第9章「入力コンポーネントの使用およびフォームの定義」を参照してください。コマンド・ボタンの使用の詳細は、第18章「ナビゲーション・コンポーネントの使用」を参照してください。表とツリーの使用の詳細は、第10章「表、ツリー、およびその他のコレクションベースのコンポーネントの使用」を参照してください。

File Explorerアプリケーションの右側では、図1-9に示すようにタブ付きペインを使用して表、ツリー表またはリストのいずれかでディレクトリの内容を表示します。

図1-9 タブ付きパネルでのディレクトリの内容

内容を示すパネル・タブ

表およびツリー表にはツールバーが組み込まれ、内容の表示方法を操作できます。表とリストでは、ファイルまたはサブディレクトリをディレクトリからドラッグし、別のディレクトリにドロップできます。すべてのタブで、ファイルを右クリックし、ポップアップ・メニューからファイルのプロパティをポップアップ・ウィンドウに表示できます。タブ付きのペインの使用の詳細は、8.10項「アコーディオン・パネルおよびタブ付きのパネルにおけるコンテンツの表示または非表示」を参照してください。表およびツリー表のツールバーの詳細は、10.7項「表メニュー、ツールバーおよびステータス・バーの表示」を参照してください。ドラッグ・アンド・ドロップの有効化の詳細は、第34章「コンポーネントのドラッグ・アンド・ドロップ機能の追加」を参照してください。ポップアップ・メニューおよびポップアップ・ウィンドウの使用の詳細は、第13章「ポップアップ・ダイアログ、メニューおよびウィンドウの使用方法」を参照してください。

File Explorerアプリケーションの上部には、図1-10に示すメニューとツールバーが含まれます。

図1-10 メニューとツールバー

メニュー

メニュー・オプションでは、ファイルやディレクトリの作成と削除、コンテンツの表示方法の変更を行えます。「ヘルプ」メニューでは、図1-11に示す、ユーザーがダイアログにフィードバックを入力できるヘルプ・システムが開きます。

図1-11 ヘルプ・システム

ヘルプ・システム

ヘルプ・システムは、リッチ・テキスト・エディタを含む様々な入力コンポーネントを使用して作成された多くのフォームで構成されています。メニューの詳細は、14.2項「メニュー・バーでのメニューの使用方法」を参照してください。ヘルプ・システムの作成の詳細は、17.5項「コンポーネントへのヘルプの表示」を参照してください。入力コンポーネントの詳細は、第9章「入力コンポーネントの使用およびフォームの定義」を参照してください。

File Explorerのツールバー内には、ディレクトリ構造内を移動できるコントロールと、スキンを変更してアプリケーションのルック・アンド・フィールを変更できるコントロールがあります。図1-12に、簡単なスキンを使用したFile Explorerアプリケーションを示します。

図1-12 簡単なスキンを使用したFile Explorerアプリケーション

簡単なスキンを使用したFile Explorerアプリケーション

ツールバーの詳細は、14.3項「ツールバーの使用方法」を参照してください。スキンの使用の詳細は、第20章「スタイルおよびスキンを使用した外観のカスタマイズ」を参照してください。

1.4.4 JDeveloperでのソース・コードの表示

ADF Facesデモ・アプリケーションのソース・ファイルはすべて1つのプロジェクト(インストール時に名前を指定して作成)に含まれています。プロジェクトは、アプリケーション・ソースとWebコンテンツの2つのディレクトリに分かれています。アプリケーション・ソースにはoracle.adfdemo.view packageが含まれ、アプリケーション全体に機能を提供するマネージドBeanを含むパッケージが含まれます。


ヒント:

コンポーネント・デモのマネージドBeanは、componentパッケージにあり、File ExplorerアプリケーションのマネージドBeanはexplorerパッケージにあります。


Webコンテンツ・ディレクトリには、JSPXファイル、JavaScriptライブラリ、イメージ、構成ファイルなどのアプリケーションで使用されるすべてのWebリソースが含まれます。


ヒント:

componentsサブディレクトリには、コンポーネント・デモのリソースが含まれます。docsディレクトリには、タグとJavadocのドキュメントが含まれます。fileExplorerディレクトリには、File Explorerアプリケーションのリソースが含まれます。