- 追加された行はこの色です。
- 削除された行はこの色です。
←TopPage>[[eclipseで開発]]>[[J2EEしてみんとす>eclipseで開発/J2EE]]>EJB-Client作成
#navi([[eclipseで開発/J2EE]])
*EJB-Client作成
#contents
*はじめに
ここでは、eclipseでLombozを利用したJ2EEアプリケションの開発で、
EJB-JARの作成し、delpoyが終ったあとクライアントプログラムの
作成について解説したいと思います。
*EJB Clientの作成
**EJB Clientプロジェクトの作成
EJBのテストクライアントとしては、プロジェクトの構成は二つの方式が考えられます。
***J2EEと別のプロジェクトにする方法
ひとつは、Lombozのチュートリアルにあるように別のプロジェクトとする方法です。
普通のJavaProjectを作ります。
このときには、テストしたいJ2EEプロジェクトを「ビルド・パス上に必要なプロジェクト」 に指定しておきます。
***J2EEと同じプロジェクトに入れる
J2EEのプロジェクトにいれてしまう。
つぎでのservletの作成では、この方式です。
**EJB TEST clientを作成
「ファイル」→「新規」→「Lomboz EJB TEST client wizard」
#ref(Client1.png)
:パッケージ名:test
:名前:SLSBclient
:EJB Home: test.SLSBHome
:EJB Interface: test.SLSB
:パッケージ名|test
:名前|SLSBclient
:EJB Home| test.SLSBHome
:EJB Interface| test.SLSB
を入力します。
EJB HomeとEJB Interfaceは、Browsでも探すことができます。
#ref(Client2.png)
**J2EE RIでLambozのEJB Clientを動かす方法
-deploy時にClient JARを作る。
-SLSBのJNDI名はSLSBBeanとする。
この<EAR名>Client.jarを、EJB Client Debug時のCLASSPATHに足す。
はじめは、クライアントクラスのprivate InitialContext getContext()メソッド
の中をJBOSSクライアントの真似して
----------------------J2EE RI
props.put(InitialContext.INITIAL_CONTEXT_FACTORY,
"com.sun.jndi.cosnaming.CNCtxFactory");
props.put(InitialContext.PROVIDER_URL,
"iiopname://localhost:1050");
com.sun.corba.se.internal.javax.rmi.PortableRemoteObject
----------------------J2EE RI
なんて書いたけど、Client.jarが有ればいらない。
以下のようにSLSBClientクラスを追加します。
#ref(ClientDebug2.png)
あと、private biz.totsuka.TEST.SLSBHome getHome()で、lookup()してきた
HOME Objectを、narrowでなくてキャストしているのでダメかと思って
return (biz.totsuka.TEST.SLSBHome) obj;
を
return (biz.totsuka.TEST.SLSBHome)
javax.rmi.PortableRemoteObject.narrow(obj,
biz.totsuka.TEST.SLSBHome.class);
と治したけどキャストのままでも問題無し。
*次は
「 [[../WAR作成]] 」で、JSP/Sevletからテストしてみましょう。
[[←もくじに戻る>../#index]]
#navi([[eclipseで開発/J2EE]])
←TopPage>[[eclipseで開発]]>[[J2EEみんとす>eclipseで開発/J2EE]]>EJB-Client作成