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

第2部 OLTPシステム運用編> 第8章 CORBAサービス運用コマンド

8.3 OD_or_adm

名前

 OD_or_adm − オブジェクトリファレンスの生成/削除/表示

形式

(1)オブジェクトリファレンスの生成
 OD_or_adm -c IntfID [-a ImplID] [-h HostName -p PortNum] [-s] [-L Locale|-v version]
[-x proxy_file] [-r refdata] -o file [-M system]
 OD_or_adm -c IntfID [-a ImplID] [-h HostName -p PortNum] [-s] [-L Locale|-v version]
[-x proxy_file] [-r refdata] -i service [-M system]
 OD_or_adm -c IntfID [-a ImplID] [-h HostName -p PortNum] [-s] [-L Locale|-v version]
[-x proxy_file] [-r refdata] -n name [-M system]

(2)オブジェクトリファレンスの削除
 OD_or_adm -d -i service [-M system]
 OD_or_adm -d -n name [-M system]

(3)オブジェクトリファレンスの表示
 OD_or_adm -l [-M system]

(4)オブジェクトグループの生成
 OD_or_adm [-c IntfID [-a ImplID] [-h HostName -p PortNum] [-L Locale|-v version]]
-g Group -n name [-M system]

(5)オブジェクトグループの削除
 OD_or_adm -d -n name [-M system]

(6)ネーミングコンテキストの生成
 OD_or_adm -z name [-u URLname] [-M system]

(7)ネーミングコンテキストの削除
 OD_or_adm -d -z name [-M system]

機能説明

 OD_or_admコマンドは、IntfIDで指定されたオブジェクトのオブジェクトリファレンスを管理します。また、ロードバランス用のオブジェクトグループの生成およびネーミングサービスへのオブジェクトグループの登録および削除を行います。

 本コマンドで指定可能なオプションとパラメタを以下に示します。

-c IntfID

 IntfIDで指定されたインタフェースリポジトリIDで、オブジェクトリファレンスを生成します。インタフェースリポジトリIDには、IDLで定義したモジュール、インタフェースなどの情報を識別するリポジトリID(255文字以内のASCIIコード(印字可能文字)文字列)を指定します。リポジトリIDの指定形式と各項目について以下に示します。

フォーマット:識別情報:バージョン
 フォーマット:"IDL"を指定します。
 識別情報: IDLで定義したモジュール名とインタフェース名を、"/"で区切って指定します。
 バージョン: "1.0"を指定します。バージョンは省略可能です。

-a ImplID

 インプリメンテーションリポジトリIDをインタフェースリポジトリIDと異なる識別子とした場合に指定します。OD_impl_instコマンドの-rオプションで指定した文字列を指定します。このオプションを省略すると、インプリメンテーションリポジトリIDはインタフェースリポジトリIDと同じ識別子でオブジェクトが生成されます(詳細は“OD_impl_inst”を参照してください)。

-h HostName

 リクエストを受け付けるホスト名を指定します。IPアドレスを指定することもできます。
 省略時は、自ホストが設定されます。このとき、インプリメンテーションリポジトリIDがインプリメンテーションリポジトリに登録されているかを確認し、登録されていないと異常終了します。

-p PortNum

 リクエストを受け付けるポート番号を指定します。
 省略時は、以下で指定されているポート番号が設定されます。
 SSL通信が有効である場合: configファイルの"uno_iiop_ssl_port"
 SSL通信が無効である場合: configファイルの"IIOP_port"
 なお、SSL通信の有効/無効については、OD_impl_instコマンド(-axオプション)で指定するsslパラメタの説明を参照してください。

-L Locale

 オブジェクトリファレンスのコード系を指定します。指定可能なコード系は以下のとおりです。

指定値

コード系

SJIS

ShiftJIS

EUC

EUC

UNICODE

UNICODE

UTF8

UTF8

SJISMS

Windows(R)用ShiftJIS

U90

U90

JEF_LOWER

JEFコード(英小文字)

JEF_KANA

JEFコード(カナ)

JEF_ASCII

JEFコード(ASCII)

NONE

コード情報なし

 本オプションは-vオプションと同時に指定できません。

-s

 SSL通信を行う場合に指定し、オブジェクトリファレンスにSSL情報を付加します。SSLの暗号化レベルはSSLの環境設定に従います(“odsetSSL”を参照してください)。
 省略時においても、OD_impl_instコマンドにてサーバアプリケーション登録時にSSL情報の規定値を"ON"とした場合にはSSL情報が付加されます(“OD_impl_inst”参照)。

