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

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

7.1.2 ネーミングサービスのオブジェクトリファレンスの獲得

 実行するオブジェクトをネーミングサービスから検索するために、ネーミングサービスのオブジェクトリファレンスが必要となります。CORBAインタフェースのオブジェクトリファレンスの取出しメソッドCORBA-ORB-RESOLVE-INITIAL-REFERENCESによりネーミングサービスのオブジェクトリファレンスを取り出します。このとき、CORBA-ORB-OBJECTID-NAMESERVICEをメソッドのパラメタとして指定します。なお、この定数は、各ORBベンダーが提供しているインクルードファイル等で定義されています。

    DATA DIVISION.
    WORKING-STORAGE SECTION.
     01 COPY COSNAMING-NAMINGCONTEXT IN CORBA REPLACING
             COSNAMING-NAMINGCONTEXT BY COS-NAMING. 

    PROCEDURE DIVISION. 
  * NamingServiceのObjectIDの設定
       MOVE FUNCTION LENG ( CORBA-ORB-OBJECTID-NAMESERVICE ) TO STRING-LENGTH. 
       CALL "CORBA-STRING-SET" USING
             TEMP-BUF
             STRING-LENGTH
             CORBA-ORB-OBJECTID-NAMESERVICE. 
  * NamingServiceのオブジェクトリファレンス獲得
       CALL "CORBA-ORB-RESOLVE-INITIAL-REFERENCES" USING
             ORB
             TEMP-BUF
             ENV
             COS-NAMING. 
  * NAMESERVICEIDに格納した領域を解放します
       CALL "CORBA-FREE" USING TEMP-BUF. 
       MOVE "CORBA-ORB-RESOLVE-INITIAL-REFERENCES" TO MESS. 
       PERFORM ENV-CHECK.

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

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