JboException
には、ネットワーク全体で自身をマーシャリングする機能があります。また、ビジネス・ロジック層のNLSの処理を行い、ビジネス・ロジック層コンポーネントの1つのインスタンスを(たとえば)フランス語ユーザーと英語ユーザーが同時に使用できるようにします。
例外に、マーシャリングが必要なメンバー・データが含まれている場合は、JboException
を拡張します。シリアライズされたストリームの管理を強化する必要がある場合は、readObject
メソッドおよびwriteObject
メソッドを実装します。Javaシリアライズ・メカニズムでは、オブジェクトをシリアライズまたはシリアライズを復元するために、これらのメソッドが使用されます。次の処理を行う場合には、これらのメソッドを実装します。
たとえば、(次に示すような)MyException
というクラスがあり、memberA
とmemberB
を異なる層の間で受け渡すとします。
public class MyException extends JboException
{
int memberA;
String memberB;
...
}
次のようなコードをMyException
内に記述します。
private void writeObject(ObjectOutputStream out) throws IOException {
out.writeInt(memberA);
out.writeUTF(memberB);
}
private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException {
memberA = in.readInt();
memberB = in.readUTF();
}
Copyright © 1997, 2007, Oracle. All rights reserved.