エラー処理

コネクターが生成するすべてのメッセージは、BIA_COMConnector.txt という名前のメッセージ・ファイルに保管されます。(ファイル名は、LogFileName 標準コネクター構成プロパティーによって決定されます。) 各メッセージには、メッセージ番号が付けられています。メッセージ番号は、以下のように、メッセージの次に表示されます。

Message number
 Message text

コネクターは、以下の各セクションで説明するような特定のエラーを処理します。

COMProxy によって生成される COM 例外

COMProxy インターフェース・ツールがさまざまなエラーを引き起こす場合があります。例えば、COM アプリケーションがダウンしたり、COM 呼び出しが失敗を戻したりすると、COMProxy ツールは例外をスローします。

コネクターは、エラーをログに記録して FAIL コードを戻すことにより、このような COMProxy 例外を処理します。COM 呼び出しの HRESULT は、COM 例外に含まれます。デバッグを 補助するために、コネクターは HRESULT をログに記録し、VerbProcessingFailed 例外のメッセージ・フィールドに HRESULT を戻します。例外には、シーケンスにおける呼び出し失敗に関する情報も含まれます。

プロキシーおける ClassNotFound

ローダーがプロキシー・クラス名を受け取り、そのクラスのプロキシー・オブジェクトを作成しようとする際、クラスが見つからないと例外が発生します。コネクターはエラーをログに記録し、FAIL コードを戻します。ログには、見つからなかったクラス名が記載されます。

ローダーにおける InstantiationException

ローダーがプロキシー・クラス名を受け取り、そのクラスのプロキシー・オブジェクトを作成しようとする際、オブジェクト・インスタンスを作成できないと例外が発生します。コネクターはエラーをログに記録し、FAIL コードを戻します。ログには、インスタンス生成できなかったオブジェクトのクラス名が記載されます。

ファクトリーまたは接続プールのセットアップ時の InstantiationException または ClassNotFound

以下のいずれかが生じると、致命的な例外が発生します。

コネクターはエラーをログに記録し、APP_RESPONSE_TIMEOUT コードを戻します。

ローダーまたは起動側における IIlegal AccessException

コードが無効であったり、COMProxy ツールがメソッドに対して不適切にアクセス (パブリックまたはプライベート) したりすると、コネクターは例外を発生します。

コネクターはエラーをログに記録し、FAIL コードを戻します。

起動側における NoSuchMethodException

対応するプロキシー・オブジェクトに存在しないビジネス・オブジェクトに対して メソッドが指定されると、コネクターは例外を発生します。

コネクターはエラーをログに記録し、FAIL コードを戻します。

起動側における InvocationTargetException

COM アプリケーション (コネクターがビジネス・オブジェクトを交換する対象) で例外が発生すると、コネクターは例外を発生します。

コネクターはエラーをログに記録し、FAIL コードを戻します。

起動側におけるメソッド・オブジェクト内の無効な引数 (CXIgnore)

ビジネス・オブジェクトの動詞 ASI にメソッドは含まれているものの、メソッドの引数が設定されていない場合、コネクターは例外を発生します。

コネクターはエラーをログに記録し、FAIL コードを戻します。

キャストの失敗または属性タイプの間違い

プロキシー・オブジェクト・メソッドが、ビジネス・オブジェクトで指定したものと異なるデータ型を実行または戻すと、コネクターは例外を発生します。

コネクターはエラーをログに記録し、FAIL コードを戻します。

無効な動詞 ASI

コネクターに渡されるビジネス・オブジェクトの動詞 ASI が、不適切にフォーマット設定されていたり、不適切な構文を使用していたりすると、コネクターは例外を発生します。例えば、適切なメソッド・シーケンスを含まない動詞 ASI や、アクティブな動詞対して CBOH (カスタム BO ハンドラー) を指定する子ビジネス・オブジェクトなどです。

コネクターはエラーをログに記録し、FAIL コードを戻します。

Copyright IBM Corp. 2004, 2005