サンプル 9b の Web アプリケーションはフォームベースの認証を使用します。これは、JRun ではアプリケーションに用意されているログイン ページを使用して自動的にユーザが認証されることを意味します (この場合は login.jsp
)。JRun 3.1 のシングル サインオン機能を使用すると、フォームベースの認証を介してアクセスしたログイン情報を EJB エンジンでも使用できます。サンプル 9b では LoginServlet
は不要です。
シングル サインオンの詳細については、『JRun Version 3.1 機能および移行ガイド』を参照してください。
開始する前に、WEB-INF
ディレクトリにある web.xml
ファイルを確認します。また、sample9b/webapp/WEB-INF/classes
ディレクトリにある BalanceServlet.java
ファイルも確認します。これらのファイルをサンプル 9a と比較し、シングル サインオン機能を使用するときのコーディングの違いを理解してください。
この例を実行するには、次の make
(または makew
) オプションを使用します。
make jars
EJB ファイルをコンパイルし、 JAR ファイルを作成します。
make deploy
EJB を公開します。make war
サーブレットをコンパイルし、WAR ファイルを作成します。make wardeploy
WAR ファイルを公開します。make startup
default JRun サーバを起動します。サンプル 9b を実行するには、コマンド プロンプトを開いて次のコマンドを入力し、環境に合わせて JRun_rootdir を置き換えます。
bash$ export JRUN_HOME=JRun のルート ディレクトリ
bash$ cd JRun のルート ディレクトリ/samples/sample9b
まだユーザを追加していない場合は、次のコマンドを発行して users.properties
ファイルに EJB ユーザを追加します。
bash$ make users
bash$ make jars
bash$ make deploy bash$ make war bash$ make wardeploy bash$ make startup
お気に入りのブラウザを開き、ブラウザがクッキーを受け入れるように設定されていることを確認してください。ここで、http://
ホスト名:
ポート番号/sample9b
を指定します。ほかのサンプルで表示される Java アプリケーションに似たログイン画面が表示されるはずです。chief/pass、saver1/pass、または spender1/pass を使用してログインし、トランザクションを開始します。このサンプルは、出力を default-event.log
ファイルに書き込みます。
サーブレットはクライアントごとにクッキーを 1 つ作成します。そのため、同じマシン上でもう 1 つブラウザを起動すると同じ ID が付けられます。
「makew clean-users
」と入力することによりオプションで users.properties
ファイルから EJB ユーザを削除できます。