サンプル・プログラムのServlet with Enterprise JavaBeanを使用するには、次の項を参照してください。
このEnterprise JavaBean (EJBean)サンプル・パッケージには、Joltを使用するTuxedoサーバーへのEJBeanステートフル・セッションを設定し、実行するために必要なクラスおよびその他のファイルが含まれています。このパッケージのコンポーネントは以下のとおりです。
このサンプル・プログラムでは、Enterprise JavaBean (EJBean)の機能を紹介し、Tuxedoサーバーにアクセスする単純なインタフェースの例を示します。このサンプル・プログラムのソース・コードは、Oracle Tuxedoの/samples/jolt/wls/ejb/bankapp
ディレクトリに収められています。
自分専用のEJBeanを作成する前にこのサンプル・プログラムを実行すると、ソースに記載される様々な手順が表示されます。サンプル・プログラムは、TellerBean
というステートフル・セッションEJBeanで、Jolt for WebLogicを使用してTuxedoサーバーと通信し、次のトランザクションを実行します。
クライアント・ブラウザ・アプリケーションは次の手順を実行します。
注: | トランザクション1では、単一の呼出しが行われ、自動的にコミットされます。トランザクション2では、begin() とcommit() で2つのリクエスト(預け入れと引出し)がまとめて処理されます。 |
このサンプル・プログラムを最大限に活用するには、最初にソース・コード・ファイルを最後まで読み、内容を確認します。DeploymentDescriptor.txt
を起動し、EJBeanの全体構造を把握し、異なるオブジェクトとインタフェースに対してどのクラスが使用されているかを確認してから、Client.java
を参照してアプリケーションがどのように機能するかを確認します。
以下の節では、このサンプル・プログラムの使用方法について詳しく説明します。
付録B「単純なサーブレット・サンプル」の「手順3. WebLogic Serverでサーブレットを構成する」で示すように、OracleのパブリックTuxedoサーバーに接続するJolt接続プールを追加する必要があります。完了したら、config.xml
構成ファイルに次のセクションが含まれます。
<StartupClass
ClassName="bea.jolt.pool.servlet.weblogic.PoolManagerStartUp"
FailureIsFatal="false"
Name="MyStartup Class"
Targets="myserver"
/><JoltConnectionPool
ApplicationPassword="tuxedo"
MaximumPoolSize="5"
MinimumPoolSize="3"
Name="MyJolt Connection Pool"
PrimaryAddresses="//TUXSERVER:6309"
RecvTimeout="300"
SecurityContextEnabled="true"
Targets="myserver"
UserName="joltuser"
UserPassword="jolttest"
UserRole="clt"
/>|
<ShutdownClass
ClassName=”bea.jolt.pool.servlet.weblogic.PoolManager
ShutDown.”
/>
WebLogic Serverの開発環境を構成したら、サンプル・プログラムを作成する必要があります。Oracle Joltでは、Windows 2003用とUNIX用のビルド・スクリプトが用意されています。
これらのスクリプトによって、Windows 2003用のエントリなど、個々のサンプルが作成されます。
$ build
MicrosoftのJDK for Javaで作成するには、次のように指定します。
$ build -ms
スクリプトによってサンプル・プログラムが作成され、Windows 2003システムでは以下に示すデフォルトのWebLogic Serverディレクトリにファイルがインストールされます。
デフォルトの\config\mydomain
ディレクトリでWebLogic Serverを起動すると、サンプル・プログラムのEJBeanが\applications
ディレクトリに自動的にデプロイされます。
\config\mydomain
ディレクトリでWebLogic Serverを起動します。EJBeanが正しくデプロイされていることを確認するには、サーバーのコマンド行ウィンドウをチェックするか、Consoleを開いてDeploymentsの下のEJBを調べます。ejb.jolt.bankapp
がデプロイされ、そのアクティビティがモニター可能になっている必要があります。 $ java examples.jolt.ejb.bankapp.Client
WebLogic Serverをデフォルト設定で実行していない場合、次のコマンド行を使用する必要があります。
$ java examples.jolt.ejb.bankapp.Client "t3://WebLogicURL:Port"
4. Beginning jolt.bankapp.Client...
5.
6. Created teller Terry
7.
8. Getting current balance of Account 10000 for Erin
9. Balance: 27924.02
10.
11. Start Transaction 1 for Erin
12.
13. Depositing 100.0 for Erin
14. Balance: 28024.02
15.
16. End Transaction 1 for Erin
17.
18. Start Transaction 2 for Erin
19.
20. Depositing 200.0 for Erin
21. Balance: 28224.02
22.
23. Withdrawing 28324.02 for Erin
24. Transaction error:
25. examples.jolt.ejb.bankapp.TransactionErrorException: Teller error: application
26. exception:
27. Account Overdraft
28.
29. Rolling back transaction for Erin
30.
31. End Transaction 2 for Erin
32.
33. Getting final balance of Account 10000 for Erin
34. Balance: 28024.02
35.
36. Removing teller Terry
37.
End jolt.bankapp.Client...
注: | トランザクション2がトランザクション1の終了時点の残高にロールバックされ、最終的な残高が表示されていることに注意してください。 |
EJBの詳細は、WebLogic Enterprise JavaBeansのプログラミングを参照してください。Oracle Joltの使用方法については、Oracle Joltの使用を参照してください。