次のページ 前のページ 目次へ

7. Enterprise Java Bean (EJB) のサポートの設定方法

執筆予定

7.1 BEA WebLogic

執筆予定

より多くの情報は、 http://www.beasys.com/linux/ を見てください。

7.2 EJBoss

背景

EJBoss オーガナイゼーションは、完全な J2EE 互換プラットフォームをオープ ンソースウェブに供給できるよう努力しています。(EJBoss ウェブサイトからの 引用)

この文書が書かれた時点の最新バージョンは 0.95 でした。

ダウンロード

EJBoss は、 http://www.telkel.com/ejboss にある Telkel ウェブサイトからダウンロードできます。

JDK 1.3 の実装は、Linux 向けでは入手できるものがないので、 ejboss095_jdk122.jar を選んでください。

インストール

ディレクトリ /usr/local にファイルをインストールしましょう。ファイルのダ ウンロード後、次のコマンドを実行します。

mkdir /usr/local/ejboss 
mv ejboss* /usr/local/ejboss

そのファイルを unjar します。

jar xvf ejboss095_jdk122.jar

/usr/local/ejboss の下に様々なファイルやディレクトリが作成されたはずです。

上記の例は、JDK 1.2.2 用 EJBoss 0.95 を示しました。ファイル名を適切なも のにかえてやってください。

環境設定

設定する環境変数は——

です。

環境変数 CLASSPATH は、Java プログラムのコンパイルと実行に必要なディレク トリとすべての JAR を示します。

CLASSPATH に EJBoss JAR とディレクトリ beans/generated を含めてください。

export
CLASSPATH=/usr/local/ejboss/lib/ejboss095_jdk122.jar:/usr/local/ejboss/beans/generated:$CLASSPATH

インストール後の確認

簡単な EJB アプリケーションのコンパイルと実行の準備ができました。下記の 3つのサーバ用のソースファイルを作成してください。

始めに、ビジネスインターフェース。

// EJBTest.java

import javax.ejb.*;
import java.rmi.RemoteException;

public
 interface EJBTest extends EJBObject { 
  public String greet() throws
 RemoteException;

}

二番目に、ホームインターフェース。

// EJBTestHome.java

import javax.ejb.*;
import java.rmi.RemoteException;

public
 interface EJBTestHome extends EJBHome {

  public EJBTest create() throws
 
   CreateException, RemoteException;
}

三番目に、bean 実装クラス。

// EJBTestBean.java

import javax.ejb.*;
import java.rmi.RemoteException;

public
 interface EJBTestBean implements SessionBean {

  private SessionContext
 mContext = null;

  public void ejbPassivate() {
    System.out.println("EJBTestBean
 passivated.");
}

  public void ejbActivate() {
    System.out.println("EJBTestBean
 activated.");
}

  public void ejbCreate() {
    System.out.println("EJBTestBean
 created.");
}

  public void ejbRemove() {
    System.out.println("EJBTestBean
 removed.");
}

  public void setSessionContext() {
    System.out.println("EJBTestBean
 context set.");
    mContext = context;
}

  public String greet()
 {
    return "Hello, I'm an EJB!";
}

}

Java コンパイラでサーバソースファイルをコンパイルしてください。

javac EJBTest*.java

コンパイラがエラーを出力するなら、構文の確認と PATH および CLASSPATH の 確認を入念にしてください。

サーバソースファイルの記述とコンパイルが成功した上で、EJBoss にこの bean を配置する必要があります。EJBoss への bean の配置は、いくつかの段階の正 確な実行が必要です。

始めに、ファイル ejb-jar.xml を作成します。

<?xml version="1.0" encoding="Cp1252"?>
 
<ejb-jar ID="">
     <description></description>
     <display-name></display-name>
     <small-icon></small-icon>
     <large-icon></large-icon>
     <ejb-client-jar></ejb-client-jar>
     <enterprise-beans>
       <session>
         <description>Nextgen bean</description>
         <ejb-name>nextgen.EJBTest</ejb-name>
         <home>EJBTestHome</home>
         <remote>EJBTest</remote>
         <ejb-class>EJBTestBean</ejb-class>
         <session-type>Stateful</session-type>
         <transaction-type>Bean</transaction-type>
         <env-entry>
           <description></description>
           <env-entry-name></env-entry-name>
           <env-entry-type>java.lang.String</env-entry-type>
           <env-entry-value></env-entry-value>
         </env-entry>
         <resource-ref>
           <description></description>
           <res-ref-name></res-ref-name>
           <res-type></res-type>
           <res-auth>Container</res-auth>
         </resource-ref>
       </session>
     </enterprise-beans>
     <assembly-descriptor />
   </ejb-jar>

上記のファイルは ejb-jar.xml という名前でなければなりません。これは、さ きほど作成したファイルのインターフェースとクラス名、およびオブジェクト名 を登録します。

二番目に、さきほど作成した3つのクラスファイルがあるディレクトリに、 META-INF という (サブ) ディレクトリを作成します。

mkdir META-INF
mv ejb-jar.xml META-INF

三番目に、jar の中に4つのファイルをパッケージします。

jar cvf EJBTest.jar EJBTest*.class META-INF/ejb-jar.xml

これによって、宣言 (manifest) と3つのクラスファイルと XML 配置記述子 (deployment descriptor) ファイルが追加されることが分かるはずです。

四番目に、作成したばかりの JAR を EJBoss beans ディレクトリに置きます。

mv EJBTest.jar /usr/local/ejboss/beans

五番目に、作成したクラスファイルを EJBoss beans/generated ディレクトリに 移動します。

mv EJBTest*.class /usr/local/ejboss/beans/generated

(この五番目の手順は、EJBoss 0.95 のバグによる余分なものです。)

EJBoss サーバを開始する準備ができました。

cd /usr/local/ejboss

sh server.sh

プロキシファイルが自動的にコンパイルされ、EJB に配置されたことを確認して ください。

簡単なクライアントアプリケーションの記述とコンパイルとテストの準備ができ ました。

7.3 Bullsoft JOnAS EJB

執筆予定

より多くの情報は、 http://www.bullsoft.com/ejb/ を見てください。


次のページ 前のページ 目次へ