プロキシー・サーバーのカスタム・アドバイザーの作成

以下のステップを使用して、カスタム・アドバイザーを作成し、プロキシー・サーバーにデプロイします。 カスタム・アドバイザー・ポリシーを使用すると、ターゲット・アプリケーション・サーバーの可用性をより具体的に判別できるようになります。 カスタム・アドバイザーとは、アプリケーション・サーバーの可用性についての情報をプロキシー・サーバー選択コードに提供するようにプロキシー・サーバー内で動作するように作成された Java™ コード・モジュールです。

このタスクについて

以下のステップを実行して、プロキシー・サーバーのカスタム・アドバイザーを作成し、デプロイします。

手順

  1. カスタム・アドバイザー・コードを作成します。
    カスタム・アドバイザーは Java 言語で書き込まれます。カスタム・アドバイザーは、WebSphere® Application Server に含まれている proxy.jar ファイルの com.ibm.wsspi.advisor.AbstractCustomAdvisor クラスを拡張します。カスタム・アドバイザーは AbstractCustomAdvisor クラスの定義済みメソッドを使用して、アドバイザーについての情報を獲得します。 また、カスタム・アドバイザーは以下のエレメントも実装する必要があります。
    • CustomAdvisorConfigObject オブジェクトを受け入れて super(caConfigObject) メソッドを呼び出す、以下のようなコンストラクター・メソッド。
      public AbstractHttpProxyCustomAdvisor(CustomAdvisorConfigObject caConfigObject) {
      				super(caConfigObject);
      	}
    • AdvisableServer オブジェクトを受け入れる、以下のような isUsable() メソッド。
      public boolean isUsable(AdvisableServer aServer) throws CustomAdvisorException;
    initialize メソッドの呼び出しは、AbstractCustomAdvisor の構成の後で、isUsable メソッドが呼び出される前に行われます。このプロセスによって、基底クラスの初期化が完了した後で、isUsable メソッドが呼び出される前に、カスタム・アドバイザーは追加のステップを実行することができるようになります。これにより、initialize メソッドが確実に一度だけ呼び出されるようになります。 オーバーライドされた場合、initialize() メソッドは super.intitialize メソッドを呼び出す必要があります。例えば、以下のようになります。
    protected void initialize() {
        		super.initialize();
        }
    必須ルーチンおよびカスタム・アドバイザーで使用可能なその他のメソッドについて詳しくは、インフォメーション・センターのアプリケーション・プログラミング・インターフェース (API) の参照セクションを参照してください。 インフォメーション・センターのナビゲーションから、「参照」セクションにスクロールして、「API - アプリケーション・プログラミング・インターフェース (APIs - Application Programming Interfaces)」をクリックします。製品 API 仕様のリストが、アルファベット順に表示されます。
    カスタム・アドバイザーを作成する際に、考慮する必要がある例外クラスが 2 つあります。
    • CustomAdvisorException は、カスタム・アドバイザーの isUsable メソッドで作成することができ、AbstractCustomAdvisor に対して、カスタム・アドバイザーが次のアドバイザー・サイクルまで isUsable メソッドを再度呼び出してはならないことを通知します。
    • NoLogConfiguredException は、カスタム・アドバイザーに関してロギング・ファイルが構成されていないが、ロギングが有効になっている場合に、AbstractCustomAdvisor によって作成されます。

    httpcustomadvisor.jar ファイルは、カスタム・アドバイザーのサンプルとして使用できます。 このファイルには、com.ibm.wsspi.advisor.AbstractCustomAdvisor を拡張し、isUsable() および initialize() メソッドを実装する AbstractHttpProxycustomAdvisor.java クラスが含まれています。

    サンプル httpcustomadvisor.jar ファイル:
    <advisor-context>                                                      
    <description>Webbsphere Proxy Demo HTTP Advisor Context</description>  
    <display-name>Webbsphere Proxy Demo HTTP Advisor Context</display-name>
    ?                                                                      
    <advisor>                                                              
    <advisor-name>WebsphereProxyDemoHttpAdvisor</advisor-name>             
    ?                                                                      
    <advisor-class>                                                        
    com.ibm.ws.proxy.demo.customadvisor.http.HttpProxyCustomAdvisor        
    </advisor-class>                                                       
    <description>Demo Websphere Proxy Http Advisor                         
    Implementation</description>                                           
    <display-name>Demo Websphere Proxy Http Advisor</display-name>         
    </advisor>                                                             
    </advisor-context>  
  2. カスタム・アドバイザー・コードをコンパイルします。 カスタム・アドバイザー用の Java ソース・コードを作成したあとで、WebSphere Application Server に含まれている AbstractCustomAdvisor コードを使用して、これをコンパイルする必要があります。com.ibm.wsspi.advisor パッケージの abstract custom advisor クラスにアクセスするには、ご使用の Java クラスパスに proxy.jar ファイルを追加します。proxy.jar ファイルは、${WAS_INSTALL_ROOT|/plugins ディレクトリーにあります。
  3. advisor-context.xml ファイルを作成します。

    カスタム・アドバイザー・コードをコンパイルしたら、advisor-context.xml ファイルを作成する必要があります。このファイルは、コードがアセットとしてインポートされ、その後、ビジネス・レベル・アプリケーション (BLA) にコンパイル単位として追加されるときに、そのコードをカスタム・アドバイザーの Java アーカイブ (JAR) ファイルとして識別するために使用されます。 カスタム・アドバイザー JAR アセットが BLA に追加され、その後プロキシー・サーバーをターゲットにする場合は、Content DistributionFramework (CDF) サポートはカスタム・アドバイザーのすべての BLA 成果物を、指定したターゲット上の該当する構成情報に配布およびコピーします。

    advisor-context.xml には、実行するカスタム・アドバイザーのクラス名およびカスタム・アドバイザー名が含まれています。 advisor-context.xml ファイルのフォーマットは、proxy.jar ファイルの advisor-contex.xsd スキーマに従う必要があります。xml スキーマ・ツールを使用すると、適切な情報の作成と設定に役立ちます。 必須構成情報は、以下のように定義されます。
      <advisor-name> SomeCustomAdvisor </advisor-name>
     <advisor-class> com.ibm.wlm.test.customadvisor.SomeCustomAdvisor </advisor-class>
     <description> Some Custom Advisor Description </description> 
     <display-name> Some display name </display-name>
  4. カスタム・アドバイザー BLA を作成します。 コンパイルしたカスタム・アドバイザー・クラス・ファイルと advisor-context.xml を JAR ファイルにパッケージします。この JAR ファイルは、インストールしてプロキシー・サーバーにデプロイする、カスタム・アドバイザー BLA の作成時に使用されます。 以下は、カスタム・アドバイザーを BLA としてインストールするために使用するコマンドの例です。
    $AdminTask importAsset {-source C:/proxy/testadvisor.jar -storageType FULL}
    $AdminTask createEmptyBLA {-name myBLA}
    $AdminTask addCompUnit {-blaID myBLA -cuSourceID assetname=testadvisor.jar,assetversion=1.0 -MapTargets {{.* ProxyServer}} -CustomAdvisorCUOptions
    {{"type=Cluster,cellName=yourCellName,clusterName=yourClusterName
    ,applicationName=myBLA" default default default 1000}}}
    $AdminConfig save
  5. デプロイ済みカスタム・アドバイザーを構成します。 追加情報については、プロキシー・サーバーのカスタム・アドバイザーの管理を参照してください。

トピックのタイプを示すアイコン タスク・トピック



タイム・スタンプ・アイコン 最終更新: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tjpx_custadv_create
ファイル名:tjpx_custadv_create.html