名前
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] -i service [-M system]
(2) (1)で生成したオブジェクトリファレンスの削除
OD_or_adm -d -i service [-M system]
(3) オブジェクトリファレンスの生成(ネーミングサービスに登録)
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]
(4) (3)で生成したオブジェクトリファレンスの削除
OD_or_adm -d -n name [-M system]
(5) オブジェクトリファレンスの生成(ファイルに格納)
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]
(6) オブジェクトグループの生成
OD_or_adm [-c IntfID [-a ImplID] [-h HostName -p PortNum] [-L Locale|-v version]]
-g Group -n name [-M system]
(7) (6)で生成したオブジェクトグループの削除
OD_or_adm -d -n name [-M system]
(8) ネーミングコンテキストの生成(新規作成)
OD_or_adm -z name [-M system]
(9) (8)で生成したネーミングコンテキストの削除
OD_or_adm -d -z name [-M system]
(10) バインディング名の生成(既存のネーミングコンテキストを指定したバインディング名で登録)
OD_or_adm -z name -u URLname [-M system]
(11) (10)で生成したバインディング名の削除
OD_or_adm -d -n name [-M system]
(12) (1)で生成したオブジェクトリファレンスの表示
OD_or_adm -l [-M system]
機能説明
OD_or_admコマンドは、IntfIDで指定されたオブジェクトのオブジェクトリファレンスを管理します。
また、ロードバランス用のオブジェクトグループの生成およびネーミングサービスへのオブジェクトグループの登録/削除を行います。
本コマンドで指定可能なオプションとパラメタを以下に示します。
IntfIDで指定されたインタフェースリポジトリIDで、オブジェクトリファレンスを生成します。インタフェースリポジトリIDには、IDLで定義したモジュール、インタフェースなどの情報を識別するリポジトリID(255文字以内のASCIIコード(空白を除く印字可能文字)文字列)を指定します。リポジトリIDの指定形式と各項目について以下に示します。
フォーマット:識別情報:バージョン
"IDL"を指定します。
IDLで定義したモジュール名とインタフェース名を、"/"で区切って指定します。
"1.0"を指定します。バージョンは省略可能です。
インプリメンテーションリポジトリIDをインタフェースリポジトリIDと異なる識別子とした場合に指定します。OD_impl_instコマンドの-rオプションで指定した文字列を指定します。このオプションを省略すると、インプリメンテーションリポジトリIDはインタフェースリポジトリIDと同じ識別子でオブジェクトが生成されます(詳細については、“8.1 OD_impl_inst”を参照してください)。このとき、インプリメンテーションリポジトリIDがインプリメンテーションリポジトリに登録されているかを確認し、登録されていないとエラーとなります。
リクエストを受け付けるホスト名を指定します。IPアドレスを指定することもできます。
省略時は、自ホストが設定されます。
リクエストを受け付けるポート番号を指定します。
省略時は、以下で指定されているポート番号が設定されます。
SSL通信が有効である場合:configファイルの"uno_iiop_ssl_port"
SSL通信が無効である場合:configファイルの"IIOP_port"
なお、SSL通信の有効/無効については、OD_impl_instコマンド(-axオプション)で指定するsslパラメタの説明を参照してください。
オブジェクトリファレンスのコード系を指定します。指定可能なコード系は以下のとおりです。
指定値 | コード系 |
---|---|
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オプションと同時に指定できません。
SSL通信を行う場合に指定し、オブジェクトリファレンスにSSL情報を付加します。SSLの暗号化レベルはSSLの環境設定に従います(“17.20 odsetSSL”を参照してください)。
省略時においても、OD_impl_instコマンドにてサーバアプリケーション登録時にSSL情報の規定値を”ON”とした場合にはSSL情報が付加されます(“8.1 OD_impl_inst”参照)。
旧バージョンのシステムと連携する際に指定します。指定可能なバージョンは、以下のとおりです。
"1.0":旧バージョン
本オプションは、-Lオプションと同時に指定できません。
オブジェクトリファレンスを文字列形式で生成し、fileで指定したファイルに格納します。
生成するオブジェクトリファレンスにInbound Proxy情報を付加する場合に指定します。proxy_fileで指定するInbound Proxy情報ファイルの形式については、“Inbound Proxy情報 ”を参照してください。
本オプションは、以下の製品で指定可能です。
Interstage Application Server Enterprise Edition
IORに格納する識別情報を文字列で指定します。識別情報はoctet型のデータですが、OD_or_admコマンドでは文字列データのみ設定できます。refdataに日本語を設定することはできません。
オブジェクトリファレンス生成時、serviceで指定した名前でイニシャルサービスに登録します(“注意事項”参照)。
オブジェクトリファレンス生成時、nameで指定した名前でネーミングサービスに登録します。nameには、ネーミングコンテキストを階層で指定することが可能であり、文字列表記のバインディング名の形式で指定します。文字列表記のバインディング名については、“アプリケーション作成ガイド(CORBAサービス編)”(Interstage Application Server Enterprise Editionで提供)の“文字列表記のバインディング名”を参照してください。
存在しないネーミングコンテキストを指定すると、エラーになります。
新たにネーミングコンテキストを作成し、ネーミングサービスに登録します。nameには、ネーミングコンテキストを階層で指定することが可能です。文字列表記のバインディング名の形式で指定します。文字列表記のバインディング名については、“アプリケーション作成ガイド(CORBAサービス編)”(Interstage Application Server Enterprise Editionで提供)の“文字列表記のバインディング名”を参照してください。新たにネーミングコンテキストを作成する例については、備考の(2)を参照してください。ネーミングコンテキストは、ネーミングサービスが起動するホストごとに最大128個まで作成できます。
他ホストに存在するネーミングサービス中のネーミングコンテキストを-z nameで指定されたバインディング名で登録することが可能です。URLの指定については、“アプリケーション作成ガイド(CORBAサービス編)”(Interstage Application Server Enterprise Editionで提供)の“URLスキーマ”を参照してください。
V3.0以降のネーミングサービスのみリンクすることが可能です。このコマンド投入時は、リンクされるネーミングサービスが動作するマシンでネーミングサービスが登録済で、かつCORBAサービスが起動されている必要があります。
オブジェクトリファレンス/オブジェクトグループ/ネーミングコンテキスト/バインディング名を削除します。
本オプションと同時に指定するオプションの用途について、以下に示します。
オプションの指定 | 用途 |
---|---|
-d -i service | イニシャルサービスに登録したオブジェクトリファレンスを削除します。 |
-d -n name | ネーミングサービスに登録したオブジェクトリファレンスを削除します。 |
| |
バインディング名(-z name -u URLname オプションを指定して生成したネーミングコンテキストのバインディング名)を削除します。 | |
-d -z name | ネーミングコンテキストを削除します。(注2) |
注1)オブジェクトグループを削除する場合、削除対象のオブジェクトグループ配下のオブジェクトは、デフォルト以外のすべてのオブジェクトを削除しておく必要があります。odadministerlbコマンドを使用してオブジェクトグループ配下のオブジェクトを削除してください。
注2)ネーミングコンテキストを削除する場合、削除対象のネーミングコンテキスト配下のオブジェクトリファレンスをすべて削除しておく必要があります。
-iオプションを指定してイニシャルサービスに登録したオブジェクトリファレンスの一覧を表示します。
なお、-nオプションを指定してネーミングサービスに登録したオブジェクトリファレンス、および-zオプションを指定して生成したネーミングコンテキストの一覧は、odlistnsコマンドを使用して表示してください。
ロードバランス用のオブジェクトグループの生成を意味する"lb"を指定します。他の各オプションは、ロードバランスオブジェクトグループにデフォルトのオブジェクトリファレンスを登録する場合に登録すべきオブジェクトリファレンスの情報を指定します。各オプションの意味は、通常のオブジェクトに対する意味と同一です。
拡張システムを生成した場合に、運用の対象となるシステム名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)が対応しています。 | 必須 | - |
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を記述する方法があり、どちらか一方の設定が必須です。
注意事項
イニシャルサービス(-iオプションで登録)は、イニシャルサービス定義ファイルに格納されます。イニシャルサービス定義ファイルは、サーバ固有の情報を含んでいるため、そのまま他サーバに移行することができません。他サーバへ資源移行する場合には、移行先サーバでOD_or_admコマンド(-iオプション)を実行する必要があります。資源破壊などに備えるためにも、実行スクリプトを保持することを推奨します。
ロードバランス用のオブジェクトグループの操作を行う場合は、ロードバランス機能を起動しておく必要があります。ロードバランス用のオブジェクトグループの削除時には、削除対象のオブジェクトグループ配下のオブジェクトをすべて削除しておく必要があります。odadministerlbコマンドを使用してオブジェクトグループ配下のオブジェクトを削除してください。ただし、デフォルトオブジェクトは除きます。
ネーミングコンテキストを削除する場合は、-d -zオプションを指定して削除してください。-d -nオプションは、オブジェクトリファレンス、オブジェクトグループ、およびネーミングコンテキストのバインディング名を削除する場合に指定し、ネーミングコンテキストを削除する場合には指定しないでください。
ネーミングコンテキストを削除する際に、誤って-d -nオプションを指定してネーミングコンテキストのバインディング名を削除した場合は、odrmubncnsコマンドを使用してアンバインドされたネーミングコンテキストを削除してください。
トランザクションアプリケーションでオブジェクトをネーミングサービスに手動で登録を行う場合は、以下のことに注意してください。
ImplIDに連携形態ごとに以下を指定してください。
ワークユニット種別がORBの場合 : FUJITSU-Interstage-TDLC
ワークユニット種別がWRAPPERの場合 : FUJITSU-Interstage-TDRC
オブジェクトリファレンス作成時に-hオプションでホスト名を指定する場合、小文字で設定してください。また、inithost/initial_hosts、hostsに設定するホスト名も小文字で設定してください。
オブジェクトリファレンス作成時に-nオプションで指定する名前は、オブジェクト名(IDL定義で定義したモジュール名::インタフェース名)です。
任意の名前を使用する場合も、オブジェクト名の指定が必要です。任意の名前を使用する場合は以下の例に示す、コマンドをペアで発行しなければなりません。
例
OD_or_adm -c IDL:tdsample1/INTF:1.0 -a FUJITSU-Interstage-TDLC -n tdsample1::INTF OD_or_adm -c IDL:tdsample1/INTF:1.0 -a FUJITSU-Interstage-TDLC -n 任意の名前
継承を使用している場合、-cオプションで指定するインタフェースリポジトリIDは、継承先(継承元から継承した)のインタフェースリポジトリIDを指定してください。継承元を指定した場合、クライアントアプリケーションからの呼出し先が特定できません。
コンポーネントトランザクションサービスを事前に起動する必要があります。
本製品をインストールした環境によって、本コマンドの利用権限が変わる場合があります。詳細については、“1.3 利用権限について ”を参照してください。
備考
(1)コード変換について
Interstage 1.1からコード変換機能のサポートに際し、通信プロトコルとして、IOR1.0/IOR1.1(注)をサポートします。
注意
IORとは、インタオペラブル・オブジェクト・リファレンスの略称で、ネットワークにおけるオブジェクトリファレンスのことであり、IOR1.1でコード変換がサポートされました。
コード変換機能のサポートにより追加された-Lオプションおよび-vオプションについての操作方法を以下に示します。
-vおよび-Lオプションが共に指定されなかった場合
インプリメンテーションリポジトリに登録された情報に従って、作成されます(詳細については、“8.1 OD_impl_inst”を参照してください)。
V1.0とV1.1以降で共通に使用するオブジェクトリファレンスを作成する場合
OD_or_adm -c IDL:ODdemo::calculator:1.0 -n ODdemo::calculator -v 1.0
注意
コード変換機能は使用できません。
V1.1以降でコード変換を使用するオブジェクトリファレンスを作成する場合
OD_or_adm -c IDL:ODdemo::calculator:1.0 -n ODdemo::calculator -L EUC
注意
V1.0以前のクライアントからは使用できません。
このオブジェクトリファレンスは、V1.0のネーミングサービスには登録できません。
なお、-hオプションを指定して他のホストのオブジェクトリファレンスを登録する場合、指定されたホストのデフォルトのコード系が決定できないため、-Lまたは-vオプションが必須となります。
(2)ネーミングサービスのオブジェクトリファレンスの登録について
ネーミングサービスにネーミングコンテキストやオブジェクトリファレンスを下図のような構造で登録する場合のOD_or_admコマンドの使用例を以下に示します。
ObjectAの作成方法
OD_or_adm -c xxx -n ObjectA
ObjectBの作成方法
OD_or_adm -z NamingContextA OD_or_adm -z NamingContextA/NamingContextB OD_or_adm -c xxx -n NamingContextA/NamingContextB/ObjectB
注意
オブジェクトやネーミングコンテキストを同時に複数作成することはできません。親のネーミングコンテキストを作成してから、子のオブジェクトまたはネーミングコンテキストを作成する必要があります。
メッセージ
起動時に表示されるメッセージと意味を以下に示します。
CORBAサービスが起動されていません。
イニシャルリファレンスの獲得に失敗しました。
指定されたサービスのイニシャルサービスへの登録に失敗しました。
ネーミングサービスが起動されていません。
ネーミングサービスが起動されていません。(-nオプション)
指定されたサービスのイニシャルサービスの削除に失敗しました。
指定されたインプリメンテーションリポジトリIDが登録されていません。
イニシャルサービス定義ファイルの更新に失敗しました。ファイルに書込み権限がないかディスクに空きがない可能性があります。
オブジェクト、ネーミングコンテキスト、またはオブジェクトグループの登録に失敗しました。
ネーミングサービスにすでに登録済です。
オブジェクト、ネーミングコンテキスト、またはオブジェクトグループの削除に失敗しました。
ネーミングサービスに登録されていません。
ネーミングサービスが未起動です。
または、対象がオブジェクトグループの場合、ロードバランス機能が未起動です。
ファイルnameがオープンできません。(-oオプション)
ファイルにオブジェクトリファレンスを書き込めません。(-oオプション)
サービスnameがイニシャルサービスに存在しません。
以下のディレクトリの空き容量が足りないため処理を実行できません。
C:\Interstage\ODWIN\etc\CosNaming
/opt/FSUNod/etc/CosNaming
/opt/FJSVod/etc/CosNaming
必要な空き容量を確保してください。
Solaris/Linuxの場合は、以下に示す例を参考にして、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オプション)コマンドを使用して削除し、再度ネーミングコンテキストを登録してください。
コード系の設定に誤りがあります。
オプションXXXが二重に定義されました。
パラメタなしのオプションにパラメタが指定されました。
-rオプションのパラメタが指定されていません。
-oオプションのパラメタが指定されていません。
-iオプションのパラメタが指定されていません。
-nオプションのパラメタが指定されていません。
-hオプションのパラメタが指定されていません。
-pオプションのパラメタが指定されていません。
-Lオプションのパラメタが指定されていません。
-vオプションのパラメタが指定されていません。
ポート番号の指定に誤りがあります。
バージョンの指定に誤りがあります。
[-h host]と[-p port]は同時に指定する必要があります。
コード系はバージョン1.0では設定できません。
オブジェクトリファレンスの作成に失敗しました。
コード系の獲得に失敗しました。
ロードバランス機能またはネーミングサービスが未起動です。
指定したインタフェースリポジトリIDが不当です。
指定したオブジェクトグループの名前は、ネーミングサービスにすでに登録済です。
指定したオブジェクトグループのネーミングコンテキストが登録されていないか、オブジェクトまたはオブジェクトグループとして登録されています。
指定された削除対象のオブジェクトグループの検索に失敗しました。
オブジェクトグループに1つ以上のオブジェクトが登録されています。
ロードバランス機能またはネーミングサービスが未起動です。
-gオプションのパラメタが指定されていません。
オペランドの指定に誤りがあります。
オブジェクトグループ名の指定に誤りがあります。
削除しようとしたネーミングコンテキストにオブジェクトリファレンスが存在します。オブジェクトリファレンスを削除後、ネーミングコンテキストを削除してください。
Xオプションのパラメタが指定されていません。パラメタを設定してください。
-uオプションで指定されたURL名に誤りがあります。または、リンクされるマシンでネーミングサービスが登録されていないか、CORBAサービスが起動されていない可能性があります。
-uオプションのパラメタが指定されていません。
-sオプションはIORのバージョンが1.0である場合は指定できません。
-sオプションと-gオプションは同時に指定できません。
-xオプションで指定されたファイル(proxy_file)の内容に誤りがあります。
-xオプションで指定されたファイル(proxy_file)がオープンできません。
-xオプションと-gオプションは同時に指定できません。
-xオプションは、IORのバージョンが1.0である場合は指定できません。
使用例
OD_or_adm -l ImplementationRepository IDL:FJ/ImplementationRep:1.0 (host1:8002:1.0:) FJ_LightInterfaceRepository IDL:FJ/Repository:1.0 (host1:8002:1.0:) FJ_ORB_admin IDL:OM_ORB/admin:1.0 (host1:8002:1.0:) nill_oref NameService IDL:CosNaming/NamingContext:1.0 (host1:8002:1.0:) FJ_LoadBalancingOption IDL:ISOD/LBO:1.0 (host1:8002:1.0:) |
OD_or_adm -l ImplementationRepository IDL:FJ/ImplementationRep:1.0 (host1:8002:1.0:) FJ_LightInterfaceRepository IDL:FJ/Repository:1.0 (host1:8002:1.0:) FJ_ORB_admin IDL:OM_ORB/admin:1.0 (host1:8002:1.0:) nill_oref NameService IDL:CosNaming/NamingContext:1.0 (host1:8002:1.0:) |