ヘッダーをスキップ

Oracle Application Server Integration InterConnect ユーザーズ・ガイド
10g リリース2 (10.1.2)

B15751-02
目次
目次
索引
索引

戻る 次へ

E OracleAS Integration InterConnectのトラブルシューティング

この付録では、OracleAS Integration InterConnectの使用中に発生する一般的な問題と、その解決方法について説明します。また、OracleAS Integration InterConnectの問題を診断する手順についても詳しく説明します。項目は次のとおりです。

E.1 問題と解決策

この項では、一般的な問題と解決策について説明します。項目は次のとおりです。

E.1.1 iStudioで接続できない

iStudioからリポジトリに接続できません。たとえば、「リポジトリへの接続に失敗しました」というメッセージが表示されます。

問題1

「ハブ情報」ダイアログ・ボックスに不正なハブ・データベース・パラメータが入力されています。

解決策1

iStudioでは、「ハブ情報」ダイアログ・ボックスに入力したユーザー名、パスワードおよび接続文字列を使用してリポジトリとの接続が確立されます。インフラストラクチャ・データベースとの接続に適切なハブ・データベース・パラメータ
hostname:tns_listener_port:db_sidを入力したことを確認してください。 たとえば、myhost.us.mycompany.com:1521:orclと入力します。

関連項目:

ハブ・データベース・パラメータの詳細は、第2.5.1項「新規プロジェクトの作成」を参照してください。 

問題2

リポジトリが停止しています。

解決策2

リポジトリが正常に起動していることを確認し、
$ORACLE_HOME/intergration/interconnect/repository/reposlog.txtファイルで問題を調べてください。

問題3

リポジトリがファイアウォール内で実行されています。

解決策3

特定のRMI通信ポートを使用するようにリポジトリを構成していることを確認してください。 ポート番号を、$ORACLE_HOME/integration/interconnect/repositoryにあるrepository.iniファイルのrepo_admin_portパラメータに指定します。 また、ファイアウォールでrepository.iniファイルのrepo_admin_portパラメータに指定したポート番号から始まって7つのポートを開く必要があります。

E.1.2 iStudioでのマッピング

マッピングを変更しましたが、アダプタが引き続き古い情報を使用していると思われます。

問題1

メタデータがリフレッシュされていません。

解決策1

「ファイル」→「アダプタを同期化」を選択します。これにより、更新済のメタデータがアダプタに送信されます。

解決策2

トランスフォーメーション後に次の手順で動作を変更する方法もあります。

  1. アダプタを停止します。

  2. adapter.iniファイルでパラメータagent_delete_file_cache_at_startupの値をTRUEに設定し、起動時にキャッシュされたメタデータをすべて削除します。

    このパラメータでは、起動時にキャッシュされたメタデータを削除するかどうかを指定します。メタデータ・キャッシュ、DVM表キャッシュまたは参照表キャッシュなど、いずれかのエージェント・キャッシュ方法が有効になっている場合、リポジトリからのメタデータはファイル・システムにローカルでキャッシュされます。ただし、iStudioを使用して一部のメタデータまたはDVM表を変更し、アダプタでは変更後の内容を次回の起動時に使用させる必要がある場合は、キャッシュ・ファイルを削除するか、このパラメータを再起動前にTRUEに設定できます。

  3. アダプタを再起動します。

E.1.3 iStudioでメタデータを編集できない

「編集」オプションがグレー表示されているため、iStudioでメタデータを編集できません。

問題1

リポジトリ内のメタデータが、
$ORACLE_HOME/integration/interconnect/repository/repository.iniファイルに指定されているメタデータ所有者とは異なる所有者に属している可能性があります。

解決策1

両方のリポジトリでデータの所有者が同一であることを確認します。データ型には、所有者(通常はOAI)が指定されています。ただし、これはrepository.iniファイル内で変更できます。編集は、ローカル・リポジトリ所有者が所有するデータのみ可能です。

