Interstage Application Server J2EE ユーザーズガイド
目次 索引 前ページ次ページ

第3部 EJB編> 第14章 EJBアプリケーションの呼出し方法> 14.2 Entity Beanの呼出し方法> 14.2.2 検索処理の記述

14.2.2.4 複数インスタンス検索の記述例(enumeration インタフェースの場合)

■ 記述する処理概要

1.呼び出すEntity Beanのlookup処理を行い、EJB homeを取得する。
2.find<METHOD>メソッドを呼び出し、プライマリキーオブジェクトを取得する。
3.ビジネスメソッドを呼び出す。

■ 記述例

       (lookup処理でEJB homeの取得)
    Enumeration enum = null;
    try {
        // find<METHOD>の呼出し
        enum = etyHome.findByKey(empEV);
    } catch ( FinderException ex ) {
        throw new UserException( ex.getMessage() );
    } catch ( RemoteException ex ) {
        throw new EJBException( ex.getMessage() );
    }

    if ( enum == null ) {
        examDebug( "## EmployeeCBM : empSearchN() record not found" );
        return null;
    }

    int count = 0;
    Vector vec = new Vector();
    EmployeeEntityRemote etyRemote = null;
    java.lang.Object obj = null;
    while( enum.hasMoreElements() ) {
        EmployeeEV view = new EmployeeEV();
        obj = enum.nextElement();
        etyRemote =
        (EmployeeEntityRemote)javax.rmi.PortableRemoteObject.narrow(obj,EmployeeEntityRemote.class
        );
        // ビジネスメソッド/抽象アクセッサメソッド(getId,getName,getDept,getAge)の呼出し
        view.setId(etyRemote.getId());
        view.setName(etyRemote.getName());
        view.setDept(etyRemote.getDept());
        view.setAge(etyRemote.getAge());
        count++;
        vec.addElement( view );
     }

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

All Rights Reserved, Copyright(C) 富士通株式会社 2005