Ajaxフレームワーク ユーザーズガイド
目次 索引 前ページ次ページ

第3章 通信フレームワーク> 3.5 サーブレット連携機能(簡易通信方式)

3.5.2 JavaBeanの取得(コールバック)

データ型変換機能は、JavaBeanのIDに対応するJavaBeanをアプリケーションから取得するために、com.fujitsu.interstage.rcf.http.RcfServletHelperクラスのresolveBeanメソッドを呼び出します。
アプリケーションは、RcfServletHelperクラスを継承し、resolveBeanメソッドを実装する必要があります。

以下に、resolveBeanメソッドの記述例を示します。
この例では、JavaBeanのIDをキーに、JavaBeanを値とし、セションで管理する場合の処理を示します。

package mypkg;

import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import com.fujitsu.interstage.rcf.http.RcfServletHelper;

public class MyHelper extends RcfServletHelper {
    public MyHelper(ServletContext context) {
        super(context);
    }

    protected Object resolveBean (
        HttpServletRequest request, String beanId) {

        HttpSession session = request.getSession();
        Object bean = null;
        synchronized (session) {
            bean = session.getAttribute(beanId);
            if (bean == null) {
                // JavaBeanのIDに対応するJavaBeanを作成し、セションに登録する
                bean = new ...;
                session.setAttribute(beanId, bean);
            }
        }
        return bean;
    }
}

resolveBeanメソッドは、複数のスレッドから同時に呼び出されることがありますので、スレッドセーフとなるように作成してください。


目次 索引 前ページ次ページ

Copyright 2009 FUJITSU LIMITED