ヘッダーをスキップ
Oracle® Fusion Middleware Oracle ADFデスクトップ統合によるアプリケーションの開発
12c (12.2.1)
E70028-01
  目次へ移動
目次

前
次
 

C 統合Excelワークブックのトラブルシューティング

この付録では、開発中に問題が発生した場合に統合Excelワークブックのトラブルシューティングを行い、ログ・ファイルを生成する方法について説明します。また、発生する可能性のあるいくつかのエラーと問題(バージョンの不一致、404エラー、「Oracle ADF」タブが統合Excelワークブックに表示されないなど)についても説明します。

この付録の内容は次のとおりです。

注意:

プロパティ・インスペクタは、プロパティまたはプロパティの組合せに入力した値が有効かどうかの検証は実行しません。無効な値があると、実行時にエラーが発生します。実行時のエラーを回避するには、プロパティ・インスペクタでプロパティに有効な値を指定してください。プロパティ・インスペクタの詳細は、「プロパティ・インスペクタの使用」を参照してください。

C.1 Fusion WebアプリケーションがADFデスクトップ統合をサポートするかどうかの検証

サーバーのpingテストを使用して、Fusion WebアプリケーションによってADFデスクトップ統合のリモート・サーブレット(adfdiRemote)が実行されていることを確認し、ADFデスクトップ統合のバージョンを確認できます。この情報は、統合Excelワークブックに関連するエラーが発生した場合に役立ちます。たとえば、統合Excelワークブックのトラブルシューティングを行う際に、ADFデスクトップ統合のリモート・サーブレットが稼働しているかどうかを判断できます。

認証を実施するFusion Webアプリケーションの場合、サーバーのpingテストを使用して、ADFデスクトップ統合サーブレットURLに対して適切な認証構成が完了していることを確認できます。

ADFデスクトップ検証は、Internet Explorer固有の様々な設定に依存します。このような理由から、Internet Explorerを使用して検証テストを実行してください。

ADFデスクトップ統合のリモート・サーブレットが稼働していることを検証するには:

  1. Webブラウザのアドレス・バーに、ワークブックのプロパティWebAppRootおよびRemoteServletPathを連結した値を入力します。これは、次のようなURLに相当します。

    http://hostname:7101/FusionApp/adfdiRemoteServlet

    ADFデスクトップ統合のリモート・サーブレットが稼働している場合、Webページが元に戻って図C-1のようなメッセージが表示されます。

    図C-1 ADFデスクトップ統合のリモート・サーブレット

    この図は周囲のテキストで説明しています

C.2 ADFデスクトップ統合診断レポートの生成

サポート、トラブルシューティング、および診断中の状況で、エンド・ユーザーにADFデスクトップ統合診断レポートを提供するように求める場合があります。

C.2.1 ADFデスクトップ統合診断レポートの生成方法

エンド・ユーザーは、「情報」ダイアログからレポートを生成できます。

ADFデスクトップ統合レポートを生成する手順:

  1. 統合Excelワークブックを開きます。
  2. 統合Excelワークブックを設計モードで開いた場合は、「Oracle ADF」タブの「ワークブック」グループの「情報」ボタンをクリックします。

    統合Excelワークブックを実行時モードで開いた場合は、実行時リボン・タブの「情報」ボタンをクリックします。

  3. 「情報」ダイアログの「診断レポート」ボタンをクリックします。
  4. 診断レポートのテキスト・ファイルを保存します。デフォルトでは、ファイルは、adfdi-diagnostic-report.txtとしてDesktopディレクトリ(例: C:\Users\<USER_NAME>\Desktop)に保存されます。
  5. 保存したファイルの場所を示す「診断レポート」ダイアログが開きます。「OK」をクリックして、デフォルトのテキスト・エディタでファイルを開きます。

C.2.2 ADFデスクトップ統合診断レポートに関する必知事項

診断レポートは、次のような様々な情報を含むテキスト・ファイルです。

  • ADFデスクトップ統合アドインのバージョン

  • Microsoft Windowsのバージョン

  • Microsoft Excelのバージョン

  • 「情報」ダイアログの「バージョン」タブからのすべてのプロパティの値

  • 「情報」ダイアログの「プロパティ」タブにリストされるすべてのプロパティの値

  • Excel COMアドインのリスト

  • 「情報」からのブランディング項目(レポートが実行時に生成される場合)

  • ADFデスクトップ統合サーブレットのバージョン(有効なログイン後にレポートが生成される場合)

テキスト・ファイルは、任意のテキスト・エディタまたはExcelで開いて編集できます。ファイルの各行は、タブで区切られたキーと値のペアで構成されます。

エンド・ユーザーが診断ファイルを送信する前に、レポートを見直して、共有したくない機密情報があれば削除するようにエンド・ユーザーに求めます。