メタデータ所有者情報は、作成時にオブジェクトとともに格納されます。リポジトリ所有者名が作成時の所有者名と一致しない場合は、「編集」ボタンがグレー表示されます。repository.iniファイルを編集し、所有者名を作成時に使用した名前に変更してリポジトリを再起動する必要があります。また、リポジトリへのiStudio接続も再確立する必要があります。

E.1.4 サブスクライブ・アダプタがハブからメッセージを受信しない

サブスクライブ・アダプタがハブ・キュー(oai_hub_queue)からメッセージを受信できません。メッセージはハブ・キューに置かれていますが、サブスクライブ・アダプタがサブスクライブしていません。

問題1

$ORACLE_HOME/integration/interconnect/adapters/adapter_name/adapter.iniファイルのapplicationagent_subscriber_nameおよびagent_message_selectorパラメータの値が、iStudioでのアプリケーション名と一致していません。

解決策1

$ORACLE_HOME/integration/interconnect/adapters/adapter_name/adapter.iniファイルのapplicationagent_subscriber_nameおよびagent_message_selectorパラメータの値が、iStudioでのアプリケーション名と一致することを確認してください。

問題2

サブスクライバ名またはアプリケーション名が20文字を超える可能性があります。

解決策2

パッチ2659228を適用してください。

E.1.5 メッセージがスポーク・アプリケーションに配信されない

アダプタがハブからメッセージを正常に受信した場合にも、メッセージの変換中やスポーク・アプリケーションへの配信中に問題が発生すると、問題が解決されてメッセージが正常に配信されるまで、アダプタは一定間隔でメッセージの再処理または再送信を試行します。これは、ほとんどの場合、スポーク・アプリケーションへの処理を必要とする他の保留中メッセージはすべて、問題のメッセージがシステムから消去されるまで配信されないことを意味します。

問題

OracleAS Integration InterConnectでは、メッセージの順序付き配信が保証されます。つまり、アダプタでメッセージの処理中に問題が発生すると、その問題が解決されてメッセージを正常に配信できるまで再送信が試行されます。これにより配信順序が変更されるため、保留中の他のメッセージはすべて配信できなくなります。

解決策1

エラー・メッセージと
$ORACLE_HOME/integration/interconnect/adapters/adapter_name/logs/ディレクトリのoailog.txtファイルを参照し、エラー・メッセージを解決してください。

解決策2

$ORACLE_HOME/integration/interconnect/adapters/adapter_name/ignoreErrorsスクリプトを使用して、問題のメッセージをシステムから削除します。ignoreErrorsスクリプトにより、特定のエラー・コードを無視するようにアダプタが再構成されます。アダプタは、特定のエラー・コードで失敗したメッセージの再送信を試行するのではなく、この種のメッセージをすべて削除します。これにより、保留中の他のメッセージを確実に処理できます。


注意:

ignoremessageスクリプトを使用すると、メッセージがシステムから完全に削除されます。 これらのメッセージはリカバリできません。 


E.1.6 OracleAS Integration InterConnectリポジトリが起動しない

OracleAS Integration InterConnectリポジトリが正常に起動せず、
$ORACLE_HOME/integration/interconnect/repository/reposlog.txtファイルにJava例外が記録されます。たとえば、「Could not register with the hub database.Please check your hub database parameters.」と記録されます。「10秒で再試行します。java.sql.SQLException: I/O例外: ネットワーク・アダプタが接続できません」というエラー・メッセージが表示されます。

問題1

$ORACLE_HOME/integration/interconnect/hub/hub.iniファイル内の情報が無効です。

解決策1

$ORACLE_HOME/integration/interconnect/hub/hub.iniファイルに適切な情報を入力してください。

[Database]

hub_username=ichub

encrypted_hub_password= encrypted_passwordでは、暗号化に
$ORACLE_HOME/integration/interconnect/bin/encryptを使用します。

hub_host=hub_host_name

hub_instance=database_sid

hub_port=tns_listsner_port

hub_use_thin_jdbc=true

[Repository Info]

repository_name=InterConnectRepository1012

問題2

ハブ・データベースにハブ・スキーマが存在しません。

解決策2

