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

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

15.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 );
     }

                                   :
--------------------------------------------------------------------------------

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

Copyright 2008 FUJITSU LIMITED