C.3 統合Excelワークブックのエンド・ユーザー認証の確認

統合Excelワークブックのエンド・ユーザーが、ADFセキュリティを使用して構成されているFusion Webアプリケーションと相互作用するアクションを起動する際にユーザー資格証明を要求されない場合、統合ExcelワークブックまたはFusion Webアプリケーションのどちらかでセキュリティが正しく構成されていない可能性があります。次の手順を実行して、セキュアなFusion Webアプリケーションによってエンド・ユーザーが認証されること、およびセキュリティが有効であることを検証できます。

セキュアなFusion Webアプリケーションによってエンド・ユーザーが認証されることを検証するには、ADFデスクトップ統合のリモート・サーブレットが稼働中かどうかを検証するために使用したURLを、ブラウザのアドレス・バーに入力します。詳細は、「Fusion WebアプリケーションがADFデスクトップ統合をサポートするかどうかの検証」を参照してください。Fusion Webアプリケーションのセキュリティが有効である場合は、ユーザー資格証明を入力するよう求められます。

統合Excelワークブックの保護の詳細は、「統合Excelワークブックの保護」を参照してください。

C.4 統合Excelワークブックのログ・ファイルの生成

ADFデスクトップ統合では、ログ・ファイルを生成して、次のソフトウェアによってADFデスクトップ統合内でトリガーされるイベントに基づいて情報を取得できます。

  • Webサーバー上にある、HTTPフィルタおよびADFデスクトップ統合のリモート・サーブレット(サーバー・サイド・ロギング)

    サーバー・サイド・ロギングの詳細は、「サーバー・サイド・ロギングの概要」を参照してください。

  • Fusion Webアプリケーションと統合するExcelワークブック(クライアント・サイド・ロギング)

    クライアント・サイド・ロギングの詳細は、「クライアント・サイド・ロギングの概要」を参照してください。

C.4.1 サーバー・サイド・ロギングの概要

ADFデスクトップ統合のサーバー・サイド・ログ・ファイルの生成は、他のOracle ADFモジュールの場合と同じように構成します。構成するには、logging.xmlという構成ファイルで冗長レベルと出力場所を指定する値を設定する必要があります。また、JDeveloperのOracle Diagnostic Logging構成を使用して、logging.xmlファイルで指定されるロギング・レベルを構成することもできます。JDeveloperのデバッグ・ツールおよびADFログ出力の使用の詳細は、『Oracle Application Development FrameworkによるFusion Webアプリケーションの開発』のADFロガーの使用に関する項を参照してください。

表C-1に、ADFデスクトップ統合のログ・ファイルの生成を構成するために、logging.xmlファイルの<logger>要素に属性パラメータとして指定するパッケージ名を示します。


表C-1 ログ・ファイルを構成するためのパッケージの名前

ログ・ファイル・エントリを生成するコンポーネント 入力するパッケージ名

すべてのADFデスクトップ統合サーバー・ロジック

oracle.adf.desktopintegration

ADFデスクトップ統合のHTTPフィルタ

oracle.adf.desktopintegration.filter


C.4.2 Oracle Diagnostics Log Analyzerを使用したADFデスクトップ統合サーブレット・リクエストの分析

Oracle Diagnostics Log Analyzerを使用すると、各ADFデスクトップ統合サーブレット・リクエストの実行に費やされた経過時間の階層ブレークダウンを表示できます。階層ブレークダウンには、ADFモデル・レイヤーなどのその他のADFコンポーネントで費やされた時間も含まれます。ログ・アナライザを使用してWebリクエストを表示する方法の詳細は、『Oracle Application Development FrameworkによるFusion Webアプリケーションの開発』のログ・アナライザを使用してログ・メッセージを表示する方法に関する項を参照してください。

ヒント:

階層ブレークダウンは、異常に長い実行時間によるパフォーマンスのボトルネックを特定する際に役に立ちます。

ADFデスクトップ統合イベントなどのADFイベント・メッセージの完全な階層ツリーを記録するために、oracle.adfdiagnosticsパッケージにログ・レベルCONFIGを指定します。oracle.adfdiagnosticsロガーの詳細は、『Oracle Application Development FrameworkによるFusion Webアプリケーションの開発』のOracle ADFデバッグ構成の作成方法に関する項を参照してください。

C.4.3 クライアント・サイド・ロギングの概要

ADFデスクトップ統合を構成して、ADFデスクトップ統合アドイン内で発生するアクティビティのログを様々なレベルで詳細に作成できます。デフォルトでは、ログ・ファイルは生成されません。ログを保存するためのADFデスクトップ統合モジュールの構成方法は、「ADFデスクトップ統合でログを保存するための構成方法」を参照してください。