-v version

 旧バージョンのシステムと連携する際に指定します。指定可能なバージョンは以下のとおりです。
 "1.0" 旧バージョン
 本オプションは-Lオプションと同時に指定できません。

-o file

 オブジェクトリファレンスを文字列形式で生成し、fileで指定したファイルに格納します。

-x proxy_file

 生成するオブジェクトリファレンスにInbound Proxy情報を付加する場合に指定します。proxy_fileで指定するInbound Proxy情報ファイルの形式については、“Inbound Proxy情報”を参照してください。
 本オプションは、以下の製品で指定可能です。
 − Interstage Application Server Enterprise Edition

-r refdata

 IORに格納する識別情報を文字列で指定します。識別情報はoctet型のデータですが、OD_or_admコマンドでは文字列データのみ設定できます。refdataに日本語を設定することはできません。

-i service

 オブジェクトリファレンス生成時、serviceで指定した名前でイニシャルサービスに登録します(“注意事項”参照)。

-n name

 オブジェクトリファレンス生成時、nameで指定した名前でネーミングサービスに登録します。nameには、ネーミングコンテキストを階層で指定することが可能であり、文字列表記のバインディング名の形式で指定します。文字列表記のバインディング名については、“アプリケーション作成ガイド(CORBAサービス編)”(Interstage Application Server Enterprise Editionで提供)の“文字列表記のバインディング名”を参照してください。
 存在しないネーミングコンテキストを指定すると、エラーになります。

-z name

 新たにネーミングコンテキストを作成し、ネーミングサービスに登録します。nameには、ネーミングコンテキストを階層で指定することが可能です。文字列表記のバインディング名の形式で指定します。文字列表記のバインディング名については、“アプリケーション作成ガイド(CORBAサービス編)”(Interstage Application Server Enterprise Editionで提供)の“文字列表記のバインディング名”を参照してください。新たにネーミングコンテキストを作成する例については、備考の(2)を参照してください。ネーミングコンテキストは、ネーミングサービスが起動するホストごとに最大128個まで作成できます。

-u URLname

 他ホストに存在するネーミングサービス中のネーミングコンテキストを-z nameで指定されたバインディング名で登録することが可能です。URLの指定については、“アプリケーション作成ガイド(CORBAサービス編)”(Interstage Application Server Enterprise Editionで提供)の“URLスキーマ”を参照してください。
 V3.0以降のネーミングサービスのみリンクすることが可能です。このコマンド投入時は、リンクされるネーミングサービスが動作するマシンでネーミングサービスが登録済で、かつCORBAサービスが起動されている必要があります。

-d

 オブジェクトリファレンスまたはネーミングコンテキストを削除します。ネーミングコンテキスト配下にオブジェクトリファレンスが存在する場合、エラーとなります。

-l

 イニシャルサービス(-iオプションで登録)の一覧を表示します。

-g Group

 ロードバランス用のオブジェクトグループの生成を意味する"lb"を指定します。他の各オプションは、ロードバランスオブジェクトグループにデフォルトのオブジェクトリファレンスを登録する場合に登録すべきオブジェクトリファレンスの情報を指定します。各オプションの意味は、通常のオブジェクトに対する意味と同一です。

-M system

 拡張システムを生成した場合に、運用の対象となるシステム名systemを指定します。本オプションを省略すると、デフォルトシステムでの運用が対象となります。
 本オプションは、以下の製品で指定可能です。
 − Interstage Application Server Enterprise Edition

Inbound Proxy情報

 Inbound Proxyの設定が下図のような場合に、-xオプションで指定するInbound Proxy情報ファイル(proxy_file)の形式と設定内容を以下に示します。

[形式]

 (1) Multi_FW_Mech_len = 2
 (2) FW_Mech_len       = 2 (経路A)
 (3) [proxy]
 (4) host              = host1
 (5) port              = 8002
 (6) IntfID            = IDL:Firewall/GIOPProxy:1.0
 (7) ImplID            = IDL:Firewall/InGIOPProxy:1.0
 (8) ssl               = no
 (9) locale            = EUC
 (10)[proxy]
 (11)host              = host2
 (12)port              = 8002
 (13)IntfID            = IDL:Firewall/GIOPProxy:1.0
 (14)ImplID            = IDL:Firewall/InGIOPProxy:1.0
 (15)ssl               = no
 (16)FW_Mech_len       = 1 (経路B)
 (17)[proxy]
 (18)string-IOR        = IOR:0000....

[設定内容]

設定項目

意味

設定

省略値

Multi_FW_Mech_len

ファイアウォールからサーバへの経路の数を指定します。

必須

FW_Mech_len

経路ごとのInbound Proxyの定義数を指定します。Multi_FW_Mech_lenで指定した値の個数分を記述してください。上記では(2)(16)で記述しています。