$ORACLE_HOME/integration/interconnect/repository/hubschemaスクリプトを実行し、ハブ・スキーマを作成してください。

E.1.7 データベース・アダプタがデータベースからパブリッシュされたメッセージを受信しない

パブリッシュPL/SQLプロシージャが正常に実行され、MESSAGEOBJECT表にメッセージ・オブジェクト・レコードが存在しているのに、データベースからパブリッシュされたメッセージをデータベース・アダプタが受信しません。

問題

メッセージを誤ったアプリケーションに対してパブリッシュした可能性があります。 パブリッシュPL/SQLプロシージャpub_eventorprocedure_name_metadata_owner_versionsrcAppName+partition idパラメータに入力した値が、
$ORACLE_HOME/integration/interconnect/adapters/adapter_name/adapter.iniファイルのapplicationパラメータの値と一致しません。

解決策

srcAppName+partition idパラメータに入力した値が、
$ORACLE_HOME/integration/interconnect/adapters/adapter_name/adapter.iniファイルのapplicationパラメータの値と一致することを確認してください。

E.1.8 DBアダプタがメッセージをパブリッシュしない

データベース・アダプタがメッセージをパブリッシュしません。

問題1

メッセージをOAIスキームにパブリッシュするトリガーで指定されているアプリケーション名が、adapter.iniファイルのapplicationパラメータに指定されているアプリケーション名と一致しません。

解決策1

メッセージをOAIスキーマにパブリッシュするトリガーで指定されているアプリケーション名と、adapter.iniファイルのapplicationパラメータに指定されているアプリケーション名が、同一であることを確認してください。 adapter.iniファイルのpartitionパラメータに値が指定されている場合は、トリガーでapplicationパラメータの値としてアプリケーション名を指定し、その後にpartitionパラメータの値を指定する必要があります。 また、親子関係がiStudioで作成した構造に従って正しく処理されることを確認してください。

問題2

adapter.iniファイルに指定されているdb_bridge_schema1_num_readersパラメータの値が不正です。

解決策2

adapter.iniファイルのdb_bridge_schema1_num_readersパラメータには、0(ゼロ)よりも大きい値を指定する必要があります。

E.1.9 FTPアダプタが受信メッセージをどのD3L定義にも一致できない

FTPアダプタが、受信メッセージをどのD3L定義にも一致させられないことを示すエラー・メッセージをスローし、メッセージを削除します。

問題1

ota.d3lsパラメータが空であるか、または誤ったD3Lファイルを指しています。

解決策1

ota.d3lsに有効なD3Lファイル(またはD3Lファイルのリスト)を入力してください。

問題2

D3Lヘッダーに、OracleAS Integration InterConnectのイベント・マッピングに関する適切な情報が含まれていません。

解決策2

次のことを確認してください。

E.1.10 AQアダプタがスポークAQからのメッセージを受信しない

AQアダプタが、スポークAQにエンキューされたメッセージを受信しません。

問題1

この統合点について、iStudioの「配置」タブでスポーク・キュー名を指定していません。

解決策1

スポーク・キュー名を指定します。 AQアダプタのログ・ファイルには、「timestamp:AQ Adapter: キューqueue_nameのリーダーが作成されました。」という行があります。

問題2

スポーク・キューがマルチコンシューマ・キュー(JMS項目)で、それに対して不正なコンシューマ名で接続している可能性があります。

解決策2

$ORACLE_HOME/integration/interconnect/adapters/adapter_name/adapter.iniファイルのaq_bridge_consumer_nameパラメータが適切で、メッセージがエンキューされたコンシューマの名前と一致していることを確認してください。

問題3

iStudioで定義されたメッセージ構造が、パブリッシュしようとしているメッセージと一致しません。

解決策3

iStudioで定義されたメッセージ構造が、パブリッシュしようとしているメッセージと一致していることを確認してください。

E.1.11 FTPアダプタがメッセージをパブリッシュまたはサブスクライブしない

FTPアダプタがメッセージをパブリッシュまたはサブスクライブしません。

問題1

FTPアダプタのトランスポート・プロパティが正しくない可能性があります。

解決策1

