EJB クライアント側でユーザ定義例外がcatch できない障害への対処

事象説明

    EJB サーバ側でユーザ定義例外が発生した場合に、クライアント側でその例外を認識できずにcatchできない場合、クライアント側で、サーバ側で起きたユーザ定義例外ではないエラーが発生します。

状況の確認方法


    クライアントjar もしくはクライアントのクラスパスに、サーバ側で発生しているユーザ定義例外クラスが含まれているか、また、クライアント側のリモートインタフェースの該当メソッドのthrows 句に、そのユーザ定義例外が宣言されているかを確認してください。

問題の検出方法

    ログファイルに例外が書き込まれます。

原因の特定

    サーバとクライアントで同じ例外クラスを認識できていないこと、もしくは、クライアント側のリモートインタフェースの該当メソッドのthrows 句に、そのユーザ定義例外が宣言されていないことが考えられます。

復旧方法

    クラスパスの設定を見直し、正しいjar を置いてください。もしくは、アプリケーションを正しいものに置き換えてください。


予防のための対策

    あらかじめ、クラスパスの設定が正しいかを確認してください。
    また、ユーザ定義例外について変更や追加を行なった場合は、必ずクライアントとサーバ側両方のアプリケーションを更新してください。

対象となるエラー事象

    java.rmi.UnexpectedException


関連情報

    トラブルシューティング(障害解析)