データ型変換機能は、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メソッドは、複数のスレッドから同時に呼び出されることがありますので、スレッドセーフとなるように作成してください。