FTPアダプタのadapter.iniファイル内で、ログ・レベル・パラメータagent_log_levelの値として2を指定してください。 アダプタを再起動し、メッセージをパブリッシュまたはサブスクライブしてみます。 TransportProperties.TransportProperties()で始まるログを表示できます。 このログには、FTPアダプタのすべてのトランスポート・プロパティが名前/値ペアの形式で含まれています。 これらのプロパティの値が適切であることを確認してください。

問題2

メッセージ構造に対応するFTPアダプタについて、iStudioでパブリッシュ・イベントまたはサブスクライブ・イベントを作成していない可能性があります。 FTPアダプタは、メッセージ・データを設計時に定義されたイベントと照合できないため、パブリッシュまたはサブスクライブできません。

解決策2

iStudioで、メッセージ構造に対応するFTPアダプタ用のパブリッシュ・イベントまたはサブスクライブ・イベントを作成してください。

問題3

FTPサーバーがRFC標準に準拠していません。

解決策3

FTPサーバーがRFC標準に準拠していることを確認してください。

E.1.12 HTTPアダプタがメッセージをパブリッシュまたはサブスクライブしない

HTTPアダプタがメッセージをパブリッシュまたはサブスクライブしません。

問題1

HTTPアダプタのトランスポート・プロパティが正しくない可能性があります。

解決策1

HTTPアダプタのadapter.iniファイル内で、ログ・レベル・パラメータ
agent_log_levelの値として2を指定してください。 アダプタを再起動し、メッセージをパブリッシュまたはサブスクライブしてみます。 TransportProperties.TransportProperties()で始まるログを表示できます。 このログには、HTTPアダプタのすべてのトランスポート・プロパティが名前/値ペアの形式で含まれています。 これらのプロパティの値が適切であることを確認してください。

問題2

メッセージ構造に対応するHTTPアダプタについて、iStudioでパブリッシュ・イベントまたはサブスクライブ・イベントを作成していない可能性があります。 HTTPアダプタは、メッセージ・データを設計時に定義されたイベントと照合できないため、パブリッシュまたはサブスクライブできません。

解決策2

iStudioで、メッセージ構造に対応するHTTPアダプタ用のパブリッシュ・イベントまたはサブスクライブ・イベントを作成してください。

問題3

トランスポート・サーブレットが正しく配置されていません。

解決策3

HTTPを介してメッセージを受信し、RMIを介してHTTPレシーバに送るトランスポート・サーブレットが、正しく配置されていることを確認してください。 また、アダプタのインストール後は、adapter.iniファイルのhttp.receiver.instance_nameパラメータを変更しないでください。

問題4

adapter.iniファイルのota.send.endpointパラメータまたはiStudioで定義されている送信エンドポイントが正しくありません。

解決策4

adapter.iniファイルまたはiStudioで定義されている送信エンドポイントが正しいことを確認してください。 送信エンドポイントが特定の形式によるメッセージを予期する場合は、SenderCustomizerパラメータを使用して送信メッセージをカスタマイズできます。

E.1.13 データベース・アダプタとのCBRの問題

ProdReleaseという名前のイベントを作成しました。ルート要素名はBatchProdReleaseです。アダプタを再起動すると、次のエラーが表示されます。

「CBR式の評価中に例外が発生しました。: (ProdRelease_CO:OAI_META/V1.BatchProdRelease_CO:OAI_META/V1.Header.PlantCode == "GFL")。詳細メッセージは次のとおりです。 oracle.oai.agent.common.AgentRuntimeException: 指定された属性(BatchProdRelease_CO:OAI_META/V1)は、データ型(ProdRelease_CO:OAI_META/V1)に存在していません。」

問題

ルート要素名がイベント名の部分文字列です。

解決策

ルート要素名にイベント名の部分文字列が含まれていないことを確認してください。この場合、ルート要素名はBatchProdReleaseで、イベント名はProdReleaseです。このため、アダプタが失敗します。この問題を回避するには、ルート要素名またはイベント名を変更します。

E.1.14 Workflow構成

