サーバプログラムがcreate_POA()を実行すると,生成したPOAがスマートエージェントに登録されます。
この状態で,クライアントプログラムが静的bind()メソッドを呼び出した場合,VisiBroker ORBはプログラムのために幾つかの機能を実行し,スマートエージェントからオブジェクトインプリメンテーションの位置情報を得られます。クライアントとスマートエージェントの相互動作を図10-1に示します。
図10-1 クライアントとスマートエージェントの相互動作
. . .
PortableServer::ObjectId_var manager_id =
PortableServer::string_to_ObjectId("BankManager");
Bank::AccountManager_var =
Bank::AccountManager::_bind("/bank_agent_poa", manager_id);
. . .
. . .
Bank.AccountManager manager =
Bank.AccountManagerHelper.bind(orb,
"/bank_agent_poa", "BankManager".getBytes());
. . .