C.4.3.1 ADFデスクトップ統合でログを保存するための構成方法

ADFデスクトップ統合には、イベント・ログを生成し、ログに簡単にアクセスするためのロギング・ツールが用意されています。このロギング・ツールは、「Oracle ADF」タブの「ロギング」グループに含まれており、設計モードとテスト・モードの両方で使用できます。

図C-2に、「Oracle ADF」タブのロギング・ツールを示します。

図C-2 「Oracle ADF」タブのロギング・ツール

この図は周囲のテキストで説明しています

「ロギング」グループには次のボタンがあります。

  • コンソール

    統合Excelワークブックを開発およびテストしながら最新のログ・エントリを確認できる、ロギング・コンソール・ウィンドウを表示します。このコンソールには、コンソールが開いている間に記録されたエントリが表示されます。図C-3に示すロギング・コンソール・ウィンドウには、情報およびエラーのログ・エントリが表示されています。

    このコンソールは、サイズ変更が可能でバッファ・サイズが64,000文字の非モーダル・ウィンドウです。バッファがいっぱいになると、古いエントリは削除されます。

    図C-3 ロギング・コンソール・ウィンドウ

    この図は周囲のテキストで説明しています

    このダイアログには次のボタンがあります。

    • レベルの設定: ログ出力レベルを設定する場合は、これをクリックします。このボタンをクリックすると、目的のログ出力レベルを選択できるロギング出力レベル・ダイアログが開きます。

    • クリア: ログ・バッファをクリアする場合にクリックします。

    • 閉じる: ダイアログを閉じる場合にクリックします。

    注意:

    一般的なロギング・コンソール・ウィンドウでは、開いているすべての統合Excelワークブックのエントリが記録されます。

  • 出力レベルの設定

    ログ出力のレベルを選択するよう求められます。表C-2に、クライアント・サイド・ロギングがサポートするログ・レベルを示します。ログ・レベルは、表C-2のリストの下方向に累積されます。つまり、InformationレベルにはCriticalErrorおよびWarningレベルでログされたデータは含まれますが、Verboseレベルでログされたデータは含まれません。

    図C-4 ロギング出力レベル・ダイアログ

    この図は周囲のテキストで説明しています

    表C-2 クライアント・サイド・ロギングのレベル

    レベル 説明

    Critical

    クリティカルな情報を取得します。

    Error

    重度のエラーと例外に関する情報を取得します。

    Warning

    警告に関する情報を取得します。

    Information

    ライフ・サイクル・イベントとコントロール・フロー・イベントを取得します。

    Verbose

    アプリケーションの実行フローに関する詳細を取得します。

    Off

    ログは取得されません。これはデフォルト値です。


    注意:

    ログ出力のレベルは、指定されたロガーのすべてのリスナーに適用されます。

  • ログ出力ファイルの追加

    指定のファイルまたは形式にロギング出力を送るための、一時ロギング・リスナーを作成します。「新規一時ロギング出力ファイルの追加」ダイアログで、目的のファイル出力形式(テキストまたはXML)を選択し、ログ出力ファイルのパスとファイル名を指定します。

    図C-5 新規一時ロギング出力ファイルの追加ダイアログ

    この図は周囲のテキストで説明しています

    一時リスナーは、現在のExcelセッションのロギング出力のみを送り、ADFデスクトップ統合の構成ファイルには登録されません。Excelを終了すると、一時リスナーは削除されます。

    注意:

    「ログ出力ファイルの追加」ボタンをクリックすると、新しいリスナーが作成されます。新しいリスナーによって、ADFデスクトップ統合の構成ファイルで定義された既存のリスナー、または他の一時リスナーは置換されません。

  • 構成のリフレッシュ

    ADFデスクトップ統合の構成ファイルをリロードします。ADFデスクトップ統合の構成ファイルによって、ADFデスクトップ統合アドインで記録される情報のレベルを決定できます。

    ADFデスクトップ統合の構成ファイルの作成および構成の詳細は、「ADFデスクトップ統合の構成ファイルについて」を参照してください。

C.4.3.2 ADFデスクトップ統合の構成ファイルについて

ADFデスクトップ統合の構成ファイルは、adfdi-excel-addin.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つで、.xmlログ・ファイルが生成されます。このファイルでは、様々な情報(ThreadIdProcessIdおよびDateTimeなど)がVerboseロギング・レベルで取得されます。

例C-1 サンプル構成ファイル

<?xml version="1.0"?>
<configuration>
  <system.diagnostics>
    <sources>
      <source name="adfdi-common" switchValue="Verbose">
        <listeners>
          <add type="System.Diagnostics.XmlWriterTraceListener"
            name="adfdi-common-excel.xml"
            initializeData="c:\logs\adfdi-common-excel.xml"
            traceOutputOptions="ThreadId, ProcessId, DateTime"/>
        </listeners>
      </source>
    </sources>
  </system.diagnostics>