必須

[proxy]

Inbound Proxyの定義ごとにキーワードとして[proxy]と記述します。FW_Mech_lenで指定した値の個数分を記述してください。上記では、(2)のFW_Mech_lenと(3)(10)が、(16)のFW_Mech_lenと(17)が対応しています。
また、[proxy]以降には、Inbound Proxyの情報をファイアウォール側のInbound Proxyから順番に記述します。

必須

host

Inbound Proxyのホスト名を指定します。

(*)

port

Inbound Proxyのポート番号を指定します。

(*)

IntfID

Inbound ProxyのインタフェースリポジトリIDとして、プロキシサーバが定義するIDを指定します。InfoProxy for Middlewareを使用する場合は、常に"IDL:Firewall/GIOPProxy:1.0"を指定します。

(*)

ImplID

Inbound ProxyのインプリメンテーションリポジトリIDとして、プロキシサーバが定義するIDを指定します。InfoProxy for Middlewareを使用する場合は、常に"IDL:Firewall/InGIOPProxy:1.0"を指定します。

(*)

ssl

Inbound ProxyのホストとSSL通信を行う場合は、yesを指定します。yesを指定した場合、(5)(12)のportは、Inbound Proxyのホストが使用するSSL通信のポート番号を指定してください。SSLの暗号化レベルは、SSLの環境設定に従います。

(*)

no

locale

-Lオプションでコード系を指定した場合、各経路のファイアウォールに最も近いInbound Proxy(Inbound Proxy情報ファイルで各経路の最初に記述したもの)に対して、-Lオプションで指定したものと同じコード系を指定する必要があります。SJIS, EUC, UNICODE, NONEが指定可能です。なお、各経路において、ファイアウォールから2番目以降のInbound Proxyに対しては指定しないでください。

(*)

NONE

string-IOR

Inbound Proxyのオブジェクトリファレンスを文字列形式で指定する場合、文字列形式のオブジェクトリファレンスを記述します。文字列形式のオブジェクトリファレンスは、-oオプションを使用して作成することができます。なお、string-IORは、hostからlocaleまでの指定と重複できません。

(*)

*) [proxy]以降の記述は、host,port,IntfID,ImplID,ssl,localeを記述する方法と、string-IORを記述する方法があり、どちらか一方の設定が必須です。

注意事項

備考

(1)コード変換について

 Interstage 1.1からコード変換機能のサポートに際し、通信プロトコルとして、IOR1.0/IOR1.1(注)をサポートします。

注) IORとは、インタオペラブル・オブジェクト・リファレンスの略称で、ネットワークにおけるオブジェクトリファレンスのことであり、IOR1.1でコード変換がサポートされました。

 以下にコード変換機能のサポートにより追加された-Lオプションおよび-vオプションについての操作方法を示します。

1. -vおよび-Lオプションが共に指定されなかった場合
  インプリメンテーションリポジトリに登録された情報に従って、作成されます(詳細は“OD_impl_inst”を参照してください)。

2. V1.0とV1.1以降で共通に使用するオブジェクトリファレンスを作成する場合
  OD_or_adm -c IDL:ODdemo::calculator:1.0 -n ODdemo::calculator -v 1.0
注) コード変換機能は使用できません。

3. V1.1以降でコード変換を使用するオブジェクトリファレンスを作成する場合
  OD_or_adm -c IDL:ODdemo::calculator:1.0 -n ODdemo::calculator -L EUC
注1) V1.0以前のクライアントからは使用できません。
注2) このオブジェクトリファレンスは、V1.0のネーミングサービスには登録できません。

 なお、-hオプションを指定して他のホストのオブジェクトリファレンスを登録する場合、指定されたホストのデフォルトのコード系が決定できないため、-Lまたは-vオプションが必須となります。

(2)ネーミングサービスのオブジェクトリファレンスの登録について

 ネーミングサービスにネーミングコンテキストやオブジェクトリファレンスを下図のような構造で登録する場合のOD_or_admコマンドの使用例を以下に示します。

1. ObjectAの作成方法
  OD_or_adm -c xxx -n ObjectA

2. ObjectBの作成方法
  OD_or_adm -z NamingContextA
  OD_or_adm -z NamingContextA/NamingContextB
  OD_or_adm -c xxx -n NamingContextA/NamingContextB/ObjectB
注)オブジェクトやネーミングコンテキストを同時に複数作成することはできません。親のネーミングコンテキストを作成してから、子のオブジェクトまたはネーミングコンテキストを作成する必要があります。

メッセージ

 起動時に表示されるメッセージと意味を以下に示します。

