TOP比較データ> ファイルシステム上のパスの定義
徹底比較!! PHP & Java 〜 フレームワーク編
徹底比較!! PHP & Java 〜 フレームワーク編

第3回:Strutsにおける基本中のキホン
著者:ワイズノット  土橋 芳孝   2005/9/6
前のページ  1  2   3  4  次のページ
ファイルシステム上のパスの定義

   (1)のSample.xmlは、Struts上で動くWebアプリケーションのコンテキストと、実際にWebアプリケーションが格納されているファイルシステム上のパスを定義しています。

   今回利用するサンプル・アプリケーションのコンテキスト名は「Sample」ですので、ファイル名はSample.xmlとしなければなりません。
Sample.xml
<Context>
    path="/Sample"
    docBase="${catalina.home}/webapps/Sample">
</Context>
ログイン画面を表示するためのJSP

   (2)のlogin.jspは、ログイン画面を表示するためのJSPです。

login.jsp
<%@ page contentType="text/html; charset=Shift_JIS" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>

<HTML>
    <HEAD>
        <TITLE>ログイン画面</TITLE>
    </HEAD>
    <BODY>
        <CENTER>
            <html:form action="/Login">
                <P>
                    <FONT SIZE="5">ログイン画面</FONT>
                </P>
                <P>
                    <TABLE>
                        <TR>
                            <TD>ログインID&nbsp;:&nbsp;</TD>
                            <TD>
                                <html:text property="id" size="20" />
                            </TD>
                        </TR>
                        <TR>
                            <TD>パスワード&nbsp;:&nbsp;</TD>
                            <TD>
                                <html:password
                                    property="password"
                                    size="20"
                                    redisplay="false" />
                            </TD>
                        </TR>
                    </TABLE>
                </P>
                 <P>
                    <html:submit property="submit" value="ログイン" />
                </P>
            </html:form>
        </CENTER>
    </BODY>
</HTML>
トップ画面を表示するためのJSP

   (3)top.jspは、トップ画面を表示するためのJSPです。

top.jsp
<%@ page contentType="text/html; charset=Shift_JIS" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>

<HTML>
    <HEAD>
        <TITLE>トップ画面</TITLE>
    </HEAD>
    <BODY>
        <CENTER>
            <P>
                <FONT SIZE="5">
                     ようこそ
                     <bean:write
                         name="loginForm"
                         property="id"
                         scope="request" />
                     さん
                </FONT>
            </P>
            <P>
                <html:link action="/Logout">
                    ログアウト
                </html:link>
            </P>
        </CENTER>
    </BODY>
</HTML>
日本語の文字化けを回避するために利用しているフィルタクラス

   (4)のSetCharacterEncodingFilter.classは、Webブラウザから入力された日本語の文字化けを回避するために利用しているフィルタクラスです。

   SetCharacterEncodingFilter.classは、はじめからStrutsに用意されている「servlets-examples」や「jsp-examples」といったサンプル・アプリケーションから流用することが可能です。


ログインボタンが押された時に実行されるアクションクラス

   (5)のLoginAction.classは、ログイン画面のログインボタンが押された時に実行されるアクションクラスです。


入力された値を保持するアクションフォームクラス

   (6)のLoginForm.classは、ログイン画面に入力された値を保持するアクションフォームクラスです。


ログアウトボタンが押された時に実行されるアクションクラス

   (7)のLogoutAction.classは、トップ画面のログアウトボタンが押された時に実行されるアクションクラスです。


LoginAction.classのソースコード

   (8)のLoginAction.javaは、LoginAction.classのソースコードです。

LoginAction.java
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.*;

public final class LoginAction extends Action {

    public ActionForward execute(
        ActionMapping mapping,
        ActionForm form,
        HttpServletRequest request,
        HttpServletResponse response) {

        return (mapping.findForward("success"));
    }
}
前のページ  1  2   3  4  次のページ


ワイズノット
著者プロフィール
株式会社ワイズノット  土橋 芳孝
以前はJavaを利用したWebアプリケーション開発とオブジェクト指向設計を得意としていたが、ワイズノットに入社以来、PHPの魅力にとりつかれる。現在はワイズノットのプロジェクトマネージャーとして、PHPをはじめとしたオープンソースの普及に力を注いでいる。


INDEX
第3回:Strutsにおける基本中のキホン
  サンプル・アプリケーションの紹介
ファイルシステム上のパスの定義
  LoginForm.classのソースコード
  Strutsの動作を定義するための設定ファイル