WebSphere Application Server for z/OS, Version 6.1   
             オペレーティング・システム: z/OS

             目次と検索結果のパーソナライズ化

動的キャッシュ用の DynamicContentProvider インターフェースの使用

このタスクを使用して、キャッシュに入れたサーブレットおよび JavaServer Pages (JSP) ファイルの DynamicContentProvider インターフェースを構成します。

始める前に

動的キャッシュ・サービスが使用可能にし、サーブレット・キャッシングを使用している必要があります。詳しくは、動的キャッシュ・サービスの使用可能化 およびサーブレット・キャッシングの構成 を参照してください。

このタスクについて

キャッシュ可能なサーブレットまたは JavaServer Pages (JSP) ファイルには、 そのサーブレットまたは JSP のフラグメントに属さない応答の状態が含まれることがあります。 状態が変化すると、キャッシュに入れたサーブレットまたは JSP はキャッシュに無効になります。 com.ibm.websphere.servlet.cache.DynamicContentProvider インターフェースを使用して、フラグメントをキャッシュ可能にします。

DynamicContentProvider インターフェースをインプリメントするサーブレットまたは JSP ファイルは、 ラッパー応答オブジェクトで addDynamicContentProvider(DCP) メソッドを呼び出すことによって キャッシュ可能になるフラグメントでユーザー出口を追加することができます。 動的キャッシュがページをレンダリングすると、ユーザー出口を識別し 、動的コンテンツ・プロバイダーを呼び出し、レンダリングされたページに動的コンテンツを追加します。

プロシージャー

  1. com.ibm.websphere.servlet.cache.DynamicContentProvider インターフェースのインプリメンテーション・クラスを提供します。 インプリメンテーションの例は、以下のとおりです。
    class DynamicContentProviderImpl implements com.ibm.websphere.servlet.cache.DynamicContentProvider {
    				DynamicContentProviderImpl() {}
    				
    				public void provideDynamicContent(HttpServletRequest request, OutputStream streamWriter)
               throws IOException {
    					String dynamicContent = System.currentTimeMillis();			
    					streamWriter.write(dynamicContent.getBytes());
    				}
    				public void provideDynamicContent(HttpServletRequest request, Writer streamWriter) 
               throws IOException {
    					String dynamicContent = System.currentTimeMillis();			
    					streamWriter.write(dynamicContent.toCharArray());
    				}
    			}
    
  2. ラッパー応答オブジェクトで addDynamicContentProvider(DCP) メソッドを呼び出すことによって、 ユーザー出口をご使用のサーブレットまたは JSP ファイルに追加します。 次に例を挙げます。
    public class DCPServlet extends CacheTestCase {
    				public void performTest(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
    					out.println(“Testing the DCP feature begin ”+System.currentTimeMillis());
    					DynamicContentProvider dcp = new DynamicContentProviderImpl();
    					ServletCacheResponse scr = (ServletCacheResponse)(response);
    					scr.addDynamicContentProvider(dcp);
      					out.println("Testing the DCP feature end”+System.currentTimeMillis());
    				}
    			}
    

次の作業

動的キャッシュを使用して実行できるその他のタスクについて詳しくは、タスクの概説: 動的キャッシュ・サービスの使用によるパフォーマンスの向上 を参照してください。



関連タスク
サーブレット・キャッシングの構成
サーブレット・キャッシュ・インスタンスの使用
タスク・トピック    

ご利用条件 | フィードバック

最終更新: Jan 21, 2008 9:12:22 PM EST
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.zseries.doc/info/zseries/ae/tdyn_dynamiccp.html