23.2.3 開発プロセスの完了

インタフェースから対応するファイルを生成したあと,インタフェース用にインプリメンテーションを提供する必要があります。そのためには,次の手順に従ってください。

  1. インタフェースクラス用のインプリメンテーションを作成します。
  2. サーバクラスをコンパイルします。
  3. クライアントコードを書き込み,コンパイルします。
  4. サーバプログラムを起動します。
  5. クライアントプログラムを実行します。
非準拠クラスをマーシャルしようとすると,org.omg.CORBA.MARSHAL: Cannot marshal non-conforming value of class <class name>が発生します。例えば,次の二つのクラスを生成します。

// This is a conforming class
public class Value implements java.io.Serializable {
  java.lang.Object any;
  . . .
}

// This is a non-conforming class
public class Something {
. . .
}

そして,次を試行します。

Value val = new Value();
val.any = new Something();

valをマーシャルしようとするとorg.omg.CORBA.MARSHAL例外が発生します。