Interstage Application Server アプリケーション作成ガイド (CORBAサービス編) |
目次
索引
![]() ![]() |
第6章 アプリケーションの開発(Java言語) | > 6.10 サーバアプリケーションのプログラミング(POA概要) |
AdapterActivatorオブジェクトは、リクエストを受信時にPOAオブジェクトを生成するために使用します。POAオブジェクトが生成したオブジェクトリファレンスには、オブジェクトIDに加え、生成元POAオブジェクトを示すPOAidが埋め込まれています。クライアントからのリクエストが送られてきた際、POA idに対応するPOAオブジェクトが検索され、そのPOAオブジェクトがリクエストに対する処理を行います。もしみつからない場合、検索対象のPOAの親POAオブジェクトにAdapterActivatorオブジェクトが設定されているならば、そのAdapterActivatorオブジェクトに子POAオブジェクトの生成を依頼します。親POAにAdapterActivatorオブジェクトが設定されていない場合は、org.omg.CORBA.OBJ_ADAPTER例外がクライアントに通知されます。
AdapterActivatorオブジェクトは、ユーザが作成しPOAに登録する必要があります。
作成するAdapterActivatorクラスは、org.omg.PortableServer.AdapterActivatorクラスを継承させる必要があります。また、メソッドとしてunknown_adapter()を実装している必要があります。
【AdapterActivatorクラスの実装形式(JDK/JRE 1.1/1.2/1.3系の場合)】
class UserAdapterActivator extends org.omg.PortableServer.AdapterActivator { public boolean unknown_adapter(...){...} } |
【AdapterActivatorクラスの実装形式(JDK/JRE 1.4系の場合)】
class UserAdapterActivator extends org.omg.CORBA.LocalObject implements org.omg.PortableServer.AdapterActivator { public boolean unknown_adapter(...){...} } |
public boolean unknown_adapter( POA parent, String name ) parent : 生成するPOAの親POA name : 生成するPOAのアダプタ名
AdapterActivatorオブジェクトのunknown_adapterメソッドは、org.omg.PortableServer.POA.find_POAメソッド発行時に呼び出すことも可能です。
以下にAdapterActivatorの処理の流れを示します。
目次
索引
![]() ![]() |