Servlet with JavaBeanサンプル・プログラムについて

このサンプル・プログラムでは、Enterprise JavaBean (EJBean)の機能を紹介し、Tuxedoサーバーにアクセスする単純なインタフェースの例を示します。このサンプル・プログラムのソース・コードは、Oracle Tuxedoの/samples/jolt/wls/ejb/bankappディレクトリに収められています。

自分専用のEJBeanを作成する前にこのサンプル・プログラムを実行すると、ソースに記載される様々なステップが表示されます。サンプル・プログラムは、TellerBeanというステートフル・セッションEJBeanで、Jolt for WebLogicを使用してTuxedoサーバーと通信し、次のトランザクションを実行します。
  • Tuxedoサーバーとコンタクトしてサービスを呼び出し、返された結果を取得する
  • セッションEJBeanを使用する
  • ステートフルな永続性を使用する
  • アプリケーション定義の例外とユーティリティを使用する
  • クライアント・ブラウザ・アプリケーションを使用する
クライアント・ブラウザ・アプリケーションは次のステップを実行します。
  1. JNDIを通して出納係のホーム("TellerHome")にコンタクトし、EJBeanを検索します。
  2. 出納係("Terry")を作成します。
  3. 作成された出納係に対して、アプリケーションは以下の一連のトランザクションを実行します。
    • 口座10000の現在の残高を取得します。
    • トランザクション1:口座に$100を預け入れ、残高を表示します。
    • トランザクション2: $200の預け入れを行います(トランザクション限度額の$300を超える)。

      ノート:

      トランザクション1では、単一の呼出しが行われ、自動的にコミットされます。トランザクション2では、begin()commit()で2つのリクエスト(預け入れと引出し)がまとめて処理されます。
    • 口座の残高より$100多い金額の引出しを試みます。
    • ApplicationExceptionを取得し、例外に埋め込まれたステータス・メッセージを取得して、トランザクション2にロールバックします。
    • その口座の最終的な残高を取得します。
    • 出納係を削除します。
トランザクション2では、トランザクション1の終了時点の残高にロール・バックする方法が示されています。