Oracle WorkflowをOracleAS Integration InterConnectで構成する方法

解決策

OracleAS Integration InterConnectでOracle Workflowを構成する手順は、次のとおりです。

  1. Oracle Workflowホーム・ページにナビゲートします。

  2. 「グローバル・ワークフロー・プリファレンス」をクリックします。 「グローバル・ワークフロー・プリファレンス」ページが表示されます。

  3. 「システムのステータス」が「有効」に設定されていることを確認します。

  4. http://host-name/pls/DAD location/wf_setup.check_all URLを開きます。host-nameは使用中のコンピュータの名前です。 たとえば次のようになります。

    http://workflowinstall-pc/pls/wf/wf_setup.check_all
    
    

    「設定のチェック」ページが表示されます。

  5. 「ローカル・インバウンド・エージェントのリスナー」グループで、WF_ERRORおよび
    WF_INエージェント用のリスナーをスケジュールします。 WF_ERRORエージェント用のリスナーをスケジュールするには、次の手順を実行します。

    1. 「ローカル・インバウンド・エージェントのリスナー」グループで、WF_ERRORエージェントの「作成」をクリックします。 「リスナーの編集」ページが表示されます。

    2. 「リスナーの編集」ページで、「秒」フィールドに10と入力します。

    3. 「送信」をクリックします。

      WF_ERRORエージェント用のリスナーがスケジュールされました。 同様の手順で
      WF_INエージェント用のリスナーをスケジュールします。


      注意:

      リスナーは10秒ごとに実行するように設定することをお薦めします。 レスポンス時間を短縮するには、実行間隔を長くするのではなく追加のリスナーをスケジュールします。 リスナーのスケジューリングについては、『Oracle Workflow管理者ガイド』を参照してください。 


  6. 「設定のチェック」ページの「データベースのinit.oraパラメータ」グループの下で、
    aq_tm_processesの値が1以上であることを確認します。同様に、
    job_queue_processesの値が5以上であることを確認します。

  7. 「イベント・サブスクリプション」グループで、次のイベントのサブスクリプションを作成します。

    • oracle.apps.wf.event.agent.create

    • oracle.apps.wf.event.event.create

    • oracle.apps.wf.event.subscription.create

      イベントのサブスクリプションを追加するには、「設定のチェック」ページの下部にある「サブスクリプションの追加」をクリックします。 「サブスクリプションの編集」ページが表示されます。

  8. oracle.apps.wf.event.agent.create eventのサブスクリプションを作成するには、次の値を指定します。

    1. 「システム」リストからOracle Workflowシステムを選択します。 %で検索すると登録済システムを検索できます。

    2. 「ソース・タイプ」リストから「外部」を選択します。

    3. 「イベント・フィルタ」フィールドに、サブスクリプションの作成対象であるイベントを入力します。 たとえば、oracle.apps.wf.event.agent.create eventのサブスクリプションを作成する場合は、oracle.apps.wf.event.agent.createと入力します。

    4. 「ステータス」リストから「有効」を選択します。

    5. 「ルール・データ」リストから「キー」を選択します。

    6. 「ルール関数」フィールドにwf_event_functions_pkg.receiveと入力します。

oracle.apps.wf.event.agent.createイベントのサブスクリプションが作成されました。 同様に、oracle.apps.wf.event.event.createおよびoracle.apps.wf.event.subscription.createイベントについてもサブスクリプションを作成します。 作成したサブスクリプションが「設定のチェック」ページに表示されます。 これでOracleAS Integration InterConnectによるOracle Workflowの構成は完了です。

E.2 詳細情報の入手

http://metalink.oracle.comにアクセスすると、Oracle MetaLinkからその他の解決策が提供されています。問題に対する解決策が見つからない場合は、サービス・リクエストを発行してください。

関連項目:

  • 『Oracle Application Serverリリース・ノート』(Oracle Technology NetworkのURL http://www.oracle.com/technology/documentation/
    index.htmlから入手可能)

 


戻る 次へ
Oracle
Copyright © 2006 Oracle Corporation.

All Rights Reserved.
目次
目次
索引
索引