TOP書籍連動> JSFの場合
まるごとEclipse!
Exadel StudioによるStruts/JSF開発

第4回:JSPの作成方法

著者:竹添 直樹(TAKEZOE, Naoki)   2006/3/8
前のページ  1  2
JSFの場合

   Web Projectsビューの「WebContent」を右クリックし、「New → File → JSP」でJSPを作成するためのウィザードが起動するので、index.jsp、success.jsp、error.jspの3つを作成します。

   このときTemplateで「JSFBasePage」を選んでおくと、JSF用の雛形が生成されるので便利です(図2)。なお、設定ダイアログの「Exadel → JSF → JSF Pages」で独自のテンプレートを追加することも可能です(Strutsの場合も同様です)。

JSP作成ウィザード
図2:JSP作成ウィザード
(画像をクリックすると別ウィンドウに拡大図を表示します)

   ログイン画面のソースコードはリスト2のようになります。

リスト2:index.jsp(JSF版)
<%@ page language="java" contentType="text/html; charset=Windows-31J" %>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<html>
   <head>
      <title>JSFアプリケーション</title>
      <meta http-equiv="Content-Type" content="text/html;
charset=Windows-31J">
   </head>
   <body>
      <f:view>
         <h:form>
            <table>
            <tr>
               <th>ID</th>
               <td>
                  <h:inputText id="id" value="#{loginBean.id}"
                  required="true" />
                  <h:message for="id"/>
               </td>
            </tr>
            <tr>
               <th>Pass</th>
               <td>
                  <h:inputSecret id="password" value="
                  #{loginBean.password}" required="true" />
                  <h:message for="password"/>
               </td>
            </tr>
            </table>
            <h:commandButton action="#{loginBean.doLogin}"
            value="ログイン" />
         </h:form>
      </f:view>
   </body>
</html>

   リスト2の(1)の#{loginBean.id}ではテキストボックスの入力値をloginBeanのidプロパティーに、リスト2の(2)の#{loginBean.password}ではパスワードフィールドの入力値をloginBeanのpasswordプロパティーにマッピングしています。

   また、どちらの場合もrequired="true"の指定によってIDとパスワードは必須入力であることを指定しています。

   もし、テキストボックスに値が入力されていない場合は<h:messages />の部分にエラーメッセージが表示されます。また、リスト2の(3)の#{loginBean.doLogin}ではボタンが押された場合にloginBeanのdoLogin()メソッドを呼び出すよう指定しています。

前のページ  1  2


竹添 直樹(TAKEZOE, Naoki)
著者プロフィール
竹添 直樹(TAKEZOE, Naoki)
弱小零細企業のプログラマ。Javaによる業務アプリケーション開発やオープンソースを活用した研究開発などに従事。趣味でEclipseプラグインなどの開発を行っており、Seasarプロジェクトなど国内外のオープンソースプロジェクトにもコミッタとして参加している。現在転職活動中。

INDEX
第4回:JSPの作成方法
  JSPの作成
JSFの場合