Interstage Application Server アプリケーション作成ガイド (CORBAサービス編)
目次 索引 前ページ次ページ

第7章 アプリケーションの開発(COBOL)> 7.2 クライアントアプリケーションのプログラミング(動的起動インタフェース)

7.2.6 リクエストの送信

 サーバアプリケーションに対してリクエストを出します。リクエストの方法として、同期送信と非同期送信の2つの方法があります。

(1)同期送

 CORBA-REQUEST-INVOKEメソッドにより、サーバアプリケーションを呼び出します。復帰値としてサーバアプリケーションの処理結果が返ります。パラメタとして、リクエストオブジェクトのオブジェクトリファレンスを指定します。

    MOVE 0 TO  FLAG. 
    CALL "CORBA-REQUEST-INVOKE" USING
         REQ
         FLAG
         ENV
         RET-VAL.

(2)非同期送

 CORBA-REQUEST-SENDメソッドにより、サーバアプリケーションを呼び出します。パラメタとして、リクエストオブジェクトのオブジェクトリファレンスを指定します。サーバアプリケーションの処理結果は、CORBA-REQUEST-GET-RESPONSEメソッドにより受け取ります。パラメタとして、リクエストオブジェクトのオブジェクトリファレンスを指定します。

  * 処理の要求
      SET CORBA-INV-NO-RESPONSE OF FLAG TO TRUE.
      CALL "CORBA-REQUEST-SEND" USING
           REQ
           FLAG
           ENV
           RET-VAL. 
  * 処理結果の受け取り
      MOVE CORBA-RESP-NO-WAIT TO  FLAG. 
      CALL "CORBA-REQUEST-GET-RESPONSE" USING
           REQ
           FLAG
           ENV
           RET-VAL. 
      IF RET-VAL = CORBA-TRUE
  * ユーザの処理
      END-IF

 CORBA-REQUEST-GET-RESPONSEでサーバアプリケーションからリクエストが完了していないことが判明した場合、再度CORBA-REQUEST-GET-RESPONSEメソッドを呼び出します。


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

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