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

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

8.2.3 サーバアプリケーションのオブジェクトリファレンスの獲得

 ネーミングサービスCOSNAMING-NAMINGCONTEXT-RESOLVEメソッドにより、これから実行したいサーバアプリケーションのオブジェクトリファレンスを取り出します。検索したいオブジェクト名を本メソッドのパラメタとして指定します。

   DATA DIVISION.
   WORKING-STORAGE        SECTION.
   01 NAME                TYPE             COSNAMING-NAME.
   01 NAME-COMPONENT      OBJECT REFERENCE COSNAMING-NAMECOMPONENT.
   01 NAME-ID             OBJECT REFERENCE CORBA-STRING.
   01 NAME-KIND           OBJECT REFERENCE CORBA-STRING.
   01 NAME-LEN            TYPE             CORBA-UNSIGNED-LONG.
   01 NAME-ID-VALUE       PIC   X(18)  VALUE     "ODdemo::calculator".
   01 NAME-KIND-VALUE     PIC   X(1)   VALUE     SPACE.

  PROCEDURE DIVISION.
     MOVE 1 TO NAME-LEN.
     INVOKE SEQUENCE-NAMECOMPONENT-001 "NEW-WITH-LENGTH" USING     NAME-LEN
                                                         RETURNING NAME.
     INVOKE COSNAMING-NAMECOMPONENT "NEW" RETURNING NAME-COMPONENT.
     INVOKE CORBA-STRING "NEW-WITH-VALUE" USING     NAME-ID-VALUE   *> オブジェクト名
                                          RETURNING NAME-ID.
     INVOKE CORBA-STRING "NEW-WITH-VALUE" USING     NAME-KIND-VALUE  *> オブジェクトタイプ
                                          RETURNING NAME-KIND.
     SET IDL-ID OF NAME-COMPONENT TO NAME-ID.
     SET KIND OF NAME-COMPONENT TO NAME-KIND.
     INVOKE NAME "SET-VALUE" USING NAME-LEN NAME-COMPONENT.
     INVOKE NAME "SET-VALUE" USING NAME-LEN
                                   NAME-COMPONENT.
* NamingServiceのresolveメソッドを発行
      INVOKE NAMING-CONTEXT "RESOLVE" USING NAME RETURNING OBJ.

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

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