(1)例外情報の設定
IDL言語でユーザ例外が定義されていた場合について、サーバアプリケーションプログラムの例を以下に示します。
IDLマッピング
【IDL言語】
module ODsample {
    interface  exptest{
        exception testException { string reason; };
        void    op1() raises( testException ); 
    };
};これをJava言語で記述すると、以下のようになります。
【Java言語】
<インタフェース>
package ODsample; 
public interface exptestOperations{
    public void op1()
        throws ODsample.exptestPackage.testException; 
}<ユーザ例外クラス>
package ODsample.exptestPackage; 
public final class testException
    extends org.omg.CORBA.UserException
{
    public java.lang.String reason; 
    public testException(){}
    public testException( java.lang.String _reason ){ 
        reason = _reason; 
    }
}サーバアプリケーションでの処理
import org.omg.CORBA.*;
import org.omg.PortableServer.*;
import ODsample.*;
public class expServer {
    public static void main( String args[] ) {
        try {
            // ORBの前処理
                 :
            // POAオブジェクトの生成
                 :
            // Servantの生成とそのPOAへの登録
                 :
            // POAManagerの活性化
                 :
        }
        catch ( java.lang.Exception e ) {
            // エラー処理
                 :
        }
    }
}
// Servantクラス
// サーバアプリケーションのメソッド
class expServant extends exptestPOA{
    public void op1() throws ODsample.exptestPackage.testException  {
        throw new ODsample.exptestPackage.testException( "Test of UserException" );
    }
}(2)例外情報の獲得
サーバアプリケーションで例外を獲得する方法は、クライアントアプリケーションの例外処理と同様です。詳細については、“5.10 クライアントアプリケーションの例外処理”を参照してください。