ページの先頭行へ戻る
Interstage Application Server/Interstage Web Server Java EE運用ガイド

5.13.5 その他リソースを利用する場合の手順

IJServerクラスタに定義されたリソースまたは配備されたEnterprise JavaBean以外に、ネーミングサービスで管理するリソースを独自に定義することもできます。
IJServerクラスタでローカルに管理できるリソースをカスタムリソースと呼びます。JNDI検索を指定して、IJServerクラスタプロセス外で管理されているリソースを外部リソースと呼びます。これらのリソースはInterstage管理コンソール、またはasadminコマンドで定義できます。それぞれのリソースを使用する場合の定義方法を説明します。

5.13.5.1 カスタムリソースの定義方法

IJServerクラスタに定義されたリソースまたは配備されたEnterprise JavaBean以外に、ネーミングサービスで管理するオブジェクトを独自に定義することもできます。これをカスタムリソースと呼びます。IJServerクラスタは指定されたファクトリクラスに対してgetObjectInstanceメソッドを実行してインスタンスを生成します。
カスタムリソースを定義する場合には以下を指定する必要があります。

カスタムリソースのクラスとファクトリクラスの例を以下に記載します。

カスタムリソースのクラスの例

  package com.mycompany;
  
  public class Widget implements java.io.Serializable {
      private String name;
      
      public Widget() {
      }
      
      public Widget(String name) {
          this.name = name;
      }
      
      public String getName() {
          return name;
      }
      
      public void setName(String name) {
          this.name = name;
      }
  }

ファクトリクラスの例

  package com.mycompany;
  
  import java.util.Hashtable;
  import javax.naming.Context;
  import javax.naming.Name;
  
  public class WidgetFactory implements javax.naming.spi.ObjectFactory {
      public WidgetFactory() {
      }
  
      public Object getObjectInstance(Object obj, 
                                    Name name, 
                                    Context nameCtx, 
                                    Hashtable<?, ?> environment) 
          throws Exception {
          Widget widget = new Widget("PrimePower");
          return widget;
      }
  }

上記例の場合、カスタムリソースの各プロパティに以下を指定します。

プロパティ

JNDI名

任意の名前

リソースタイプ

com.mycompany.Widget

ファクトリクラス

com.mycompany.WidgetFactory

5.13.5.2 外部リソースの定義方法

カスタムリソースと同様にIJServerクラスタに定義されたリソースまたは配備されたEnterprise JavaBean以外に、ネーミングサービスで管理するオブジェクトを独自に定義するリソースに外部リソースがあります。
外部リソースを定義する場合には以下を指定する必要があります。カスタムリソースとの違いはファクトリクラスが実装するインタフェースとJNDI検索が指定できる点です。

カスタムリソースと異なり、外部リソースは外部リポジトリで管理されたオブジェクトをネーミングサービスに登録して管理できます。例えばJNDI検索に外部リポジトリの検索に使用する「ldap://ldap.umich.edu/o=umich,c=us」などのLDAP URLを指定すると、指定した検索条件に該当するオブジェクトをネーミングサービスで管理できるようになります。