ヘッダーをスキップ

Oracle® Real User Experience Insightユーザーズ・ガイド 12c リリース3 (12.1.0.4) for Linux x86-64 E49732-01 |
| 目次 | 索引

前 | 次 |

# I Oracle ADFのサポート

この付録では、Oracle Application Development Framework (ADF)ベースのアプリケーションの正確な監視のために提供されるサポートについて詳しく説明します。

## I.1 概要

RUEIでは、追加設定なしでOracle ADFアプリケーションを監視することができます。自動的にOracle ADFアプリケーションを検出して、ネットワーク・オブジェクトをビジネス機能に変換します。このサポートを使用すると、個々のユーザー・アクションが正しいWebアプリケーション、タスク・フローおよびビューと自動的に一致します。

この付録でこれから説明する監視のサポートは、Oracle ADFバージョン11gに基づくアプリケーションについて検証されています。

## I.2 Oracle ADFスイート定義の作成

Oracle ADFベースのアプリケーションのスイート定義を作成できます。スイートを作成する手順の詳細は、10.1.1項「スイート定義の作成」に記載されています。

## I.3 ADFアプリケーションの監視の有効化

`adf-faces-databinding-rt.jar`ファイルによって、`ExecutionContextProvider(oracle.adfinternal.view.faces. context.AdfExecutionContextProvider)`クラスのDMSベースの実装が提供されます。実装クラスは.`jar`ファイルで事前に定義されていますが、機能が有効になるのは、次のアプリケーション・コンテキスト・パラメータを`web.xml`ファイルに指定したときです。

    <context-param>
      <description>This parameter notifies ADF Faces that the ExecutionContextProvider
                   service provider is enabled. When enabled, this will start
                   monitoring and aggregating user activity information for the client
                   initiated requests. By default, this param is not set or is false.
      </description>  <param-name>oracle.adf.view.faces.context.ENABLE_ADF_EXECUTION_CONTEXT_PROVIDER</param-name>
      <param-value>true</param-value>
    </context-param>

## I.4 Cookieテクノロジの指定

Oracle ADFはJavaテクノロジに基づいているため、Oracle ADFアプリケーションは多くの場合`JSESSIONID`状態Cookieを使用します。また、RUEIによって、完了したセッションのユーザーを監視および追跡するには、Cookieのパスを「/」に設定する必要があります。Oracle ADFアプリケーションが、状態の追跡のために別のCookie名を使用する場合は、それを反映するようにアプリケーション定義を更新する必要があります。また、ユーザー名の認識は`j_username`構造に基づくことに注意してください。Cookie構成の詳細は、12.2項「セッション・トラッキング・メカニズムの指定」を参照してください。

## I.5 ADFのレポート

ADFのレポートの作成において、RUEIはヘッダーとして提供されるAdf-View-IDに大きく依存しています。そのため、ADF開発者がビューIDにそれ相応の値を設定しておくことが重要です。デフォルトでは、コンテンツを生成したjspxの名前を基にビューIDが設定されます。

動的なリージョンでは、特別なコーディングを行わなくても常にUIShell.jspxが表示されます。次のようなコードを実装することをお薦めします。

jsfフェーズのリスナー

    FacesContext context = FacesContext.getCurrentInstance();
       Object response = context.getExternalContext().getResponse();
         if (response instanceof HttpServletResponse) {
              HttpServletResponse httpResponse = (HttpServletResponse)
         response;
           httpResponse.setHeader(<PageInfoBean>._VIEW_ID_HEADER_NAME, <relevant
            viewID>);
       }

クライアントが閲覧したコンテンツの生成元Javaコード・ブロックを、ビューIDからおおよそ推測できるようにしておく必要があります。Fusionの場合、これは製品のコンテキストで意味を持つため、範囲は個々のリージョンよりも広くなります。

## I.6 セッション診断機能内のADFページ

ADFページは、セッション診断機能内でリプレイ・ビューアによって使用できないか、リッチ・インターネット・アプリケーション(RIA)に基づくページの場合は、文字化けする可能性があります。RIAフレームワークの例には、Ajax、Curl、GWT、Adobe Flash/Adobe Flex/AIR、Java/JavaFX、MozillaのXUL、OpenLaszloおよびMicrosoft Silverlightがあります。

再生したページに何も表示されない場合は、対象のページ内で`oracle.adf.view.rich.security.FRAME_BUSTING`コンテキスト・パラメータの使用を中止することを検討してください。このセキュリティ・パラメータは、悪意のあるWebサイトが別のドメインのページをフレームに引き出して偽のページで覆い隠すクリックジャックという攻撃を防止するときに使用します。

## I.7 データ・アイテム

表I-1に示すADF固有のデータ・アイテムがRUEIでレポートされます。

表I-1 ADF固有のデータ・アイテム

項目 | 説明
--- | ---
ADFスイート/コード | 構成定義で定義されたADFフレームワーク・スイートのコード。このデータを使用して、監視対象の様々なADFフレームワーク・スイートを区別することができます。
ADFスイート/名前 | 構成定義で定義されたADFフレームワーク・スイートの名前。このデータを使用して、監視対象の様々なADFフレームワーク・スイートを区別することができます。
ADFアクション/名前 | このヒットによってトリガーされたアクション(表示、アクション、ダイアログ、フォーカス、ディスクロージャ、起動、問合せ、ソート、valueChangeなど)。
ADFアプリケーション/名前 | ADFフレームワークにおけるアプリケーション・モジュールの名前。
ADFコンポーネント・クライアントID/名前 | エンドユーザーが(前の)ページでクリックした構成要素の一意のID。
ADFコンポーネント表示名/名前 | (前の)エンドユーザー・アクションによってアクティブになった構成要素の表示名。
ADFコンポーネント・タイプ/名前 | (前の)エンドユーザー・アクションによってアクティブになった構成要素の種類。
ADFリージョン/名前 | (前の)エンド・ユーザー・アクションが実行された直前のアクティブ・リージョン名。
ADFビューID/名前 | (前の)エンドユーザー・アクションが行われた画面(の一部)のID。

詳細情報

Oracle ADFのアーキテクチャおよび機能の詳細は、『Oracle Fusion Middleware Oracle Application Development Framework Fusion開発者ガイド』を参照してください。これは次の場所から入手できます。

    http://download.oracle.com/docs/cd/E12839_01/web.1111/b31974/title.htm