Oracle® Fusion Middleware Oracle Application Development Frameworkデスクトップ統合開発者ガイド 11g リリース2(11.1.2.4.0) B66718-04 |
|
![]() 前 |
![]() 次 |
この付録では、開発中に問題が発生した場合に統合Excelワークブックのトラブルシューティングを行い、ログ・ファイルを生成する方法について説明します。また、発生する可能性のあるいくつかのエラーと問題(バージョンの不一致、404エラー、「Oracle ADF」タブが統合Excelワークブックに表示されないなど)についても説明します。
この付録の内容は次のとおりです。
注意: プロパティ・インスペクタは、プロパティまたはプロパティの組合せに入力した値が有効かどうかの検証は実行しません。無効な値があると、実行時にエラーが発生します。実行時のエラーを回避するには、プロパティ・インスペクタでプロパティに有効な値を指定してください。プロパティ・インスペクタの詳細は、5.6項「プロパティ・インスペクタの使用」を参照してください。 |
特定のURLを使用して、Fusion WebアプリケーションによってADFデスクトップ統合のリモート・サーブレット(adfdiRemote
)が実行されていることを確認し、ADFデスクトップ統合のバージョンを確認できます。この情報は、統合Excelワークブックに関連するエラーが発生した場合に役立ちます。たとえば、統合Excelワークブックのトラブルシューティングを行う際に、ADFデスクトップ統合のリモート・サーブレットが稼働しているかどうかを判断できます。
ADFデスクトップ統合のリモート・サーブレットが稼働していることを検証するには:
Fusion Webアプリケーションにログオンします。
Webブラウザのアドレス・バーに、ワークブックのプロパティWebAppRoot
およびRemoteServletPath
を連結した値を入力します。これは、次のようなURLに相当します。
http://hostname:7101/FusionApp/adfdiRemoteServlet
ADFデスクトップ統合のリモート・サーブレットが稼働している場合、Webページが元に戻って次のようなメッセージが表示されます。
ADF Desktop Integration Remote Servlet 11g (11.1.1.48.86) [520] Response from oracle.adf.desktopintegration.servlet.DIRemoteServlet: OK.
統合Excelワークブックのエンド・ユーザーが、ADFのセキュリティを使用して構成されているFusion Webアプリケーションと相互作用するアクションを起動する際にユーザー認証を要求されない場合、統合ExcelワークブックまたはFusion Webアプリケーションのどちらかでセキュリティが正しく構成されていない可能性があります。次の手順を実行して、セキュアなFusion Webアプリケーションによってエンド・ユーザーが認証されること、およびセキュリティが有効であることを検証できます。
セキュアなFusion Webアプリケーションによってエンド・ユーザーが認証されることを検証するには:
セキュアなFusion Webアプリケーションによってエンド・ユーザーが認証されることを検証するには、ADFデスクトップ統合のリモート・サーブレットが稼働中かどうかを検証するために使用したURLを、ブラウザのアドレス・バーに入力します。詳細は、C.1項「Fusion WebアプリケーションによるADFデスクトップ統合のサポートの検証」を参照してください。Fusion Webアプリケーションのセキュリティが有効である場合は、ユーザー資格証明を入力するよう求められます。
統合Excelワークブックの保護の詳細は、第11章「統合Excelワークブックの保護」を参照してください。
ADFデスクトップ統合では、ログ・ファイルを生成して、次のソフトウェアによってADFデスクトップ統合内でトリガーされるイベントに基づいて情報を取得できます。
Webサーバー上にある、HTTPフィルタおよびADFデスクトップ統合のリモート・サーブレット(サーバー・サイド・ロギング)
サーバー・サイド・ロギングの詳細は、C.3.1項「サーバー・サイド・ロギングの概要」を参照してください。
Fusion Webアプリケーションと統合するExcelワークブック(クライアント・サイド・ロギング)
クライアント・サイド・ロギングの詳細は、C.3.2項「クライアント・サイド・ロギングの概要」を参照してください。
ADFデスクトップ統合のサーバー・サイド・ログ・ファイルの生成は、他のOracle ADFモジュールの場合と同じように構成します。構成するには、j2ee-logging.xml
という構成ファイルで冗長レベルと出力場所を指定する値を設定する必要があります。また、JDeveloperのOracle Diagnostics Logging構成を使用して、logging.xml
ファイルで指定されるロギング・レベルを構成することもできます。JDeveloperのデバッグ・ツールおよびADFログ出力の使用の詳細は、『Oracle Fusion Middleware Oracle Application Development Framework Fusion開発者ガイド』のADFログ出力の使用に関する項を参照してください。
表C-1に、ADFデスクトップ統合のログ・ファイルの生成を構成するために、j2ee-logging.xml
ファイルの<logger>
要素に属性パラメータとして指定するパッケージ名を示します。
表C-1 ログ・ファイルを構成するためのパッケージの名前
ログ・ファイル・エントリを生成するコンポーネント | 入力するパッケージ名 |
---|---|
すべてのADFデスクトップ統合サーバー・ロジック |
|
ADFデスクトップ統合のリモート・サーブレット |
|
ADFデスクトップ統合のHTTPフィルタ |
|
表C-2に、ログ・ファイルで取得する情報のタイプと、対応するログ・ファイルのエントリ・レベルを示します。
ADFデスクトップ統合を構成して、トリガーされるイベントのログをクライアントで保存できます。デフォルトでは、ログ・ファイルは生成されません。ログを保存するためのOracle ADFデスクトップ統合モジュールの構成方法は、C.3.2.1項「ログを保存するためのADFデスクトップ統合の構成方法」を参照してください。
ADFデスクトップ統合には、イベント・ログを生成し、ログに簡単にアクセスするためのロギング・ツールが用意されています。このロギング・ツールは、「Oracle ADF」タブの「ロギング」グループに含まれており、設計モードとテスト・モードの両方で使用できます。
図C-1に、「Oracle ADF」タブのロギング・ツールを示します。
「ロギング」グループには次のボタンがあります。
コンソール
統合Excelワークブックを開発およびテストしながら最新のログ・エントリを確認できる、ロギング・コンソール・ウィンドウを表示します。このコンソールには、コンソールが開いている間に記録されたエントリが表示されます。このコンソールには、コンソールが開いている間に記録されたエントリが表示されます。図C-2に示すロギング・コンソール・ウィンドウには、情報およびエラーのログ・エントリが表示されています。
このコンソールは、サイズ変更が可能でバッファ・サイズが64,000文字の非モーダル・ウィンドウです。バッファがいっぱいになると、古いエントリは削除されます。ログ・エントリを保存するには、テキスト・ファイルを選択してコピーします。
このダイアログには次のボタンがあります。
レベルの設定: ログ出力レベルを設定する場合は、これをクリックします。このボタンをクリックすると、目的のログ出力レベルを選択できるロギング出力レベル・ダイアログが開きます。
クリア: ログ・バッファをクリアする場合にクリックします。
閉じる: ダイアログを閉じる場合にクリックします。
注意: 一般的なロギング・コンソール・ウィンドウでは、開いているすべての統合Excelワークブックのエントリが記録されます。 |
出力レベルの設定
ログ出力のレベルを選択するよう求められます。表C-3に、クライアント・サイド・ロギングがサポートするログ・レベルを示します。
表C-3 クライアント・サイド・ロギングのレベル
レベル | 説明 |
---|---|
|
クリティカルな情報を取得します。 |
|
重度のエラーと例外に関する情報を取得します。 |
|
リカバリ不能な状況を取得します。 |
|
ライフ・サイクル・イベントとコントロール・フロー・イベントを取得します。 |
|
アプリケーションの実行フローに関する詳細を取得します。 |
|
ログは取得されません。これがデフォルト値になります。 |
注意: ログの出力レベルは、指定されたログ出力のすべてのリスナーに適用されます。 |
ログ出力ファイルの追加
指定のファイルまたは形式にロギング出力を送るための、一時ロギング・リスナーを作成します。「新規一時ロギング出力ファイルの追加」ダイアログで、目的のファイル出力形式(テキストまたはXML)を選択し、ログ出力ファイルのパスとファイル名を指定します。
一時リスナーは、現在のExcelセッションのロギング出力のみを送り、ADFデスクトップ統合の構成ファイルには登録されません。統合Excelワークブックを閉じると、一時リスナーは削除されます。
注意: 「ログ出力ファイルの追加」ボタンをクリックすると、新しいリスナーが作成されます。新しいリスナーによって、ADFデスクトップ統合の構成ファイルで定義された既存のリスナー、または他の一時リスナーは置換されません。 |
構成のリフレッシュ
ADFデスクトップ統合の構成ファイルをリロードします。ADFデスクトップ統合の構成ファイルによって、ADFデスクトップ統合で記録される情報のタイプが決まります。また、ログ・ファイルの場所および出力形式も決まります。
ADFデスクトップ統合の構成ファイルの作成および構成の詳細は、C.3.2.2項「ADFデスクトップ統合の構成ファイルについて」を参照してください。
ADFデスクトップ統合の構成ファイルは、デザイナ・エディションの場合はadfdi-excel-addin.dll.config
、ランタイム・エディションの場合はadfdi-excel-addin-runtime.dll.config
として保存されます。ファイルの正しい名前および場所を調べるには、「Oracle ADF」タブの「ワークブック」グループにある「バージョン情報」ボタンをクリックします。表示されるダイアログで「プロパティ」タブをクリックし、「構成」エントリで構成ファイルのファイル名および場所を調べます。
構成ファイルの要素の詳細は、Microsoft Developer Networkのドキュメントの「Configuration File Schema for the .NET Framework」の項を参照してください。トレースおよびデバッグの設定の詳細は、Microsoft Developer Networkのドキュメントの「Trace and Debug Settings Schema」の項を参照してください。
クライアント・サイド・ロギングの有効な構成方法は多数ありますが、例C-1に示す構成ファイルのサンプルはその1つで、形式の異なる(.txt
および.xml
)2つのログ・ファイルが生成されます。このファイルでは、様々な情報(ThreadId
、ProcessId
およびDateTime
など)がVerbose
ロギング・レベルで取得されます。
例C-1 構成ファイルのサンプル
<?xml version="1.0"?> <configuration> <system.diagnostics> <sources> <source name="adfdi-common" switchValue="Verbose"> <listeners> <add type="System.Diagnostics.DelimitedListTraceListener" name="adfdi-common-excel.txt" initializeData="c:\logs\adfdi-common-excel.txt" delimiter="|" traceOutputOptions="ThreadId, ProcessId, DateTime"/> <add type="System.Diagnostics.XmlWriterTraceListener" name="adfdi-common-excel.xml" initializeData="c:\logs\adfdi-common-excel.xml" traceOutputOptions="None"/> </listeners> </source> </sources> </system.diagnostics> </configuration>
ADFデスクトップ統合の構成ファイルを格納するディレクトリにアクセスできないユーザーは、ユーザー環境変数の値を設定してログ・ファイルの保存場所とロギング・レベルを変更できます。ロギング・レベルとXMLログ・ファイルの場所を構成するための、2つのユーザー環境変数を追加できます。
Windowsでユーザー環境変数を追加または構成するには:
Windowsの「スタート」ボタンをクリックして、「設定」→「コントロール パネル」をクリックします。
「コントロール パネル」で「システム」をダブルクリックします。
「システムのプロパティ」ダイアログで「詳細設定」タブ→「環境変数」ボタンをクリックします。
「環境変数」ダイアログで「usernameのユーザー環境変数 」入力フィールドの下方にある「新規」をクリックし、次の表の説明に従って変数を追加します。
表C-4 ロギングを構成するためのユーザー環境変数
入力する変数の名前 | 指定する値 |
---|---|
|
ロギング情報を取得するXMLファイルのディレクトリ・パスおよびファイル名を定義する値。 ここで指定するディレクトリは、 |
|
ロギングのレベルを指定する値。有効な値は表C-3を参照してください。 |
「OK」をクリックします。
adfdi-common
オブジェクトは、Microsoft .NET FrameworkのSystem.Diagnostics
名前空間のTraceSource
クラスのインスタンスです。このオブジェクトを使用してログ・ファイルを生成すると、Fusion Webアプリケーションと統合するExcelワークブックでトリガーされるイベントの情報を取得できます。
TraceSource
クラスの詳細は、Microsoft Developer Networkのドキュメントを参照してください。
ExcelワークブックのXML構成は、名前と場所を指定したXMLファイルにエクスポートできます。このファイルは、Fusion Webアプリケーションに統合されるExcelワークブックのデバッグまたは分析が必要な場合に役立ちます。このファイルには、ワークブックの各ワークシートの子要素や、リモート・サーブレットの相対パスなどのリソースが含まれます。
次の手順では、ExcelワークブックからのXML構成のエクスポートについて説明します。
統合ExcelワークブックからXML構成をエクスポートするには:
この項では、最も一般的な問題およびその解決策について説明します。
SyncServletResponse
にバージョンの不一致が検出されました。バージョンxが見つかりましたが、バージョンyが必要です。 Fusion WebアプリケーションでBasic認証のかわりにフォームベース認証を使用します。
保存したワークブックをダウンロードしてから開きます。
SSL暗号化を有効にします。
SSLを経由しないBasic認証を使用する場合は、Microsoftサポートのソリューション(http://support.microsoft.com/kb/2123563
)を参照してください。
web.xml
でadfdiExcelDownload
フィルタが正しく構成されていないため、ダウンロードされるワークブックにこのフィルタがWebAppRootプロパティを設定できません。web.xml
内にadfdiExcelDownload
フィルタが正しく構成されていることを確認します。このフィルタを使用している場合、それがADFライブラリWebアプリケーション・サポートに対して正しい順序で指定されていることを確認します。また、adfdiExcelDownload
フィルタのフィルタ・マッピングが正しいことも確認してください(E.2項「ADFデスクトップ統合Excelダウンロード・フィルタの構成」を参照)。また、ブラウザによりファイルがダウンロードされるディレクトリをクリアする必要もあります。