Interstage Application Server リファレンスマニュアル(API編)
目次 索引 前ページ次ページ

第4章 COBOLインタフェース> 4.8 ServerRequestインタフェース

4.8.5 CORBA-SERVERREQUEST-EXCEPTION

名前

 CORBA-SERVERREQUEST-EXCEPTION

形式

ENVIRONMENT DIVISION.
   CONFIGURATION SECTION.
   SPECIAL-NAMES.
     SYMBOLIC CONSTANT
     COPY SYMBOL-CONST IN CORBA.
     .
 DATA DIVISION.
  WORKING-STORAGE SECTION.
    COPY CONST IN CORBA.
    01 COPY SERVERREQUEST IN CORBA REPLACING CORBA-SERVERREQUEST BY DSI-REQUEST.
    01 COPY EXCEPTION-TYPE IN CORBA REPLACING CORBA-EXCEPTION-TYPE BY FLAGS.
    01 USER-ID USAGE POINTER.
    01 PARAM USAGE POINTER.
    01 COPY ENVIRONMENT IN CORBA REPLACING CORBA-ENVIRONMENT BY ENV.

 PROCEDURE DIVISION.
    CALL "CORBA-SERVERREQUEST-EXCEPTION" USING
          DSI-REQUEST
          FLAGS
          USER-ID
          PARAM
          ENV.

機能説明

 サーバアプリケーションのメソッドが発生するユーザ例外を設定し、クライアントへ通知します。
 サーバアプリケーションのオペレーションは、復帰する前に当関数を呼び出すことにより、エラー終了することができます。BOAには、CORBA-ORB-BOA-INIT関数で返されたオブジェクトリファレンスを、ENVには、オペレーション関数に渡されたENVを指定します。
 FLAGSには以下の値が指定できます。

CORBA-SYSTEM-EXCEPTION 標準例外
CORBA-USER-EXCEPTION ユーザ例外

 USER-IDには、例外を識別するための識別子を指定します。
 USER-IDの設定は、以下のように行います。

DATA DIVISION.
01 COPY ULONG IN CORBA REPLACING CORBA-UNSIGNED-LONG BY USER-ID-LENGTH.
01 EXCEP-ID-V PIC X(20) VALUE "IDL:INTF_A/EXC_A:1.0".

PROCEDURE DIVISION.
MOVE FUNCTION LENG(EXCEP-ID-V) TO USER-ID-LENGTH.
CALL "CORBA-STRING-SET" USING
USER-ID
USER-ID-LENGTH
EXCEP-ID-V.

 例外がパラメタをとるように指定されている場合は、PARAM(INFO)に例外の付加情報のアドレスを設定します。

復帰値

 異常終了した場合は、ENV構造体のMAJORにはCORBA-SYSTEM-EXCEPTIONが設定され、IDとMINORに詳細情報が設定されます。
 IDとMINORの意味については、"メッセージ集"の"CORBAサービスから通知される例外情報/マイナーコード"を参照してください。
 SV-REQにNULLが指定された場合、ENV構造体のMAJORにはCORBA-USER-EXCEPTIONが設定されます。


目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2007