Error:CORBA_ORB_init
 CORBAサービスが起動されていません。

Error:CORBA_ORB_resolve_initial_references
 イニシャルリファレンスの獲得に失敗しました。

Error:CORBA_ORB_set_initial_service
 指定されたサービスのイニシャルサービスへの登録に失敗しました。

Error:CosNaming_NamingContext_resolve
id:IDL:CORBA/StExcep/NO_IMPLEMENT:1.0
または、
Error:CosNaming_NamingContext_bind
id:IDL:CORBA/StExcep/NO_IMPLEMENT:1.0
または、
Error:CosNaming_NamingContext_bind_new_context
id:IDL:CORBA/StExcep/NO_IMPLEMENT:1.0
または、
Error:CosNaming_NamingContext_unbind
id:IDL:CORBA/StExcep/NO_IMPLEMENT:1.0
 ネーミングサービスが起動されていません。

Error:CosNaming_NamingContext_resolve_ObjectGroup
id:IDL:CORBA/StExcep/NO_IMPLEMENT:1.0
 ネーミングサービスが起動されていません。(-nオプション)

Error:delete_initial_service
 指定されたサービスのイニシャルサービスの削除に失敗しました。

Error:FJ_ImplementationRep_lookup_id
 指定されたインプリメンテーションリポジトリIDが登録されていません。

Error: admin_synch
 イニシャルサービス定義ファイルの更新に失敗しました。ファイルに書込み権限がないかディスクに空きがない可能性があります。

Error:CosNaming_NamingContext_bind
id:IDL:CosNaming/NamingContext/AlreadyBound:1.0
または、
Error:CosNaming_NamingContext_bind_new_context
id:IDL:CosNaming/NamingContext/AlreadyBound:1.0
 オブジェクト、ネーミングコンテキスト、またはオブジェクトグループの登録に失敗しました。
 ネーミングサービスにすでに登録済です。

Error:CosNaming_NamingContext_unbind
id:IDL:CosNaming/NamingContext/NotFound:1.0
 オブジェクト、ネーミングコンテキスト、またはオブジェクトグループの削除に失敗しました。
 ネーミングサービスに登録されていません。

Error:CosNaming_NamingContext_resolve
id:IDL:CORBA/StExcep/NO_IMPLEMENT:1.0
または、
Error:CosNaming_NamingContext_bind
id:IDL:CORBA/StExcep/NO_IMPLEMENT:1.0
または、
Error:CosNaming_NamingContext_bind_new_context
id:IDL:CORBA/StExcep/NO_IMPLEMENT:1.0
または、
Error:CosNaming_NamingContext_unbind
id:IDL:CORBA/StExcep/NO_IMPLEMENT:1.0
 ネーミングサービス、または対象がオブジェクトグループの場合、ロードバランス機能が未起動です。

can't open file name
 ファイルnameがオープンできません。(-oオプション)

can't write
 ファイルにオブジェクトリファレンスを書き込めません。(-oオプション)

can't find 'name' in initial_services
 サービスnameがイニシャルサービスに存在しません。

Error:CosNaming_NamingContext_bind
id:IDL:CosNaming/NamingContext/CannotProceed:1.0
または、
Error:CosNaming_NamingContext_unbind
id:IDL:CosNaming/NamingContext/CannotProceed:1.0
 以下のディレクトリの空き容量が足りないため処理を実行できません。

 C:\Interstage\ODWIN\etc\CosNaming

 /opt/FSUNod/etc/CosNaming

 /opt/FJSVod/etc/CosNaming
 必要な空き容量を確保してください。
 UNIXの場合は、以下に示す例を参考にして、CosNamingディレクトリを空き容量の大きいディスクパーティションに移動することができます。
例)

 cp -rp /opt/FSUNod/etc/CosNaming ディレクトリ名
 rm -rf /opt/FSUNod/etc/CosNaming
 ln -s ディレクトリ名 /opt/FSUNod/etc/CosNaming

 cp -rp /opt/FJSVod/etc/CosNaming ディレクトリ名
 rm -rf /opt/FJSVod/etc/CosNaming
 ln -s ディレクトリ名 /opt/FJSVod/etc/CosNaming
 さらに、以下の意味の場合もあります。
 対象のネーミングコンテキストが存在しません。対象のネーミングコンテキストのバインディングをOD_or_adm(-d -zオプション)コマンドを使用して削除し、再度ネーミングコンテキストを登録してください。

The specified character set is wrong
 コード系の設定に誤りがあります。

Multiply XXX
 オプションXXXが二重に定義されました。

Illegal option [XXX]
 パラメタなしのオプションにパラメタが指定されました。

