Oracle® Fusion Middleware Oracle Application Development Frameworkデスクトップ統合開発者ガイド 11gリリース1(11.1.1.6.0) B66694-01 |
|
![]() 前 |
![]() 次 |
この付録では、Fusion Webアプリケーションでの使用を可能にするためにADFデスクトップ統合サーブレット(adfdiRemote
)に対して設定する値について説明します。また、この付録では、ADFデスクトップ統合に同梱されているHTTPフィルタの動作を決めるデプロイメント・ディスクリプタ・ファイルの値について説明し、これらの値の使用例を示すデプロイメント・ディスクリプタ・ファイルからの抜粋を提供します。
この付録の内容は次のとおりです。
注意: ADFデスクトップ統合およびADFライブラリWebアプリケーション・サポートをデスクトップ統合プロジェクトのテクノロジ・スコープに追加すると、この付録で説明するweb.xml ファイルに自動的にエントリが生成されます。詳細は、4.2項「Fusion WebアプリケーションへのADFデスクトップ統合の追加」を参照してください。 |
Excelワークブックと統合するFusion WebアプリケーションでadfdiRemote
サーブレットを使用するには、デプロイメント・ディスクリプタ・ファイル(web.xml
)にエントリを含める必要があります。Fusion Webアプリケーションと統合するExcelワークブックは、このサーブレットをコールしてFusion Webアプリケーションとデータを同期させます。サーブレットは、次のディレクトリのadf-desktop-integration.jar
ファイルに格納されます。
MW_HOME
\oracle_common\modules\oracle.adf.desktopintegration_11.1.1
MW_HOME
はミドルウェア・ホーム・ディレクトリです。
4.2項「Fusion WebアプリケーションへのADFデスクトップ統合の追加」の説明に従ってADFデスクトップ統合をプロジェクトのテクノロジ・スコープに追加すると、Fusion Webアプリケーションでサーブレット(DIRemoteServlet
)を有効化するために必要なエントリを使用して、デプロイメント・ディスクリプタが自動的に構成されます。必要であれば、サーブレットを手動で構成できます。
ADFデスクトップ統合サーブレットの構成手順:
JDeveloperで、対象となるADFデスクトップ統合プロジェクトのデプロイメント・ディスクリプタ・ファイル(web.xml
)を探して開きます。
通常、このファイルはプロジェクトのWEB-INF
ディレクトリにあります。
「サーブレット」ページ→「追加」アイコンをクリックして、「サーブレット」表に行エントリを作成します。このアイコンは、「サーブレット」表の右上隅にあります。
Fusion WebアプリケーションでadfdiRemote
サーブレットを有効化するために、表E-1に従って値を入力します。
「サーブレット」ページで「サーブレット・マッピング」タブ→「追加」アイコンをクリックして、「サーブレット・マッピング」表に行を作成します。
Fusion WebアプリケーションでadfdiRemote
サーブレットのURLパターンを追加するために、表E-2に従って値を入力します。 入力する値は、RemoteServletPath
ワークブック・プロパティに対して統合Excelワークブックで指定する値と一致する必要があります。これらの値では、大/小文字が区別されます。
図E-1に、Master Price Listモジュールのweb.xml
の「サーブレット」ページを示します。
「フィルタ」ページをクリックして、「フィルタ」表にadfBindings
フィルタが含まれているかどうか確認します。エントリが存在する場合はそれを選択し、次の手順に進みます。該当するエントリがない場合は、「追加」アイコンをクリックして「フィルタ」表に行エントリを作成します。このアイコンは、「フィルタ」表の右上隅にあります。
ADFバインディング・フィルタをadfdiRemote
サーブレットに追加するために、表E-3に従って値を入力します。
「フィルタ」ページで「フィルタ・マッピング」タブ→「追加」アイコンをクリックして、「フィルタ・マッピング」表に行を作成します。
マッピング・フィルタをadfdiRemote
サーブレットに追加するために、表E-4に従って値を入力します。このフィルタ・マッピングは、手順2のサーブレットの名前と一致する必要があります。
図E-2に、Master Price Listモジュールのweb.xml
の「フィルタ」ページを示します。
デプロイメント・ディスクリプタ・ファイルを保存して、行った変更を適用するためにADFデスクトップ統合プロジェクトを再ビルドします。
ADFデスクトップ統合の次のディレクトリに格納されているadf-desktop-integration.jar
に、HTTPフィルタが含まれています。
MW_HOME
\oracle_common\modules\oracle.adf.desktopintegration_11.1.1
MW_HOME
はミドルウェア・ホーム・ディレクトリです。
エンド・ユーザーがFusion Webアプリケーションから統合Excelワークブックをダウンロードする前に、アプリケーションによってHTTPフィルタが起動され、統合Excelワークブックで変更が行われるように、Fusion Webアプリケーションのデプロイメント・ディスクリプタ・ファイル(web.xml
)でエントリを構成します。この変更が行われることにより、エンド・ユーザーが開いたときに統合Excelワークブックが正しく機能します。HTTPフィルタは次の変更を行います。
WebAppRoot
このプロパティの値を、エンド・ユーザーによる統合Excelワークブックのダウンロード元となるFusion Webアプリケーションの完全修飾URLに設定します。
ワークブックのモード
統合Excelワークブックが誤って設計モードまたはテスト・モードのままになっている場合に、ワークブックのモードを実行時モードに変更します。
注意: adfdiExcelDownload フィルタを使用しない場合は、かわりにワークブック管理ツールを使用して、ワークブックでWebAppRoot プロパティを設定できます。詳細は、D.1項「ワークブック管理ツールの使用」を参照してください。 |
4.2項「Fusion WebアプリケーションへのADFデスクトップ統合の追加」で説明しているように、デフォルトでは、プロジェクトのテクノロジ・スコープにADFデスクトップ統合を追加すると、JDeveloperによってADFデスクトップ統合プロジェクトにHTTPフィルタが追加されます。
HTTPフィルタの構成手順:
JDeveloperで、対象となるADFデスクトップ統合プロジェクトのデプロイメント・ディスクリプタ・ファイル(web.xml
)を探して開きます。
通常、このファイルはプロジェクトのWEB-INF
ディレクトリにあります。
「フィルタ」ページをクリックして、「フィルタ」表にadfBindings
フィルタが含まれているかどうか確認します。エントリが存在する場合はそれを選択し、次の手順に進みます。該当するエントリがない場合は、「追加」アイコンをクリックして「フィルタ」表に行エントリを作成します。
フィルタを作成するため、または値を構成して既存のHTTPフィルタを変更するために、表E-5に従って値を入力します。
「フィルタ」ページで「フィルタ・マッピング」タブ→「追加」アイコンをクリックして、「フィルタ・マッピング」表に行を作成します。
表E-6に従って値を入力し、デフォルトのファイル形式(.xlsx)を使用する統合Excelワークブックのフィルタ・マッピングを追加します。
表E-7に従って値を入力し、マクロ有効ワークブック形式(.xlsm)を使用する統合Excelワークブック用に、別のフィルタ・マッピングを追加します。
表E-7 フィルタ・マッピングを構成するためのプロパティ
プロパティ | 入力する値 |
---|---|
マッピング・タイプ |
URLパターン |
マッピング |
|
ディスパッチャ・タイプ |
このプロパティには値は不要です。 |
図E-3に、Master Price Listモジュールのweb.xml
の「フィルタ」ページを示します。
「アプリケーション」ページをクリックし、「MIMEマッピング」セクションを開いて「追加」アイコンをクリックします。
表E-8に従って値を入力し、デフォルトのファイル形式(.xlsx)を使用する統合ExcelワークブックのMIMEタイプを追加します。
表E-9に従って値を入力し、マクロ有効ワークブック形式(.xlsm)を使用する統合Excelワークブック用に、別のMIMEタイプを追加します。
表E-9 MIMEマッピングを追加するためのプロパティ
プロパティ | 入力する値 |
---|---|
拡張子 |
|
MIMEタイプ |
|
図E-4に、Master Price Listモジュールのweb.xml
の「アプリケーション」ページを示します。
デプロイメント・ディスクリプタ・ファイルを保存して、行った変更を適用するためにADFデスクトップ統合プロジェクトを再ビルドします。
web.xml
ファイルでフィルタおよびフィルタ・マッピング情報を更新する際には、Fusion Webアプリケーションから統合Excelワークブックをダウンロードできるように、adfdiExcelDownload
フィルタ・エントリの下にADFライブラリWebアプリケーション・サポート(<filter-name>ADFLibraryFilter</filter-name>
)が表示されるようにしてください。
次の例は、テクノロジ・スコープにADFデスクトップ統合が含まれているFusion Webアプリケーションのweb.xml
ファイルからの抜粋で、デスクトップ統合プロジェクト用に構成するエントリを示しています。フィルタの順序の詳細は、4.2.2項「ADFデスクトップ統合をJDeveloperプロジェクトに追加する際の処理」を参照してください。
<filter> <filter-name>adfBindings</filter-name> <filter-class> oracle.adf.model.servlet.ADFBindingFilter</filter-class> </filter> <filter> <filter-name>adfdiExcelDownload</filter-name> <filter-class> oracle.adf.desktopintegration.filter.DIExcelDownloadFilter </filter-class> </filter> <filter-mapping> <filter-name>adfBindings</filter-name> <servlet-name>adfdiRemote</servlet-name> </filter-mapping> <filter-mapping> <filter-name>adfdiExcelDownload</filter-name> <url-pattern>*.xlsx</url-pattern> </filter-mapping> <filter-mapping> <filter-name>adfdiExcelDownload</filter-name> <url-pattern>*.xlsm</url-pattern> </filter-mapping> <servlet> <servlet-name>adfdiRemote</servlet-name> <servlet-class> oracle.adf.desktopintegration.servlet.DIRemoteServlet </servlet-class> </servlet> <servlet-mapping> <servlet-name>adfdiRemote</servlet-name> <url-pattern>/adfdiRemoteServlet</url-pattern> </servlet-mapping> <mime-mapping> <extension>xlsx</extension> <mime-type> application/vnd.openxmlformats-officedocument.spreadsheetml.sheet </mime-type> </mime-mapping> <mime-mapping> <extension>xlsm</extension> <mime-type> application/vnd.ms-excel.sheet.macroEnabled.12 </mime-type> </mime-mapping>