ページの先頭行へ戻る
Interstage Application Server/Interstage Web Server リファレンスマニュアル(コマンド編)

8.2 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] -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で指定されたオブジェクトのオブジェクトリファレンスを管理します。また、ロードバランス用のオブジェクトグループの生成およびネーミングサービスへのオブジェクトグループの登録および削除を行います。

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

-c IntfID

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

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

-a ImplID

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

-h HostName

  リクエストを受け付けるホスト名(64文字以内)を指定します。IPアドレスを指定することもできます。
  省略時は、自ホストが設定されます。

-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の環境設定に従います(“24.20 odsetSSL”を参照してください)。
  省略時においても、OD_impl_instコマンドにてサーバアプリケーション登録時にSSL情報の規定値を”ON”とした場合にはSSL情報が付加されます(“8.1 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

  オブジェクトリファレンス、オブジェクトグループ、ネーミングコンテキスト、またはバインディング名を削除します。
  本オプションと同時に指定するオプションの用途について、以下に示します。

オプションの指定

用途

-d -i service

イニシャルサービスに登録したオブジェクトリファレンスを削除します。

-d -n name

ネーミングサービスに登録したオブジェクトリファレンスを削除します。

オブジェクトグループを削除します。(注1)

バインディング名(-z name -u URLname オプションを指定して生成したネーミングコンテキストのバインディング名)を削除します。

-d -z name

ネーミングコンテキストを削除します。(注2)

注1)オブジェクトグループを削除する場合、削除対象のオブジェクトグループ配下のオブジェクトは、デフォルト以外のすべてのオブジェクトを削除しておく必要があります。odadministerlbコマンドを使用してオブジェクトグループ配下のオブジェクトを削除してください。

注2)ネーミングコンテキストを削除する場合、削除対象のネーミングコンテキスト配下のオブジェクトリファレンスをすべて削除しておく必要があります。

-l

  -iオプションを指定してイニシャルサービスに登録したオブジェクトリファレンスの一覧を表示します。
  なお、-nオプションを指定してネーミングサービスに登録したオブジェクトリファレンス、および-zオプションを指定して生成したネーミングコンテキストの一覧は、odlistnsコマンドを使用して表示してください。

-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....
表8.1 設定内容

設定項目

意味

設定

省略値

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オプションが共に指定されなかった場合
      インプリメンテーションリポジトリに登録された情報に従って、作成されます(詳細については、“8.1 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     (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:)