7. その他の Web コンポーネントを追加する (省略可能)

ここでは、管理対象 Bean (LoginBean) とビュー (login.jsp) を web アプリケーションにインポートします。また、login.jsp ページのナビゲーション ルールを定義してアプリケーションを実行します。

7.1. 管理対象 Bean とビューのインポート

  1. LoginBean.java ファイルを、workshop-jsf-tutorial/web/Resources フォルダから beans パッケージにコピーします。
  2. LoginBean クラスのコードを開いて確認します。validate( ) メソッドは、ユーザのユーザ ID とパスワードを検証し、ユーザを home.jsp にナビゲートするための論理結果 login を返します。ユーザ id またはパスワードが不正な場合は、エラー メッセージを表示して再ログインを要求するために null を返します。
  3. 次の図に示すように、workshop-jsf-tutorial/web/WEB-INF/config/faces-config.xml ファイルに、管理対象 Bean として LoginBean をコンフィグレーションします。(faces-config.xml を開き、必要に応じてエディタの [Faces コンフィグレーション] タブをクリックします。)
  4. LoginBean のスコープは request に設定します。faces-config.xml ファイルを保存します。
  5. 以下のキーと値のペアを、workshop-jsf-tutorial/web/WEB-INF/src/java/resources/application.properties ファイルに追加します。このコード行は、workshop-jsf-tutorial/web/Typing_Aid/application_properties_3.txt からコピーすることもできます。
  6. # -- login page --
    loginPageTitle=Login to Workshop...
    loginFormHeader=Member Login
    login_NewUser=New User
    login_SignUp=Sign Up
    invalidPassword=Please provide correct password for userId: {0}
    invalidUserId=Please provide correct userId
  7. application.properties ファイルを保存します。
  8. login.jsp.txt ファイルを、workshop-jsf-tutorial/web/Resources フォルダから pages フォルダにコピーし、名前を login.jsp に変更します。

7.2. login.jsp のナビゲーション ルールの定義

LoginBean.validate メソッドは、ユーザを home.jsp ページにナビゲートするために login を返します。

  1. faces-config.xml ファイルの [ナビゲーション] ビューを使用して、login.jsp ページのナビゲーション ルールを定義します。
  2. ナビゲーション ルール /pages/login.jsp ページの新しいナビゲーション ケースを定義します。

  3. faces-config.xml ファイルを保存します。

7.3. アプリケーションの実行

  1. [AppXplorer] ビューで login.jsp ファイルを右クリックします。[実行|サーバで実行] を選択します。
  2. 必要に応じて、web ブラウザに URL「http://localhost:7001/pages/login.jsf」を入力します。
  3. [送信] リンクをクリックし、ユーザ Id 「james」でログインします。
  4. パスワードなしでログインを試み、エラー メッセージが表示されることを確認します。
  5. ユーザ Id 「james」、不正なパスワード「1006」でログインを試み、エラー メッセージが表示されることを確認します。
  6. 正しいユーザ Id とパスワード (james1007) でログインすると、home.jsp ページにナビゲートされます。
  7. サーバを停止します。

チュートリアルを移動するには、矢印をクリックしてください。


さらにヘルプが必要ですか。質問は Workshop ニュース グループまでお寄せください。