ReferenceData is NULL
 -rオプションのパラメタが指定されていません。

filename is NULL
 -oオプションのパラメタが指定されていません。

service is NULL
 -iオプションのパラメタが指定されていません。

name is NULL
 -nオプションのパラメタが指定されていません。

host is NULL
 -hオプションのパラメタが指定されていません。

port is NULL
 -pオプションのパラメタが指定されていません。

locale is NULL
 -Lオプションのパラメタが指定されていません。

version is NULL
 -vオプションのパラメタが指定されていません。

The specified port is wrong
 ポート番号の指定に誤りがあります。

The specified version is wrong
 バージョンの指定に誤りがあります。

Specify both [-h host] and [-p port]
 [-h host]と[-p port]は同時に指定する必要があります。

Character set cannot be specified in version 1.0
 コード系はバージョン1.0では設定できません。

Failed to create Object References
 オブジェクトリファレンスの作成に失敗しました。

Failed to get locale information
 コード系の獲得に失敗しました。

Error:ISOD_LBO_create_LBG
id: IDL:CORBA/StExcep/NO_IMPLEMENT:1.0
 ロードバランス機能またはネーミングサービスが未起動です。

Error:ISOD_LBO_create_LBG
id: IDL:ISOD/LBG/BadObject:1.0
 指定したインタフェースリポジトリIDが不当です。

Error:ISOD_LBO_create_LBG
id: IDL:ISOD/LBO/AlreadyExist:1.0
 指定したオブジェクトグループの名前は、ネーミングサービスにすでに登録済です。

Error:ISOD_LBO_create_LBG
id: IDL:ISOD/LBO/NotFound:1.0
 指定したオブジェクトグループのネーミングコンテキストが登録されていないか、オブジェクトまたはオブジェクトグループとして登録されています。

Error:CosNaming_NamingContext_resolve_ObjectGroup
 指定された削除対象のオブジェクトグループの検索に失敗しました。

Error:ISOD_LBO_delete_LBG
id: IDL:ISOD/LBO/NotEmpty:1.0
 オブジェクトグループに1つ以上のオブジェクトが登録されています。

Error:ISOD_LBO_delete_LBG
id: IDL:ISOD/LBO/NO_IMPLEMENT:1.0
 ロードバランス機能またはネーミングサービスが未起動です。

Group is NULL
 -gオプションのパラメタが指定されていません。

The specified operand is wrong
 オペランドの指定に誤りがあります。

LB Group Name Failed
 オブジェクトグループ名の指定に誤りがあります。

Error:CosNaming_NamingContext_destroy
id:IDL:CosNaming/NamingContext/NotEmpty:1.0
 削除しようとしたネーミングコンテキストにオブジェクトリファレンスが存在します。オブジェクトリファレンスを削除後、ネーミングコンテキストを削除してください。

OD_or_adm:option requires an argument -- X
 Xオプションのパラメタが指定されていません。パラメタを設定してください。

Error:CORBA_ORB_string_to_object
id:IDL:CORBA/StExcep/UNKNOWN:1.0
id:IDL:CORBA/StExcep/COMM_FAILURE:1.0
 -uオプションで指定されたURL名に誤りがあります。または、リンクされるマシンでネーミングサービスが登録されていないか、CORBAサービスが起動されていない可能性があります。

URLname is NULL
 -uオプションのパラメタが指定されていません。

SSL cannot be specified in version 1.0
 -sオプションはIORのバージョンが1.0である場合は指定できません。

-s and -g option cannot be specified at once
 -sオプションと-gオプションは同時に指定できません。

invalid proxy_file
 -xオプションで指定されたファイル(proxy_file)の内容に誤りがあります。

can't open proxy_file
 -xオプションで指定されたファイル(proxy_file)がオープンできません。

-x and -g option cannot be specified at once
 -xオプションと-gオプションは同時に指定できません。

Proxy cannot be specified in version 1.0
 -xオプションは、IORのバージョンが1.0である場合は指定できません。

使用例

 OD_or_adm -l

  ImplementationRepository     IDL:FJ/ImplementationRep:1.0     (r2d2:8002:1.0:)
  FJ_LightInterfaceRepository  IDL:FJ/Repository:1.0            (r2d2:8002:1.0:)
  FJ_ORB_admin                 IDL:OM_ORB/admin:1.0             (r2d2:8002:1.0:)
  nill_oref
  NameService                  IDL:CosNaming/NamingContext:1.0  (r2d2:8002:1.0:)
  FJ_LoadBalancingOption       IDL:ISOD/LBO:1.0                 (r2d2:8002:1.0:)

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

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