サーバアプリケーションをCORBAサービスのインプリメンテーションリポジトリとネーミングサービスへ登録する必要があります。OD_impl_instコマンドおよびOD_or_admコマンドを使用して登録してください。
インプリメンテーションリポジトリとネーミングサービスへの登録について、以下に示します。
サーバアプリケーション情報のインプリメンテーションリポジトリへの登録
サーバアプリケーションのオブジェクトリファレンスの作成とネーミングサービスへの登録
■サーバアプリケーション情報のインプリメンテーションリポジトリへの登録
OD_impl_instコマンドを使用して、インプリメンテーションリポジトリにサーバアプリケーション情報を登録します。OD_impl_instコマンドの詳細については、「リファレンスマニュアル(コマンド編)」の「CORBAサービス運用コマンド」-「OD_impl_inst」を参照してください。
OD_impl_inst -ax defname
なお、OD_impl_instコマンド実行時に指定するCORBAアプリケーション情報定義ファイルのアプリケーション固有データには、以下のようにサーバアプリケーションが使用するリソース定義ファイルを指定する必要があります。
アプリケーション固有データ(項目名:data)はダブルクォーテーションで囲んで、"RESOURCE:[RM名:]リソース定義名"と指定してください。扱うリソースが1個の場合にはRM名を省略することが可能です。なお、アプリケーションをマルチプロセス運用する場合、thr_conc_initに1を指定してください。
rep_id = IDL:ODdemo/calculator:1.0 type = persistent mode = SYNC_END proc_conc_max = 8 thr_conc_init = 1 ior = 1.1 locale = UNICODE data = "RESOURCE:resource1"
rep_id = IDL:ODdemo/calculator:1.0 type = persistent mode = SYNC_END proc_conc_max = 8 thr_conc_init = 1 ior = 1.1 locale = UNICODE data = "RESOURCE:resource1"
また、サーバアプリケーションが複数リソースを扱う場合のdata行の書式は、以下のとおりです。
data="RESOURCE:Rmname1:defname1;Rmname2:defname2; ... ;RmnameN:defnameN"
defnameNはリソース定義名、RMnameNはリソース定義名defnameNに対応したRM名です。また、RM名は対応したリソース定義ファイルに記述されているRM名と同一である必要があります。
1つのサーバアプリケーションが複数のリソースにアクセスするためのCORBAアプリケーション情報定義ファイルの例を、以下に示します。
rep_id = IDL:ODdemo/calculator:1.0 type = persistent mode = SYNC_END proc_conc_max = 8 thr_conc_init = 1 ior = 1.1 locale = UNICODE data = "RESOURCE:RDBII:rdb_resource;Oracle_XA:ora_resource"
rep_id = IDL:ODdemo/calculator:1.0 type = persistent mode = SYNC_END proc_conc_max = 8 thr_conc_init = 1 ior = 1.1 locale = UNICODE data = "RESOURCE:RDBII:rdb_resource;Oracle_XA:ora_resource"
上記の例は、サーバアプリケーションが2つのデータベースSymfoware/RDBと、Oracleにアクセスするため、data行に2つのリソース定義ファイルを設定しています。
注意
アプリケーションをマルチプロセス運用する場合、CORBAアプリケーション情報定義ファイルのthr_conc_initに、「1」を指定してください。
複数のリソース定義ファイルを指定した定義書式により登録されたアプリケーションは、複数リソースアクセス用のXA連携用プログラムとリンクされたサーバアプリケーションである必要があります。
OD_impl_instコマンドは、サーバアプリケーション情報を削除することもできます。
削除処理の例を以下に示します。
OD_impl_inst -d -r IDL:ODdemo/calculator:1.0
■サーバアプリケーションのオブジェクトリファレンスの作成とネーミングサービスへの登録
サーバアプリケーションを他のアプリケーションからアクセス可能にするためには、目的のアプリケーションを識別するためのオブジェクトリファレンスを作成する必要があります。また、同時に作成したオブジェクトリファレンスをネーミングサービスに登録することにより、他のアプリケーションからのアクセスが可能となります。
サーバアプリケーションのオブジェクトリファレンスの作成方法とネーミングサービスへの登録方法について、以下に説明します。
OD_or_admコマンド(ORBの管理コマンド)は、オブジェクトリファレンス作成後、ネーミングサービスに登録します。
OD_or_admコマンドでの登録例と指定する情報を、以下に示します。OD_or_admコマンドの詳細については、「リファレンスマニュアル(コマンド編)」の「CORBAサービス運用コマンド」-「OD_or_adm」を参照してください。
OD_or_adm -c IDL:ODdemo/calculator:1.0 -n ODdemo::calculator