その他のアプリケーションとの統合 > Windchill ESI の概要 > Windchill ESI と Oracle アプリケーションの統合 > トラブルシューティング > その他の問題の特定
  
その他の問題の特定
このセクションでは、前述のカテゴリに当てはまらない分野に関する一般的な問題とその原因について説明します。一般的な問題のリストは次のとおりです。これらのリンクをクリックすると、発生した問題に関する情報に直接アクセスできます。問題が以下のリストにない場合、または指示どおりに対策を講じても問題を完全に解決できない場合は、システム管理者に連絡してください。
ドキュメントを作成できない (Oracle Applications でドキュメントを表示できない)
Windchill ESI がアダプタタイムアウトメッセージを返す
Windchill ESI によって、Oracle Applications で 1 つ以上のビジネスオブジェクトが正常に作成されたが、失敗したと示される
Windchill PDMLink が EMS キューを購読できない
PostResult () メソッドでエラーが表示される
パブリッシングしたオブジェクトに配布ターゲットが割り当てられていない
前回のパブリッシング以降、変更されていない
TIBCO BusinessWorks EMS や Windchill、またはいずれのシステムにも接続できない
ESI トランザクションログおよび EAI ログを確認すると、Windchill ESI からオブジェクトをパブリッシングした際に障害が発生しており、パブリッシングしたオブジェクトの横にエラーメッセージが表示される
マスター - 子の属性間のコンフリクトへの応答
TIBCO アダプタが ESI トランザクションでタイムアウトになる
ESI レスポンスメタ情報ファイルのエラーメッセージが表示される
Windows サーバーで ADB Agent が起動しない
エンタープライズトランザクションログでパブリッシングの状態が "保留中" のままである
プロモーションリクエストによってビジネスオブジェクトのセットをプロモートすると、それらの各オブジェクトについて RTM ワークフローが作成される。
ビジネスオブジェクトをプロモートしたときに生成される ESI レスポンスファイルに ID 以外のプロモーションリクエストの情報が含まれない。
プロセスアーカイブを開始するときに、Tibco BusinessWorks Designer で「Cannot create Transport」および「Process Definition Load」のエラーが発生する
BusinessWorks を設定するには、以下の手順に従います。
1. 次のファイルをバックアップします。
<<TibcoHome>>/designer/<<version>>/bin/designer.tra
2. テキストエディタで次のファイルを開きます。
<<TibcoHome>>/designer/<<version>>/bin/designer.tra
3. 次の文字列をサーチします。
tibco.env.CUSTOM_CP_EXT
4. 見つかった文字列を次の文字列で置換します。
tibco.env.CUSTOM_CP_EXT %RV_HOME%/lib/tibrvj.jar:%RV_HOME%/lib:%RV_HOME%/lib/64:
* 
パスにその他のフォルダが含まれている場合もあります。これらのエントリは、文字列を置換する際に変更しないようにしてください。
5. 次の文字列をサーチします。
tibco.env.CUSTOM_LIB_PATH
6. 見つかった文字列を次の文字列で置換します。
tibco.env.CUSTOM_LIB_PATH %RV_HOME%/lib:%RV_HOME%/lib/64:
* 
パスにその他のフォルダが含まれている場合もあります。これらのエントリは、文字列を置換する際に変更しないようにしてください。
7. designer.tra を保存して閉じます。
8. TIBCO Designer を開いて、プロセスアーカイブを開始します。
ドキュメントを作成できない (Oracle Applications でドキュメントを表示できない)
Oracle Applications の API の制限により、Windchill ESI では Oracle Applications へのドキュメント (添付資料) のパブリッシングをサポートしていません。
Windchill ESI がアダプタタイムアウトメッセージを返す
アダプタの設定が間違っている。
ESITarget が無効である。
アダプタのインスタンスが動作していない。
Oracle Applications サーバーが利用できない状態にある。
アダプタと Oracle Applications の間でネットワークが輻輳している。
* 
この問題を解決するには、Windchill ESI 管理者の支援が必要になる場合があります。
Windchill ESI によって、Oracle Applications で 1 つ以上のビジネスオブジェクトが正常に作成されたが、失敗したと示される
アダプタの設定が間違っている。
Windchill ESI によりオブジェクトは正常にパブリッシングされたが、Oracle Applications から後続のログテーブルメッセージが返されるのを待っているときにタイムアウトになった。
* 
この問題を解決するには、Windchill ESI 管理者の支援が必要になる場合があります。
Windchill PDMLink が EMS キューを購読できない
以下の原因が考えられます。
Windchill ESI サービスが正常にインストールされていない。
EMS サーバーが機能していない。
Windchill メソッドサーバーと EMS サーバーの間でネットワークエラーが発生した。
Windchill Adapter EMS の設定が間違っている。
Windchill ESI のプリファレンスが、1 つ以上の間違った EMS キュー名、EMS キューユーザー、または EMS キューパスワードを指定している。
* 
この問題を解決するには、Windchill ESI 管理者の支援が必要になる場合があります。
PostResult () メソッドでエラーが表示される
以下の原因が考えられます。
パブリッシングするデータに問題がある。
1 つ以上の必要な TIBCO コンポーネントがオフラインになっている。
Oracle Applications がオフラインになっている。
TIBCO Adapter for Oracle Applications が正しく設定されていない。
Windchill ESI サービスが JMS キューに対する読み込み、または書き込みができない。これはWindchill PDMLink が EMS キューを購読できないと同じ原因です。
Windchill PDMLink においてデータベースエラーが発生した。
Windchill ESI ミドルウェアのプログラミングエラーによって、PostResult RPC リクエストが正しくフォーマットされなかった。
* 
この問題を解決するには、Windchill ESI 管理者の支援が必要になる場合があります。
パブリッシングしたオブジェクトに配布ターゲットが割り当てられていない
以下の原因が考えられます。
Windchill ESI のプリファレンス
「配布ターゲットファインダー」が
"com.ptc.Windchill.esi.tgt.ESIRootInheritTargetFinder" に設定されているため、オブジェクトが
配布ターゲット割当をルートオブジェクトから継承している。
オブジェクトが BOM にあるコンポーネントであり、親アセンブリまたは親 BOM から配布ターゲット割当を継承するようになっている。
配布ターゲットを割り当てる前にオブジェクトをパブリッシングしようとした。
すべての配布ターゲット割当を除去した後にオブジェクトをパブリッシングしようとした。
前回のパブリッシング以降、変更されていない
以下の原因が考えられます。
Windchill ESI の「作業版数をチェック」プリファレンスが「いいえ」に設定されており、パブリッシングするオブジェクトの作業版数だけが変更されている。
前回のパブリッシング以降、データが変更されなかった。
オブジェクトに関連付けられているすべての配布ターゲットに対してオブジェクトがすでに正常にパブリッシングされている。
新しい配布ターゲット割当をオブジェクトに追加した後、すでにパブリッシングされているそのオブジェクトをパブリッシングしようとした。
TIBCO BusinessWorks EMS や Windchill、またはいずれのシステムにも接続できない
以下の原因が考えられます。
EMS サーバーが正しく設定されていないことが原因と考えられます。EMS サーバーの名前を「localhost」と指定すると、そのサーバーは、動作しているボックス上でのみ認識されます。ほかのマシンからは JMS サーバーに接続できません。EMS サーバー「localhost」に接続するように設定されているアプリケーションは、アプリケーションが配置されている同じマシン上で動作している EMS サーバーを検出しようとし、サーバーを検出できないとエラーを返します。サーバー名にマシン名を指定すると、ほかのマシンから EMS サーバーに接続できます。
factories.conf ファイルの QueueConnectionFactory に関連付けられた url プロパティを tcp://<マシン名>:7222 に設定します。
ここで <マシン名> は EMS サーバーが動作するマシンです。
- ESI をどこで実行しているかに応じて、BW Engine、TIBCO Designer、または TIBCO Administrator で、グローバル変数 ESIJMS\JNDIContextURL を = tibjmsnaming://<EMS サーバーが実行されているマシン名>:7222 に設定します。
この EMS サーバーがどこにあるかは無関係です。たとえば、Windchill と同じボックス、ミドルウェアエンジンと同じボックス、またはまったく別のボックスに配置されていても構いません。上記の値が正しく設定されているかぎり (また、マシンが同じネットワーク上にあるかぎり)、Windchill PDMLink およびミドルウェアは適切な EMS サーバーに接続できます。
どのマシンおよびユーザーが EMS サーバーに接続しているかを調べるには、EMS 管理ツールで以下のコマンドを指定します。
>show connections
どのマシンからどのユーザーが接続しているかが表示されます。詳細については、TIBCO Enterprise for EMS のドキュメンテーションを参照してください。
ESI トランザクションログおよび EAI ログを確認すると、Windchill ESI からオブジェクトをパブリッシングした際に障害が発生しており、パブリッシングしたオブジェクトの横にエラーメッセージが表示される
パブリッシングしたオブジェクトの横に表示されるエラーメッセージは次のとおりです。
Input Data Invalid
このエラーは、データがアダプタに届いていないことを示しています。アダプタアクティビティを呼び出すときに、アダプタのスキーマ検証に失敗しました。
Oracle Applications では、アダプタにデータを送信する前に、相互参照が (ESIORALookup.properties ファイルから) 設定される値もあれば、デフォルト値が (ESIORADefault.properties ファイルから) 設定される値もあります。これらのプロパティファイルが正しく設定されていない場合 (たとえば、BOM 用途の値が空であったり、テンプレート ID が一致していない場合)、アダプタに空のデータが渡されて、アダプタアクティビティが上記の例外が生じます。適切に値が設定されていない要素を正確に知るには、ESI 管理者がプロセスエンジンログを参照する必要があります。例外メッセージに要素名と検証エラーの内容が記述されています。
マスター - 子の属性間のコンフリクトへの応答
Oracle Inventory は、一部のアイテム属性をマスター組織レベルまたは子組織レベルで管理できるように設定できます。ESI によりアイテムがパブリッシングされ、属性の管理の設定値と矛盾する形でアイテム属性の設定が試行される場合は、Oracle Item Open Interface によりエラーが返されます。以下のテキストが含まれているエラーメッセージが表示されます。このテキストの後には、エラーの原因となっている属性のリストが続きます。
Master - Child Conflict in one of these Attributes:
このメッセージは、ESI のパブリッシング動作により、マスター組織によって管理される子組織でアイテム属性の設定が試行され、子アイテムの属性値がマスターアイテムの属性値と矛盾していることを示しています。
この問題を解決するには、属性管理の設定値を確認して、コンフリクトの内容を明らかにする必要があります。子アイテムの作成に使用されているアイテムテンプレートがアイテム属性を不正なデフォルト値に設定している可能性があることに注意してください。属性管理の設定、およびアイテムテンプレートの詳細については、Oracle Inventory User's Guide の「Item Setup and Control」の章を参照してください。
TIBCO アダプタが ESI トランザクションでタイムアウトになる
ERP への接続が切断された後に TIBCO アダプタがタイムアウトする場合は、接続のステータスを確認し、アダプタを再起動します。
Windchill Enterprise Systems Integration for Oracle Applications を使用している場合に、10 文字の制限を超えている変更通知番号を使用して変更通知がパブリッシングされると、TIBCO アダプタ "MasterConfiguration" は停止します。
この問題を解決するには、.ldr の拡張子を持つ元帳ファイルを ESI TIBCO インストールディレクトリ内の次の 2 つのフォルダからクリアします。
1. <Install_Home>\tibco\bw\5.13\
2. <Install_Home>\tibco\tra\domain\<DOMAIN_NAME>\application\Oracle_Apps\ledger
* 
元帳ファイルをクリアするには、アダプタをすべて停止する必要があります。
ESI レスポンスメタ情報ファイルのエラーメッセージが表示される
「新規配布ターゲット」または「配布ターゲットを編集」ウィンドウで「完了」をクリックすると、ESI レスポンスメタ情報ファイルに関するエラーメッセージが表示されます。
この原因は、配布ターゲットの「ESI レスポンスメタ情報のファイルパス」属性に指定した値に以下のような問題があるためです。
ファイルのパスが存在していない。
ファイルの内容が土台となるスキーマに従っていない (標準では、スキーマは ESIResponseMetaInformation.xsd ファイルに定義されています)。
ファイルの内容が無効である。たとえば、ファイル内の MapInformation 要素が存在しない Map 要素を参照している。ファイルの内容が無効であると見なされる理由はほかにもいろいろあります。
ファイル内の少なくとも 1 つの Map 要素に関連付けられた ID 属性がすでにその Map 要素と同一でない別の Map 要素で使用されている。これは、たとえば (作成中または編集中の) 配布ターゲットが特定の ESI レスポンスメタ情報ファイルを指すようにして、グローバル属性を追加できるようにその部品の Map 要素を修正したのに、ID 属性が ESIPart という値のままであり、別の配布ターゲットがデフォルトで提供されている ESI レスポンスメタ情報ファイルをすでに指している場合に発生します。
Windows サーバーで ADB Agent が起動しない
次のエラーメッセージが表示されます。
The ordinal 3823 could not be located in dynamic link library LIBEAY32.dll
この問題を解決するには、以下のコマンドを実行します。
1. MOVE /Y <Tibco_Home>/adapter/sdk/6.0/bin/libeay32.dll <Tibco_Home>/adapter/sdk/6.0/bin/libeay32_bk.dll
2. MOVE /Y <Tibco_Home>/adapter/sdk/6.0/bin/ssleay32.dll <Tibco_Home>/adapter/sdk/6.0/bin/ssleay32_bk.dll
3. COPY /Y <Tibco_Home>/tibrv/8.4/bin/libeay32.dll <Tibco_Home>/adapter/sdk/6.0/bin/libeay32.dll
4. COPY /Y <Tibco_Home>/tibrv/8.4/bin/ssleay32.dll <Tibco_Home>/adapter/sdk/6.0/bin/ssleay32.dll
エンタープライズトランザクションログでパブリッシングの状態が "保留中" のままである
以下の原因が考えられます。
JMS サーバー tcp://<JMSServer>:7222 への接続に失敗した。
これは JMS サーバーが到達不可能である場合、または、ホスト名が正しい IP アドレスに解決されない場合に発生します。tibjms.jar ファイルのバージョンが正しくない場合にもこの問題は発生します。この問題を解決するには、Windchill サーバーの tibjms.jar ファイルで、TIBCO サーバー上の正しいバージョンの JMS を使用していることを確認します。
1. Windchill サーバーからコマンドウィンドウを開きます。
2. Windchill メソッドサーバーログに記録された文字列をそのまま正確に使用して、ping <JMSServer> を実行します。
3. ping リクエストが失敗する場合は、ping <JMSServer_IP> を実行します。
4. ping リクエストが成功した場合は、表示された IP アドレスを使用します。または、次の項目を %Windir%\System32\drivers\etc\hosts ファイルに追加します: <JMSServer_IP> <JMSServer>
5. ping リクエストが失敗し続ける場合は、ネットワーク管理者に連絡してください。
DataResponse キューへの接続に失敗した。
これが問題の原因であることを確認するには、JMS サーバーに接続して、DataResponse キューが作成されており、WCESI ユーザーが DataResponse キューに対する送信権限を持つことを確認します。DataResponse キュー名の前にアスタリスク (*) が表示されている場合は、一時キューであるため、キューを作成する必要があります。この問題は、EAR を手動で展開した場合に発生することがあります。この問題を解決するには、JMS 管理ウィンドウで以下のコマンドを実行します。
1. Create queue <DataResponse>
2. Setprop queue <DataResponse> secure
3. Grant queue <DataResponse> <EAIUser> receive
4. Grant queue <DataResponse> <WCESIUser> send
5. Setprop factory QueueConnectionFactory url=tcp://<JMSServer>:7222
6. Commit
プロセスアーカイブが DataResponse キューに接続されていない。
JMS 管理ウィンドウを開いて、DataResponse キューがプロセスアーカイブによって購読されていることを確認します。手動展開時には、しばしばこの手順が省略されてエラーの要因となります。DataResponse キューが購読されていない場合、「TIBCO Administrator」 > 「Application Management」 > 「Application Name」 > 「Configuration」 > 「Deployment Name」 > 「Advanced」 > 「ESIJMS/DataResponseQueue」の順に移動して、DataResponseQueue の値を確認します。
1 人の WCESI ユーザーだけが EMS サーバーに接続されている。TIBCO EMS 管理ツールの「Show connections」で確認します。
ClientID (BW-ESIMaster_JMSConnection-queue-<アプリケーション名>-Process_Archive) を持つ ESISYS 接続の数は、設定した ERP インスタンスの数と等しいはずです。そうでない場合、プロセスアーカイブを実行する追加のインスタンスが ESI レスポンスメッセージを消費している可能性があります。TIBCO EMS 管理ツールの「Show connections」で ESISYS 接続の数を確認します。
すべての接続が現在のテストスイートの TIBCO または Windchill サーバーからであり、以前のテストスイートまたは不明のマシンからの接続がないことを確認します。そうでない場合、プロセスアーカイブを実行する追加のインスタンスが ESI レスポンスメッセージを消費している可能性があります。
Windchill とプロセスアーカイブが同じ JMS キューに接続されている。TIBCO EMS 管理ツールの「Show queues」で確認します。
com.ptc.windchill.esi.Result キューの受信者が 1 つしかない。TIBCO EMS 管理ツールの「Show queues」で確認します。
キューにメッセージが残っている。TIBCO EMS 管理ツールの「Show queues」で確認します。
配布ターゲットの作成時に指定された DSN 属性の値が、所定の Oracle Applications インスタンスで MICU の実行時に指定された該当する値と一致していない。この場合、Windchill ESI サービスが ESI レスポンスメッセージを存在しない EMS キューに格納しようとするため、ESI トランザクションの状態が保留中のままになります。
プロモーションリクエストによってビジネスオブジェクトのセットをプロモートすると、それらの各オブジェクトについて RTM ワークフローが作成される。
これは、「プロモーションリクエストをパブリッシング」プリファレンスの値が「いいえ」の場合に起きます。プロモーションリクエスト内のオブジェクトが 1 つの RTM ワークフローでパブリッシングされるようにするには、このプリファレンスを「はい」に設定します。
ビジネスオブジェクトをプロモートしたときに生成される ESI レスポンスファイルに ID 以外のプロモーションリクエストの情報が含まれない。
これは正常な動作です。プロモーションリクエストのほかの属性を別の XML 要素として ESI レスポンスとともに送信するには、ESI レスポンスメタ情報ファイルを適切に設定します。