</configuration>

C.4.3.3 ユーザー環境変数を使用したロギングの構成方法

ADFデスクトップ統合の構成ファイルを格納するディレクトリにアクセスできないユーザーは、ユーザー環境変数の値を設定してログ・ファイルの保存場所とロギング・レベルを変更できます。ロギング・レベルとXMLログ・ファイルの場所を構成するための、2つのユーザー環境変数を追加できます。

Windowsでユーザー環境変数を追加または構成するには:

  1. Windowsの「スタート」ボタン、「コントロール パネル」の順にクリックします。
  2. 「コントロール パネル」で、「システム」「システムの詳細設定」の順にクリックします。
  3. 「システムのプロパティ」ダイアログの「詳細設定」タブで、「環境変数」をクリックします。
  4. 「環境変数」ダイアログで「usernameユーザー環境変数」入力フィールドの下方にある「新規」をクリックし、表C-3の説明に従って変数を追加します。

    表C-3 ロギングを構成するためのユーザー環境変数

    入力する変数の名前 指定する値

    adfdi-common-file

    ロギング情報を取得するXMLファイルのディレクトリ・パスおよびファイル名を定義する値。

    ここで指定するディレクトリは、adfdi-common-file変数を追加する前に存在している必要があります。生成されるログ・ファイルはXML形式です。

    adfdi-common-level

    ロギングのレベルを指定する値。有効な値は表C-2を参照してください。


  5. 「OK」をクリックします。

C.4.3.4 adfdi-commonオブジェクトに関する必知事項

adfdi-commonオブジェクトは、Microsoft .NET FrameworkのSystem.Diagnostics名前空間のTraceSourceクラスのインスタンスです。このオブジェクトを使用してログ・ファイルを生成すると、Fusion Webアプリケーションと統合するExcelワークブックでトリガーされるイベントの情報を取得できます。ログ・ファイルの場所を知るには、「情報」ダイアログの「プロパティ」タブの「ログ・ファイル」属性を確認します。

TraceSourceクラスの詳細は、Microsoft Developer Networkのドキュメントを参照してください。

C.5 ADFデスクトップ統合の一般的なエラー・メッセージと問題

ADFデスクトップ統合対応のFusion Webアプリケーションまたはワークブックを使用または構成しているとき、エラー・メッセージが表示されたり、問題が発生する場合があります。次のリストは、最も一般的なエラー・メッセージとそれらの原因および解決策を説明しています。

エラー・メッセージ: [ADFDI-00137] クライアントとサーバーのバージョンに互換性がありません。システム管理者に連絡して、クライアントとサーバーのバージョンが一致していることを確認してください。

原因: クライアントのADFデスクトップ統合のバージョンがWebアプリケーションのADFデスクトップ統合のバージョンと一致していません。

アクション: クライアントのADFデスクトップ統合をアンインストールして、Webアプリケーションと同じバージョンのADFデスクトップ統合をインストールします。ADFデスクトップ統合クライアントのインストールの詳細は、「ADFデスクトップ統合のインストール」を参照してください。

エラー・メッセージ: プログラミングによる Visual Basic プロジェクトへのアクセスは信頼性に欠けます

原因: Excelが、ADFデスクトップ統合で必要とされるように構成されていません。

処置: 「セキュリティ センター」ダイアログの「VBA プロジェクト オブジェクト モデルへのアクセスを信頼する」チェック・ボックスが選択されていることを確認します。詳細は、「ADFデスクトップ統合と協働するExcelの構成」を参照してください。

問題: ADFデスクトップ統合のインストール後、統合Excelワークブックに「Oracle ADF」タブが表示されません。

原因: ADFデスクトップ統合のアドインがExcelで有効化されていません。

アクション: Excelの「Options」ダイアログで、ADFデスクトップ統合アドインを有効にします。Excelで「Microsoft Office」ボタンをクリックし、「Excel Options」をクリックして「Excel Options」ダイアログを開きます。「Add-Ins」タブで「Manage」ドロップダウン・リストを開いてCOM Add-ins」を選択し、「Go」をクリックします。「COM Add-ins」ダイアログで、「Oracle ADF Desktop Integration Add-in for Excel」チェック・ボックスを選択し、「OK」をクリックします。

ADFデスクトップ統合のすべてのエラー・メッセージの詳細は、エラー・メッセージを参照してください。

システム管理者の場合は、『Oracle ADFアプリケーションの管理』のADFデスクトップ統合の一般的なエラー・メッセージと問題に関する項も参照する必要があります。