この章では、インタラクティブなADF Facesコンポーネントの表現力が高いセットであるADFデータ視覚化コンポーネントについて説明します。コンポーネント全般およびその他のADF Facesコンポーネントとの共有機能についても焦点を当てます。この部の他の章では、各コンポーネントの作成およびカスタマイズ方法について説明します。
この章の内容は次のとおりです。
ADFデータ視覚化コンポーネントには、データの表示および分析を行うための非常にグラフィカルな表形式の機能が用意されています。このコンポーネントでは、次の機能が提供されます。
ADFデータ・コントロールの使用をサポートするADF Facesのフル・コンポーネントです。
データ・コントロール・パネル、JSFビジュアル・エディタ、「プロパティ」ウィンドウおよび「コンポーネント」ウィンドウを使用した宣言設計時作成が提供されます。
データ視覚化コンポーネントには、グラフ、ゲージ、ピボット・テーブルとピボット・フィルタ・バー、地理マップ、テーマ・マップ、ガント・チャート、時系列、階層ビューア、ツリーマップおよびサンバーストがあります。
接頭辞dvt:
は、各コンポーネント名の先頭に付いて、そのコンポーネントがADFデータ視覚化ツール(DVT)のタグ・ライブラリに属することを示します。
チャート・コンポーネントには、データを表示するために使用できる9タイプのグラフがあり、合計13種を超えるグラフに1つ以上のバリエーションがあります。チャート・コンポーネントを使用すると、様々なデータ視覚化を作成できます。これにより、様々な方法で複数の軸にある複数のデータ・ポイントを評価できます。たとえば、一群のグラフにより、あるグループからの結果と他のグループからの結果の比較が容易になります。
グラフのカテゴリは、次のとおりです。
面(areaChart
): データを塗りつぶされた面として表します。面グラフを使用して、過去12か月の売上げなど、ある期間の傾向を示します。面グラフでは、1つの軸上に最低2グループのデータが必要です。軸には、月などの時間の経過を表すラベルが付けられることがよくあります。
棒(barChart
): データを一連の縦棒で表します。棒グラフを使用して、ある期間の傾向の確認や複数の地域での異なる製品区分の売上げなど、同一時点での項目の比較を行います。
横棒(horizontalBarChart
): Y軸に沿って棒を横向きに表示します。横棒グラフを使用して向きを持たせて傾向を表示したり、値を比較します。
バブル(bubbleChart
): 円形のデータ・マーカー(バブル)の位置とサイズでデータを表します。(データ・アイテムが多数あり、全体の関係を表示する場合は特に)バブル・チャートを使用して3種類の値の相関関係を示します。たとえば、バブル・チャートを使用して、従業員の給与(X軸)、経験年数(Y軸)と生産性(バブルのサイズ)をプロットします。このようなグラフでは、生産性を給与および経験と比較して調べることができます。
組合せ(comboChart
): 異なるタイプのデータ・マーカー(棒、線または面)を使用して、異なる種類のデータ・アイテムを表示するグラフ。組合せグラフを使用して、棒と線、棒と面、線と面あるいは3つすべての組合せを比較します。
折れ線(lineChart
): データを線、一連のデータ・ポイントまたは線で結ばれたデータ・ポイントとして表します。折れ線グラフには、グループ内のメンバーごとに最低2つのポイントを表すデータが必要です。たとえば、月単位の折れ線グラフでは、少なくとも2か月のデータが必要です。通常、特定の色の線は、アメリカ、ヨーロッパ、アジアなどのデータの各グループに関連付けられています。折れ線グラフを使用して、同一期間の項目を比較します。
円(pieChart
): 合計に対する比率としてデータ・アイテム・セットを表します。データ・アイテムが円の一部として表示され、円が切り分けられたパイのように見えます。円グラフを使用して、各製品ラインからの収益など、全体に対する各部分の関係を表します。
散布(scatterChart
): データをデータ・マーカーの位置で表します。散布図を使用して、上位製品の売上げとコストなど、異なる2種類のデータ値の相関関係を表します。多数の項目の全体的な関係を表す場合は特に散布図を使用します。
スパーク(sparkChart
): 傾向や変化を1つのデータ値で表す簡単な縮小グラフで、通常、表の列内や関連テキストの行中に表示されます。スパーク・チャートには、基本的な条件付書式設定があります。スパーク・チャートにラベルが含まれていないため、近くの表の列や周囲のテキストによってスパーク・チャートの内容のコンテキストがわかります。
図22-1に、面グラフ、棒グラフ、横棒グラフ、バブル・チャート、組合せグラフ、折れ線グラフ、円グラフおよび散布図の例を示します。
図22-2に、表の列で売上げ傾向を表示する折れ線スパークチャートを示します。
注意: ファンネル、パレート、レーダー・グラフおよび株価チャートは、サーバー側のレガシー・コンポーネントです。クライアント側のチャート・コンポーネントにはこれらのグラフの使用は、推奨されません。レガシー・グラフの使用の詳細は、付録H「グラフ・コンポーネントの使用方法」を参照してください。 |
その他のユースケースおよび例などの詳細は、第23章「チャート・コンポーネントの使用方法」を参照してください。
ゲージ(gauge
)コンポーネントは、売上げ、在庫レベル、温度または速度などの数量を表すための測定手段です。ゲージには通常1つのデータ値が表示され、多くの場合グラフより効果的です。しきい値を使用すると、ゲージでは、色を使用して許容範囲または非許容範囲などの状態情報を表示できます。
このコンポーネントでは次の種類のゲージを作成できます。
ダイアル: 循環軸上にプロットされたメトリック値を表示します。ゲージの背景の属性は、ゲージの背景を長方形、円または半円のどちらで表示するかを決定します。インジケータは軸上のゲージのメトリック値を指します。
例22-0に、背景が円、半円および長方形に設定された3つのダイアル・ゲージを示します。3つの例では、ゲージのメトリック値はすべて63
です。
LED(電光表示): キー・パフォーマンス・インジケータ(KPI)などの測定値をグラフィカルに表します。LEDゲージには、数種の図形を使用できます。たとえば、ステータスを示すために色を使用する円形または長方形、カラー・インジケータに加えて、上下左右を指す三角形または矢印などです。
例22-0に、様々な図形、サイズおよびしきい値で構成されたLEDゲージを示します。
評価: メトリック値を表示し、オプションでメトリック値の入力を受け入れます。このゲージは、通常、星を使用した映画の評価など、製品やサービスの評価の表示に使用します。
例22-0に、星、ダイアモンド、円および長方形を使用して構成した評価ゲージを示します。
ステータス・メーター: 水平軸または循環軸上にメトリック値を表示します。内側の矩形は、外側の矩形に表示された範囲に対する現在の測定値のレベルを示します。オプションで、ステータス・メーターは、メトリック値が事前定義されたしきい値内のどこに含まれるかを色で示します。
例22-0に、水平ステータス・メーターおよび円形ステータス・メーター用に構成されたステータス・メーター・ゲージの例を示します。ゲージは、しきい値を使用するように構成されており、これは色でゲージの値が許容範囲内にあるかどうかを示します。
その他のユースケースおよび例などの詳細は、第24章「ゲージ・コンポーネントの使用方法」を参照してください。
ピボット・テーブル(pivotTable
)では、行または列での複数層のデータ・ラベルをサポートするグリッドを作成します。オプションのピボット・フィルタ・バー(pivotFilterBar
)をピボット・テーブルと関連付けることで、行または列のエッジで表示されないデータをフィルタ処理できます。行セットなどの適切なデータ・コントロールにバインドされている場合、このコンポーネントでは、グリッド・データの小計と合計を生成するオプションや、実行時のドリル操作もサポートされます。
ピボット・テーブルでは、あるエッジ(行または列)またはピボット・フィルタ・バー(ページ・エッジ)から別のエッジにデータ・ラベルを切り替え、データの表示を変えることができます。たとえば、ピボット・テーブルで最初は、地域内の製品の合計売上げデータを行エッジに表示し、列エッジで年ごとに分類しているとします。実行時に地域と年を切り替えると、数年間の製品の合計売上げデータが、地域ごとに分類されて表示されます。
ピボット・テーブルでは、横方向と縦方向のスクロール、ヘッダーとセルの書式設定およびドラッグ・アンド・ドロップ・ピボットがサポートされています。ピボット・テーブルでは、実行時の行の昇順および降順のグループ・ソートもサポートされます。図22-7に、ピボット・フィルタ・バーのあるピボット・テーブルの例を示します。
その他のユースケースおよび例などの詳細は、第25章「ピボット・テーブル・コンポーネントの使用方法」を参照してください。
地理マップ(map
)では、Oracle ADFにOracle Spatialの機能が提供されます。このコンポーネントでは、ビジネス・データをマップ上に表し、1つのマップ上に複数層の情報を重ね合せることができます。このコンポーネントでは、色テーマ、グラフ・テーマ(棒または円グラフ)および点テーマの同時表示がサポートされます。各タイプのテーマはいくつでも作成でき、マップ・ツールバーを使用して、実行時にテーマを選択できます。
地理マップの例として、各州での製品の人気を色の濃さで示す色テーマ、倉庫の在庫レベルを示す円グラフ・テーマおよび各倉庫の正確な位置を示す点テーマを使用した、アメリカの基準となるマップを考えてみます。この3つの全テーマをアメリカ合衆国の地図に重ね合せると、特定の地域で商品の人気度に応じた十分な在庫があるかどうかを簡単に評価できます。図22-8に、色テーマ、円グラフ・テーマおよび点テーマを使用した地理マップを示します。
その他のユースケースおよび例などの詳細は、第28章「マップ・コンポーネントの使用方法」を参照してください。
テーマ・マップ(thematicMap
)コンポーネントでは、ビジネス・データを定型化された地域内のパターンまたは関連付けられたマーカーとして表し、マップ・ビューア・サービスへの接続は必要ありません。テーマ・マップでは、地理マップでの地理的な詳細なしで、データに焦点を合せます。テーマ・マップは、米国、世界をはじめ、世界の大陸や地域(EMEAやAPACなど)などのあらかじめ作成された基準となるマップとともにパッケージ化されています。テーマ・マップ・コンポーネントでは、基準となるマップを表示するためのマップ・サービスは必要ありません。
たとえば、図22-9に表示されているように、州マップ・レイヤーを備えた基準となる米国のマップを使用して、倉庫と顧客の位置を表示できます(色を使用して高比率、中比率および低比率を示すことが可能)。この例では、データ・バインドされた凡例など、テーマ・マップのデフォルト機能が示されています。
その他のユースケースおよび例などの詳細は、第28章「マップ・コンポーネントの使用方法」を参照してください。
ガント・チャートは(横軸を時間とする)横棒グラフの一種で、リソースまたはタスクが、開始と終了が明確なタイム・フレームに示され、プロジェクトの計画や進捗管理に使用されます。
ガント・チャートは、2つのADFのツリー表とスプリッタの組合せで構成されます。左側の表にはタスクまたはリソースのリストが含まれ、右側の表は1つの列で構成され、特定期間の進捗がグラフ表示されます。
3種類のガント・コンポーネントがあります。
プロジェクト・ガント(projectGantt
): タスクを縦に示し、横方向の時間軸にタスクの期間を棒で示すガント・チャートを作成します。
リソース使用率ガント(resourceUtilizationGantt
): リソースが割当てを上回っているか下回っているかをグラフィカルに示すガント・チャートを作成します。リソースを縦に示し、横方向の時間軸にその割当てとキャパシティ(オプション)を示します。
スケジュール・ガント(schedulingGantt
): リソース管理を示し、手動のスケジュール表をベースにしたガント・チャートを作成します。リソースを縦方向に、対応するアクティビティを横方向の時間軸に表示します。
図22-10 に、スタッフ・リソースとスケジュールを表示したプロジェクト・ガントを示します。
その他のユースケースおよび例などの詳細は、第26章「ガント・チャート・コンポーネントの使用方法」を参照してください。
時系列は、時間軸に沿った時系列アイテムとしてのイベントの表示、時系列に表示可能な期間に対応する移動可能な概要ウィンドウ、および時系列の時間増分全体を示した概要時間軸で構成されます。表示可能な時間範囲は、水平方向のズーム制御を使用して変更できます。イベントに対応する各時系列アイテムは、関連付けられた情報やアクションを表示し、時間軸への引出線と概要時間軸内のマーカーで表されます。
たとえば、図22-11の時系列は、従業員の雇用日を時間順に表示するように構成されています。この例では、各イベントを表す時系列アイテムに、イメージとラベル付きテキストを使用して従業員に関する情報を表示しています。概要ウィンドウは、時系列アイテムを表示する時間範囲を定義します。このウィンドウは、ズーム・コントロールを変更するか、ウィンドウの端の位置を変更して拡大または縮小することでサイズを調整できます。選択が構成されている場合は、時系列アイテム、引出線、および概要パネルのイベント・マーカーが強調表示されます。
2つの時系列を使用して最大2系列のイベントを比較できます。図22-12に、10年間にわたる2人の従業員の変化のイベントを比較した2つの時系列を示します。時系列イベントは、3年を超える期間を表す概要ウィンドウに四半期単位の時間軸を使用して表示されています。概要時間軸の赤い線は現在の日付を示しています。
その他のユースケースおよび例などの詳細は、第27章「時系列コンポーネントの使用方法」を参照してください。
階層ビューア(hierarchyViewer
)は、階層データが図中のリンクされたノードのセットとして表示されるコンポーネントです。ノードおよびリンクは、データの要素および関係に対応します。このコンポーネントでは、パンおよびズーム操作、ノードの展開および縮小、ノード内での簡単なADF Facesコンポーネントのレンダリング、そして階層ビューア・データの検索がサポートされています。階層ビューアの一般的な用途は、図22-13に示すような組織図を表示することです。
その他のユースケースおよび例などの詳細は、第29章「階層ビューア・コンポーネントの使用方法」を参照してください。
treemap
およびsunburst
コンポーネントは、数量的な階層データを、サイズと色で視覚的に表された2つのディメンションで表示します。ツリーマップおよびサンバーストでは、node
と呼ばれる形を使用して、階層内のデータを表します。たとえば、ツリーマップまたはサンバーストを使用して地域の四半期ごとの売上げを表示し、売上げ傾向を特定する場合は、ノードのサイズで各地域の売上げ高を示し、ノードの色でその地域の売上げが四半期で増えたか減ったかを示すことができます。
ツリーマップはノードをネストした矩形のセットとして表示します。ツリーのブランチごとに1つの矩形が割り当てられ、そこにサブブランチを表すより小さな矩形が並べられます。
図22-14に、米国の人口調査データを地域ごとにグループ化して表示し、色の属性で平均所得水準を表したツリーマップを示します。人口の多い州は人口の少ない州より大きなノードで表示されます。
サンバーストは、ノードを矩形レイアウトではなく、放射状に表示し、階層のトップを中心に、深いレベルになると中心から離れて表示します。図22-15に、サンバーストで表示した同じ国勢調査データを示します。
ツリーマップとサンバーストでは、何千ものデータ・ポイントを比較的小さな空間領域に表示できます。各ノードの相対サイズが全体に対する重要度を表しているため、これらのコンポーネントは大規模な階層データ・セットで傾向を特定する場合に適しています。情報の追加ディメンションを表すために、色も使用できます。
階層の1つのレイヤーでサイズと色を使用してデータの2つのメトリックを表示することが主な目的の場合は、ツリーマップを使用します。階層のすべてのレベルでのメトリックを表示する場合、かわりにサンバーストを使用します。エンド・ユーザーが階層を横断してデータの重要な部分を重点的に表示できるように、ドリルを有効にできます。
ツリーマップの情報、およびアプリケーションでのこれらの使用方法の詳細は、第30章「ツリーマップおよびサンバースト・コンポーネントについて」を参照してください。
データ視覚化コンポーネントをデータ・バインドする前に、その他のADF Faces機能を理解しておくと役に立ちます。また、いったんデータ視覚化コンポーネントをページに追加すると、検証やアクセシビリティなどの機能を追加する必要があることに気付く場合があります。データ視覚化コンポーネントで使用されるその他の機能へのリンクは、次のとおりです。
部分ページ・レンダリング: データ視覚化コンポーネントをリフレッシュして、ページの別のコンポーネントで実行されたアクションに基づく新しいデータを表示できます。詳細は、第8章「部分ページ・コンテンツの再レンダリング」を参照してください。
パーソナライズ: ユーザーは実行時にデータ視覚化コンポーネントの表示を変更できますが、ユーザーがカスタマイズできるようにアプリケーションを構成していないかぎり、ユーザーがページを終了するとそれらの値は保持されません。詳細は、第34章「JSFページでのユーザー・カスタマイズの許可」を参照してください。
アクセシビリティ: データ視覚化コンポーネントは、デフォルトでアクセス可能です。データ視覚化コンポーネントのあるアプリケーション・ページを、スクリーン・リーダーのユーザーがアクセスできるように構成できます。詳細は、第33章「アクセス可能なADF Facesページの開発」を参照してください。
タッチ装置: ADF Facesアプリケーションがタッチ装置で動作することがわかれば、その装置に固有のページを作成する作業がベスト・プラクティスになります。詳細は、付録D「ADF Facesを使用したタッチ装置のWebアプリケーションの作成」を参照してください。
スキンおよびスタイル: アプリケーションに適用するADFスキンを使用するか、スタイル関連のプロパティ(styleClass
またはinlineStyle
)を使用してCSSスタイル・プロパティを直接適用することで、データ視覚化コンポーネントの外観をカスタマイズできます。詳細は、第31章「スタイルおよびスキンを使用した外観のカスタマイズ」を参照してください。
プレースホルダ・データ・コントロール: 最終的にページのデータ視覚化コンポーネントでADFデータ・バインディングが使用されることがわかっていても、データ・コントロールの準備ができる前にページを開発する必要がある場合、手動でコンポーネントをバインドするのではなく、プレースホルダ・データ・コントロールの使用を検討します。プレースホルダ・データ・コントロールを使用すると、開発済データ・コントロールを使用した場合と同じ宣言的な開発が行われます。詳細は、『Oracle Application Development FrameworkによるFusion Webアプリケーションの開発』の「プレースホルダ・データ・コントロールを使用したページの設計」の章を参照してください。
データ視覚化コンポーネントでは、データの配信方法、自動部分ページ・レンダリング(PPR)、コンポーネントを表示するために使用されるイメージ・フォーマット、そしてデータの表示および編集方法など、同じ機能の大部分が共有されています。これらのコンポーネントを使用する前に、この共有機能と、その構成方法を理解することが重要です。
グラフ、ゲージ、ガント・チャート、階層ビューア、ピボット・テーブル、サンバースト、テーマ・マップ、時系列およびツリーマップを含むデータ視覚化コンポーネントは、データ・ソースからのデータ配信方法について構成できます。データは、レンダリング直後、データが使用可能になり次第、またはコンポーネントのシェルがレンダリングされた後の遅延フェッチのいずれかで、コンポーネントに配信できます。デフォルトでは、地理マップを除くすべてのデータ視覚化コンポーネントで、コンテンツが使用可能なときにデータ・ソースから配信されるようになっています。これらのコンポーネントのcontentDelivery
属性は、デフォルトでwhenAvailable
に設定されています。
ガント・チャート、階層ビューア、ピボット・テーブル、サンバースト、時系列およびツリーマップなど、ツリーまたはツリー表モデルに基づくデータ視覚化コンポーネントは仮想化されています。つまり、サーバーでコンポーネント用に存在する一部の行、列またはレベルのみが、クライアントに配信され、表示されます。これらのコンポーネントを構成して、一定の数の行、列またはレベルを一度にデータ・ソースからフェッチします。次の属性を使用して、フェッチ・サイズを構成します。
ガント・チャート:
fetchSize
: データ・フェッチ・ブロックの行数を指定します。デフォルト値は25
です。
horizontalFetchSize
: データがフェッチされる水平データ・ウィンドウのサイズをピクセル数で指定します。このデータ・ウィンドウ内のタスク・バーのみがレンダリングされます。垂直方向への仮想化を実現するfetchSize
とは対照的に、horizontalFetchSize
は水平方向への仮想化を実現します。
階層ビューア:
levelFetchSize
: 展開された親ノードごとに、一度にフェッチされて表示される子ノードの数を指定します。階層ビューアに表示される横方向のナビゲーション・コントロールを使用すれば、追加の子ノードをフェッチし、表示できます。デフォルト値は25
です。
ピボット・テーブル:
rowFetchSize
: 1データ・フェッチ・ブロック内の行数を指定します。デフォルト値は25
です。
columnFetchSize
: 1データ・フェッチ・ブロック内の列数を指定します。デフォルト値は10
です。
サンバースト:
displayLevelsChildren
: 初期レンダリング中に表示する子レベルの数を指定します。このプロパティは0ベースです。値0は、ルートの下の子レベルが表示されず、ルート自体は表示されることを意味します。デフォルト値は2で、ルートおよび子の最初の2つのレベルが表示されることを意味します。
時系列:
fetchStartTime
: データを現時点でフェッチする時間範囲の開始を指定します。
fetchEndTime
: データを現時点でフェッチする時間範囲の終了を指定します。
ツリーマップ:
displayLevelsChildren
: 初期レンダリング中に表示する子レベルの数を指定します。このプロパティは0ベースです。値0は、ルートの下の子レベルが表示されず、ルート自体は表示されることを意味します。デフォルト値は2で、ルートおよび子の最初の2つのレベルが表示されることを意味します。
遅延配信の場合、ページにこれらのコンポーネントが1つ以上含まれると、そのページでは最初は標準のライフサイクルが実行されます。ただし、最初のリクエスト時にデータがフェッチされるのではなく、特別な個別の部分ページ・レンダリング(PPR)リクエストが実行され、コンポーネントのフェッチ・サイズの値が返されますページのレンダリング直後であるため、レンダー・レスポンス・フェーズのみがコンポーネントに対して実行され、対応するデータのフェッチおよび表示が可能になります。ユーザーのアクションにより後続のデータ・フェッチが実行される場合(別の行セットのためにピボット・テーブル・グリッド内をスクロールするなど)、別のPPRリクエストが実行されます。
コンテンツが使用可能なときに配信されるようにコンテンツ配信を構成すると、フレームワークでは最初のリクエストの間にデータの可用性をチェックし、使用可能であれば、そのデータがコンポーネントに送信されます。使用可能でない場合、データは遅延配信と同じように、別のPPRリクエスト時にロードされます。
パフォーマンスのヒント: 遅延配信は、データ・フェッチがコストの高い(低速な)操作と予想される場合、たとえば低速で待機時間の長いデータベース接続や、Webサービスなどの低速なデータ・ソースからのデータのフェッチなどに使用する必要があります。ページにデータ視覚化コンポーネント以外のコンポーネントが多数含まれている場合にも、遅延配信を使用します。遅延配信を使用すると、データが使用可能になる前に、初期ページのレイアウト・コンポーネントおよびその他のコンポーネントが最初にレンダリングされます。ページではデータ視覚化コンポーネントが唯一のコンテキストである場合、あるいはコンポーネントから大量のデータが返される見込みがない場合は、即時配信を使用します。この場合、ユーザー・レスポンス時間がより高速で、サーバーCPU利用率がより高ければ、2番目のリクエストはサーバーに移動しないため、レスポンス時間は遅延配信を使用する場合よりも高速になります(または、場合によっては高速に感じます)。ツリーまたはツリー表モデルに基づくコンポーネントの場合、フェッチ・ブロックとして構成された値のみが最初に返されます。遅延配信と同様に、ユーザーのアクションが後続のデータ・フェッチの原因となる場合は、次の行セットが配信されます。 whenAvailable配信では、最初のレンダリング中にデータが使用可能な場合は即時配信を使用し、データが最初に使用可能でない場合には遅延配信に頼るという柔軟性が高まります。 |
ツリーまたはツリー表に基づくコンポーネントのフェッチ・サイズの設定の詳細は、12.2.2項「コンテンツ配信」を参照してください。
ADF Facesでは部分ページ・レンダリング(PPR)がサポートされており、ページ上で特定のコンポーネントをレンダリングでき、ページ全体をレンダリングする必要がありません。組込みのPPR機能に加えて、1つのコンポーネントがトリガーとして機能し、別のコンポーネントがリスナーとして機能するように依存関係を設定できるクロスコンポーネント・レンダリングを使用するように、コンポーネントを構成できます。詳細は、8.1項「部分ページ・レンダリングについて」を参照してください。
デフォルトでは、ADFデータ視覚化コンポーネントで自動PPRがサポートされ、バックエンド・ビジネス・ロジックの結果として値が変更されるコンポーネントが自動的に再レンダリングされます。アプリケーションでFusionテクノロジ・スタックを使用する場合、任意のページで自動部分ページ・レンダリング機能を有効にできます。詳細は、『Oracle Application Development FrameworkによるFusion Webアプリケーションの開発』の部分ページ・レンダリングとイテレータ・バインディングに関する必知事項を参照してください。
Fusionテクノロジ・スタックには、アクティブ・データ・サービス(ADS)が含まれ、これはサーバー側のプッシュ・フレームワークで、これによりADF FacesコンポーネントおよびADFデータ視覚化コンポーネントのリアルタイムのデータ更新を提供できます。ADF Facesコンポーネントをデータ・ソースにバインドすると、ADSでは、ブラウザ・クライアントに明示的な更新リクエストを要求することなく、ブラウザ・クライアントにデータ更新をプッシュします。
表22-1に、アクティブ・データをサポートするDVTコンポーネントおよび追加詳細がある場所をリストします。
表22-1 アクティブ・データをサポートするDVTコンポーネント
DVTコンポーネント | コンポーネントの詳細へのリンク |
---|---|
地理マップ |
28.2.4項「マップ点テーマのアクティブ・データ・サポートに関する必知事項」 |
ピボット・テーブルおよびピボット・フィルタ・バー |
25.1.2.11項「アクティブ・データ・サポート(ADS)」 また、アクティブなデータを表示するために |
サンバースト |
30.1.2.16項「アクティブ・データ・サポート(ADS)」 |
ツリーマップ |
30.1.2.16項「アクティブ・データ・サポート(ADS)」 |
アクティブ・データ・サービスの使用の詳細は、第37章「非同期バックエンドでのアクティブ・データ・サービスの使用方法」を参照してください。
JDeveloperは、抽象クラスjava.util.ResourceBundle
を使用してロケール固有のリソースを提供し、ADF Facesおよびデータ視覚化コンポーネントをローカライズしやすいようにサポートします。
データ視覚化コンポーネントには、コンポーネントの一部であるテキストが含まれている場合があり、たとえばaf:table
コンポーネントでは、データの初期ロード中にaf:table
コンポーネントがデータをフェッチしている間、あるいはユーザーが表をスクロールしている間に、リソース文字列af_table.LABEL_FETCHING
が、ブラウザで表示されるメッセージ・テキストに使用されます。JDeveloperでは、これらのテキスト・リソースを28言語に自動的に変換します。これらのテキスト・リソースは、リソース・バンドルで参照されます。イタリア語を使用するようにブラウザを設定した場合、コンポーネント内に含まれるテキストはすべて自動的にイタリア語で表示されます。
text
属性を子のgraphTitle
コンポーネントで設定して、pieGraph
コンポーネントのタイトルを定義する場合など、コンポーネントに追加するテキストには、実際のテキストが含まれているリソース・バンドルを指定して、各ロケール版のリソース・バンドルを作成し、<locale-config>
要素を追加して、アプリケーションのfaces-config.xml
ファイルにデフォルトおよびサポートされるロケールを定義する必要があります。また、アプリケーションのすべてのページでリソース・バンドルを使用できるようにするには、アプリケーションのfaces-config.xml
ファイルに<resource-bundle>
要素を追加する必要があります。リソース・バンドルを構成および登録すると、式言語(EL)エディタによりバンドルのキーが表示され、アプリケーション・ページでのバンドルの参照が簡単になります。
ADFコンポーネントに追加するテキストのテキスト・リソースを作成するプロセスを簡略化するために、JDeveloperでは、ビジュアル・エディタの変換可能な文字列に関する、リソース・バンドルの自動同期がサポートされています。ビジュアル・エディタまたは「プロパティ」ウィンドウで直接コンポーネントを編集すると、ベース・リソース・バンドルにテキスト・リソースが自動的に作成されます。詳細は、32.2項「JDeveloperにおける自動リソース・バンドル統合の使用方法」を参照してください。
注意: データベースから取得されたテキストは変換されません。 |
タイトルおよびラベルの子コンポーネントのあるデータ視覚化コンポーネントの場合、属性ドロップダウン・リストを使用して「テキスト・リソースの選択」ダイアログを開き、アプリケーション・リソース・バンドルから変換可能な文字列を選択または追加することにより、テキスト・リソースを作成し、リソース・バンドルに追加することもできます。または、「式ビルダー」を選択して、式言語(EL)エディタを開き、実行時にタイトルまたはラベルのために実行される式を作成することができます。
JDeveloperでは、UI優先開発を使用して任意のデータ視覚化コンポーネントをJSFページに追加し、後からADFデータ・コントロールまたはマネージドBeanを使用して、表示するデータを手動でバインドできます。この場合、「コンポーネント」ウィンドウからページにコンポーネントをドラッグし、「プロパティ」ウィンドウでデータを手動でバインドします。
たとえば、簡単なUI優先開発を使用してページを設計しているときには、「コンポーネント」ウィンドウを使用して棒グラフをJSFページに追加します。ページにチャート・コンポーネントをドラッグ・アンド・ドロップすると、「チャートの作成」ダイアログに使用可能なグラフ・タイプのカテゴリが説明とともに表示され、グラフの作成を視覚的に支援します。グラフの凡例のクイック・スタート・レイアウトも指定できます。図22-16に、デフォルトの棒グラフ・タイプおよびクイック・スタート・レイアウトが選択された棒グラフのための棒グラフの作成ダイアログを示します。
UI優先開発を使用したデータ視覚化コンポーネントの作成、コンポーネント・データ要件の理解、DVT親コンポーネントおよび子コンポーネントの構成、コンポーネントの外観のカスタマイズ、およびコンポーネントへの特殊効果と双方向性の追加の詳細は、このマニュアルのこの部の次の章を参照してください。
注意: ファンネル、パレート、レーダー・グラフおよび株価チャートは、サーバー側のレガシー・コンポーネントです。クライアント側のチャート・コンポーネントにはこれらのグラフの使用は、推奨されません。レガシー・グラフの使用の詳細は、付録H「グラフ・コンポーネントの使用方法」を参照してください。 |
または、データ優先開発を使用すれば、データ・バインディングを処理するADFデータ・コントロールを使用してコンポーネントを作成できます。この場合、「データ・コントロール」パネルからデータ・コレクションをドラッグし、データ・バインディング・ダイアログに入力してデータの表示を構成します。
たとえば、データ・コントロール・パネルからデータ・コントロールをドラッグすることで、DVTチャートを作成してデータバインドします。コンポーネント・ギャラリには使用可能なグラフのカテゴリ、タイプおよび説明が表示され、グラフの設計およびクイック・レイアウトの定義が視覚的にサポートされます。図22-17に、データ・コントロールからのグラフの作成で表示されるコンポーネント・ギャラリを示します。
作成するグラフのカテゴリおよびタイプを選択後、データ・バインディング・ダイアログを表示し、データ・コレクション属性をチャート・コンポーネントにバインドします。図22-18に、棒グラフを作成してデータバインドするために使用された棒グラフの作成ダイアログを示します。
すべてのデータ視覚化コンポーネントは、ADFデータ・コントロールのデータ・コレクションにバインドできます。データ・コントロールへのこれらのコンポーネントのデータ・バインドの詳細および例は、次の参照先を参照してください。
『Oracle Application Development FrameworkによるFusion Webアプリケーションの開発』のデータバインドされたチャートの作成に関する項
『Oracle Application Development FrameworkによるFusion Webアプリケーションの開発』のデータ・バインドされたグラフの作成に関する項
注意: ファンネル、パレート、レーダー・グラフおよび株価チャートは、サーバー側のレガシー・コンポーネントです。クライアント側のグラフにはこれらの使用は、推奨されません。 |
『Oracle Application Development FrameworkによるFusion Webアプリケーションの開発』のデータ・バインドされたゲージの作成に関する項
『Oracle Application Development FrameworkによるFusion Webアプリケーションの開発』のデータ・バインドされたピボット・テーブルの作成に関する項
注意: JDeveloperでは、「ピボット・テーブルの作成」ウィザードでピボット・テーブルのデータ・バインドおよび構成のための宣言サポートが提供されます。 |
『Oracle Application Development FrameworkによるFusion Webアプリケーションの開発』のデータ・バインドされた地理マップの作成に関する項
『Oracle Application Development FrameworkによるFusion Webアプリケーションの開発』のデータ・バインドされたテーマ・マップの作成に関する項
『Oracle Application Development FrameworkによるFusion Webアプリケーションの開発』のデータ・バインドされたガント・チャートの作成に関する項
『Oracle Application Development FrameworkによるFusion Webアプリケーションの開発』のデータ・バインドされた時系列の作成に関する項
『Oracle Application Development FrameworkによるFusion Webアプリケーションの開発』のデータ・バインドされた階層ビューアの作成に関する項
『Oracle Application Development FrameworkによるFusion Webアプリケーションの開発』のデータ・バインドされたツリーマップおよびサンバーストの作成に関する項