TPBrokerでは,クライアントはサーバオブジェクトと直接接続します。一方,ORBクライアントからOTMに接続する場合は,TSCORBコネクタ経由でTSCノードに接続します。そのため,TSCORBコネクタの開始時に,サーバオブジェクトの情報を登録する必要があります。この登録には,アプリケーションプログラムの開発で定義したインタフェースやオペレーションについて記述したIDLファイルを使用します。具体的には,TSCORBコネクタの開始時にtscstartgwコマンドの-TSCIDLFileオプションでIDLファイルを指定します。なお,一つのTSCORBコネクタの開始時に,複数のIDLファイルを指定することもできます。
ORBクライアントは,IDLファイルの記述内容に従って,該当するインタフェースを持つTSCORBコネクタに接続します。なお,接続に成功したORBクライアントからのリクエストでも,登録されていないオペレーションから送信された場合は,TSCORBコネクタはそのリクエストを受け付けられません。
IDLファイルの記述内容に従って,ORBクライアントからOTMに接続する仕組みを次の図に示します。
図2-29 ORBクライアントからOTMに接続する仕組み
![[図データ]](figure/zu020700.gif)
ORBクライアントからOTMへの接続方法には,TPBrokerのスマートエージェントを使用する方法とIOR文字列を使用する方法の2とおりがあります。それぞれの接続方法について次に説明します。
- TPBrokerのスマートエージェントの使用
通常は,TPBrokerのスマートエージェント(osagent)を使用して接続を確立します。このとき,IDLファイルの記述内容に従って,オブジェクトリファレンスがosagentに登録されます。これは,クライアントがTPBrokerクライアントの場合に有効な接続方法です。
- IOR文字列の使用
IOR文字列を使用して接続を確立します。IOR文字列を使用する接続は,他ベンダのORBクライアントから接続する場合などで,osagentを使用した接続ができない場合や,osagentの負荷を軽減させる場合に有効な接続方法です。また,この接続では,osagentへのオブジェクトリファレンスの登録の抑止もできます。
この場合の接続の手順を次に示します。
- TSCORBコネクタの開始時に,tscstartgwコマンドに-TSCIORConnectオプションを指定します。このとき,同時に-TSCPortオプションも指定します。
- tscgetiorコマンドで,IOR文字列が記述されたテキストファイルを取得します。
- 2.で取得したテキストファイルを,接続するORBクライアントに配布します。
- ORBクライアントは,起動時にIOR文字列のファイルを読み込んでTSCノードに接続します。このとき,CORBAのORBクラスで提供されるstring_to_object()を使用します。
なお,IOR文字列が記述されたファイルは,TSCORBコネクタに登録したIDLファイルのインタフェース,サーバのIPアドレス,またはTSCORBコネクタの受信ポート番号を変更しないかぎり,繰り返し使用できます。そのため,2.と3.の手順は,システムの構築時に一度実施すれば,以降の接続では省略できます。