Oracle Application Server Integration InterConnect ユーザーズ・ガイド 10g リリース2 (10.1.2) B15751-02 |
|
この付録では、OracleAS Integration InterConnectの使用中に発生する一般的な問題と、その解決方法について説明します。また、OracleAS Integration InterConnectの問題を診断する手順についても詳しく説明します。項目は次のとおりです。
この項では、一般的な問題と解決策について説明します。項目は次のとおりです。
iStudioからリポジトリに接続できません。たとえば、「リポジトリへの接続に失敗しました」というメッセージが表示されます。
「ハブ情報」ダイアログ・ボックスに不正なハブ・データベース・パラメータが入力されています。
iStudioでは、「ハブ情報」ダイアログ・ボックスに入力したユーザー名、パスワードおよび接続文字列を使用してリポジトリとの接続が確立されます。インフラストラクチャ・データベースとの接続に適切なハブ・データベース・パラメータhostname
:tns_listener_port
:db_sid
を入力したことを確認してください。 たとえば、myhost.us.mycompany.com:1521:orcl
と入力します。
リポジトリが停止しています。
リポジトリが正常に起動していることを確認し、$
ORACLE_HOME
/intergration/interconnect/repository/reposlog.txt
ファイルで問題を調べてください。
リポジトリがファイアウォール内で実行されています。
特定のRMI通信ポートを使用するようにリポジトリを構成していることを確認してください。 ポート番号を、$
ORACLE_HOME
/integration/interconnect/repository
にあるrepository.ini
ファイルのrepo_admin_port
パラメータに指定します。 また、ファイアウォールでrepository.ini
ファイルのrepo_admin_port
パラメータに指定したポート番号から始まって7つのポートを開く必要があります。
マッピングを変更しましたが、アダプタが引き続き古い情報を使用していると思われます。
メタデータがリフレッシュされていません。
「ファイル」→「アダプタを同期化」を選択します。これにより、更新済のメタデータがアダプタに送信されます。
トランスフォーメーション後に次の手順で動作を変更する方法もあります。
adapter.ini
ファイルでパラメータagent_delete_file_cache_at_startup
の値をTRUEに設定し、起動時にキャッシュされたメタデータをすべて削除します。 このパラメータでは、起動時にキャッシュされたメタデータを削除するかどうかを指定します。メタデータ・キャッシュ、DVM表キャッシュまたは参照表キャッシュなど、いずれかのエージェント・キャッシュ方法が有効になっている場合、リポジトリからのメタデータはファイル・システムにローカルでキャッシュされます。ただし、iStudioを使用して一部のメタデータまたはDVM表を変更し、アダプタでは変更後の内容を次回の起動時に使用させる必要がある場合は、キャッシュ・ファイルを削除するか、このパラメータを再起動前にTRUEに設定できます。
「編集」オプションがグレー表示されているため、iStudioでメタデータを編集できません。
リポジトリ内のメタデータが、$ORACLE_HOME/integration/interconnect/repository/repository.ini
ファイルに指定されているメタデータ所有者とは異なる所有者に属している可能性があります。
両方のリポジトリでデータの所有者が同一であることを確認します。データ型には、所有者(通常はOAI)が指定されています。ただし、これはrepository.ini
ファイル内で変更できます。編集は、ローカル・リポジトリ所有者が所有するデータのみ可能です。
メタデータ所有者情報は、作成時にオブジェクトとともに格納されます。リポジトリ所有者名が作成時の所有者名と一致しない場合は、「編集」ボタンがグレー表示されます。repository.ini
ファイルを編集し、所有者名を作成時に使用した名前に変更してリポジトリを再起動する必要があります。また、リポジトリへのiStudio接続も再確立する必要があります。
サブスクライブ・アダプタがハブ・キュー(oai_hub_queue
)からメッセージを受信できません。メッセージはハブ・キューに置かれていますが、サブスクライブ・アダプタがサブスクライブしていません。
$ORACLE_HOME
/integration/interconnect/adapters/
adapter_name
/adapter.ini
ファイルのapplication
、agent_subscriber_name
およびagent_message_selector
パラメータの値が、iStudioでのアプリケーション名と一致していません。
$ORACLE_HOME
/integration/interconnect/adapters/
adapter_name
/adapter.ini
ファイルのapplication
、agent_subscriber_name
およびagent_message_selector
パラメータの値が、iStudioでのアプリケーション名と一致することを確認してください。
サブスクライバ名またはアプリケーション名が20文字を超える可能性があります。
パッチ2659228を適用してください。
アダプタがハブからメッセージを正常に受信した場合にも、メッセージの変換中やスポーク・アプリケーションへの配信中に問題が発生すると、問題が解決されてメッセージが正常に配信されるまで、アダプタは一定間隔でメッセージの再処理または再送信を試行します。これは、ほとんどの場合、スポーク・アプリケーションへの処理を必要とする他の保留中メッセージはすべて、問題のメッセージがシステムから消去されるまで配信されないことを意味します。
OracleAS Integration InterConnectでは、メッセージの順序付き配信が保証されます。つまり、アダプタでメッセージの処理中に問題が発生すると、その問題が解決されてメッセージを正常に配信できるまで再送信が試行されます。これにより配信順序が変更されるため、保留中の他のメッセージはすべて配信できなくなります。
エラー・メッセージと$ORACLE_HOME
/integration/interconnect/adapters/
adapter_name
/logs/
ディレクトリのoailog.txt
ファイルを参照し、エラー・メッセージを解決してください。
$ORACLE_HOME
/integration/interconnect/adapters/
adapter_name
/ignoreErrors
スクリプトを使用して、問題のメッセージをシステムから削除します。ignoreErrors
スクリプトにより、特定のエラー・コードを無視するようにアダプタが再構成されます。アダプタは、特定のエラー・コードで失敗したメッセージの再送信を試行するのではなく、この種のメッセージをすべて削除します。これにより、保留中の他のメッセージを確実に処理できます。
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例外: ネットワーク・アダプタが接続できません」というエラー・メッセージが表示されます。
$ORACLE_HOME/integration/interconnect/hub/hub.ini
ファイル内の情報が無効です。
$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
ハブ・データベースにハブ・スキーマが存在しません。
$ORACLE_HOME/integration/interconnect/repository/hubschema
スクリプトを実行し、ハブ・スキーマを作成してください。
パブリッシュPL/SQLプロシージャが正常に実行され、MESSAGEOBJECT
表にメッセージ・オブジェクト・レコードが存在しているのに、データベースからパブリッシュされたメッセージをデータベース・アダプタが受信しません。
メッセージを誤ったアプリケーションに対してパブリッシュした可能性があります。 パブリッシュPL/SQLプロシージャpub_eventorprocedure_name
_
metadata_owner
_
version
のsrcAppName+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
パラメータの値と一致することを確認してください。
データベース・アダプタがメッセージをパブリッシュしません。
メッセージをOAIスキームにパブリッシュするトリガーで指定されているアプリケーション名が、adapter.ini
ファイルのapplication
パラメータに指定されているアプリケーション名と一致しません。
メッセージをOAIスキーマにパブリッシュするトリガーで指定されているアプリケーション名と、adapter.ini
ファイルのapplication
パラメータに指定されているアプリケーション名が、同一であることを確認してください。 adapter.ini
ファイルのpartition
パラメータに値が指定されている場合は、トリガーでapplication
パラメータの値としてアプリケーション名を指定し、その後にpartition
パラメータの値を指定する必要があります。 また、親子関係がiStudioで作成した構造に従って正しく処理されることを確認してください。
adapter.ini
ファイルに指定されているdb_bridge_schema1_num_readers
パラメータの値が不正です。
adapter.ini
ファイルのdb_bridge_schema1_num_readers
パラメータには、0(ゼロ)よりも大きい値を指定する必要があります。
FTPアダプタが、受信メッセージをどのD3L定義にも一致させられないことを示すエラー・メッセージをスローし、メッセージを削除します。
ota.d3ls
パラメータが空であるか、または誤ったD3Lファイルを指しています。
ota.d3ls
に有効なD3Lファイル(またはD3Lファイルのリスト)を入力してください。
D3Lヘッダーに、OracleAS Integration InterConnectのイベント・マッピングに関する適切な情報が含まれていません。
次のことを確認してください。
name
タグがiStudioでのビジネス・オブジェクト・イベント名と一致していること。
「オブジェクト名」
フィールドが空でないこと。
object
タグが、パブリッシュ・ウィザード、サブスクライブ・ウィザード、インボーク・ウィザードまたはインプリメント・ウィザードで、「アプリケーション・ビューの定義」ウィンドウの「オブジェクト名」
フィールドの値と一致すること。
AQアダプタが、スポークAQにエンキューされたメッセージを受信しません。
この統合点について、iStudioの「配置」タブでスポーク・キュー名を指定していません。
スポーク・キュー名を指定します。 AQアダプタのログ・ファイルには、「timestamp
:AQ Adapter: キュー
queue_name
のリーダーが作成されました。」という行があります。
スポーク・キューがマルチコンシューマ・キュー(JMS項目)で、それに対して不正なコンシューマ名で接続している可能性があります。
$ORACLE_HOME
/integration/interconnect/adapters/
adapter_name
/adapter.ini
ファイルのaq_bridge_consumer_name
パラメータが適切で、メッセージがエンキューされたコンシューマの名前と一致していることを確認してください。
iStudioで定義されたメッセージ構造が、パブリッシュしようとしているメッセージと一致しません。
iStudioで定義されたメッセージ構造が、パブリッシュしようとしているメッセージと一致していることを確認してください。
FTPアダプタがメッセージをパブリッシュまたはサブスクライブしません。
FTPアダプタのトランスポート・プロパティが正しくない可能性があります。
FTPアダプタのadapter.ini
ファイル内で、ログ・レベル・パラメータagent_log_level
の値として2を指定してください。 アダプタを再起動し、メッセージをパブリッシュまたはサブスクライブしてみます。 TransportProperties.TransportProperties()
で始まるログを表示できます。 このログには、FTPアダプタのすべてのトランスポート・プロパティが名前/値ペアの形式で含まれています。 これらのプロパティの値が適切であることを確認してください。
メッセージ構造に対応するFTPアダプタについて、iStudioでパブリッシュ・イベントまたはサブスクライブ・イベントを作成していない可能性があります。 FTPアダプタは、メッセージ・データを設計時に定義されたイベントと照合できないため、パブリッシュまたはサブスクライブできません。
iStudioで、メッセージ構造に対応するFTPアダプタ用のパブリッシュ・イベントまたはサブスクライブ・イベントを作成してください。
FTPサーバーがRFC標準に準拠していません。
FTPサーバーがRFC標準に準拠していることを確認してください。
HTTPアダプタがメッセージをパブリッシュまたはサブスクライブしません。
HTTPアダプタのトランスポート・プロパティが正しくない可能性があります。
HTTPアダプタのadapter.ini
ファイル内で、ログ・レベル・パラメータagent_log_level
の値として2を指定してください。 アダプタを再起動し、メッセージをパブリッシュまたはサブスクライブしてみます。 TransportProperties.TransportProperties()
で始まるログを表示できます。 このログには、HTTPアダプタのすべてのトランスポート・プロパティが名前/値ペアの形式で含まれています。 これらのプロパティの値が適切であることを確認してください。
メッセージ構造に対応するHTTPアダプタについて、iStudioでパブリッシュ・イベントまたはサブスクライブ・イベントを作成していない可能性があります。 HTTPアダプタは、メッセージ・データを設計時に定義されたイベントと照合できないため、パブリッシュまたはサブスクライブできません。
iStudioで、メッセージ構造に対応するHTTPアダプタ用のパブリッシュ・イベントまたはサブスクライブ・イベントを作成してください。
トランスポート・サーブレットが正しく配置されていません。
HTTPを介してメッセージを受信し、RMIを介してHTTPレシーバに送るトランスポート・サーブレットが、正しく配置されていることを確認してください。 また、アダプタのインストール後は、adapter.ini
ファイルのhttp.receiver.instance_name
パラメータを変更しないでください。
adapter.ini
ファイルのota.send.endpoint
パラメータまたはiStudioで定義されている送信エンドポイントが正しくありません。
adapter.ini
ファイルまたはiStudioで定義されている送信エンドポイントが正しいことを確認してください。 送信エンドポイントが特定の形式によるメッセージを予期する場合は、SenderCustomizer
パラメータを使用して送信メッセージをカスタマイズできます。
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です。このため、アダプタが失敗します。この問題を回避するには、ルート要素名またはイベント名を変更します。
Oracle WorkflowをOracleAS Integration InterConnectで構成する方法
OracleAS Integration InterConnectでOracle Workflowを構成する手順は、次のとおりです。
http://host-name/pls/DAD location/wf_setup.check_all URL
を開きます。host-nameは使用中のコンピュータの名前です。 たとえば次のようになります。
http://workflowinstall-pc/pls/wf/wf_setup.check_all
「設定のチェック」ページが表示されます。
WF_ERROR
およびWF_IN
エージェント用のリスナーをスケジュールします。 WF_ERROR
エージェント用のリスナーをスケジュールするには、次の手順を実行します。
aq_tm_processes
の値が1以上であることを確認します。同様に、job_queue_processes
の値が5以上であることを確認します。
oracle.apps.wf.event.agent.create event
のサブスクリプションを作成するには、次の値を指定します。
oracle.apps.wf.event.agent.create event
のサブスクリプションを作成する場合は、oracle.apps.wf.event.agent.create
と入力します。
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の構成は完了です。
http://metalink.oracle.comにアクセスすると、Oracle MetaLinkからその他の解決策が提供されています。問題に対する解決策が見つからない場合は、サービス・リクエストを発行してください。
|
Copyright © 2006 Oracle Corporation. All Rights Reserved. |
|