おーぷん・でぺろぷ・ふぁんでーしょん

JAVAやオープンソースを中心とした技術メモ。

全体表示

[ リスト ]

struts2 入門 インストール

strust2のインストールについて説明していますが
EclipseやTomcatのインストールなどについては割愛しています。

確認環境

JDK1.6
Eclipse3.3
Tomcat6.0

struts2ダウンロード

apache struts2から
最新のバージョン(現時点 Struts 2.0.11.1 best available)を選択し
struts-2.0.11.1-all.zipをダウンロードし適当な場所に解凍します。

<サンプル>
解凍するとstruts-2.0.11.1\appsの下に以下サンプルwarが格納されています。
tomcatのwebapps配下に配置すれば動かすことができるので参考になると思います。
・struts2-blank-2.0.11.1.war - 名前の通り空のプロジェクトです。struts2開発を始める時に使用できます。
・struts2-mailreader-2.0.11.1.war - struts2の仕組みを理解するのに丁度いいシンプルなアプリケーションです。
・struts2-portlet-2.0.11.1.war - ポートレットのデモンストレーションアプリです。
・struts2-showcase-2.0.11.1.war - UIなど共通なコンポーネントのサンプル集です。

プロジェクトのセットアップ

EclipseでWEBアプリプロジェクトを作成します。
WTPを使っている場合は[新規プロジェクト]から[動的WEBプロジェクト]を作成してください。
プロジェクトの名前は「struts2test」としました。

作成したプロジェクトのWEB-INF/libの下に
struts-2.0.11.1\libから以下のjarをコピーします。
・commons-logging-1.0.4.jar
・freemarker-2.3.8.jar
・ognl-2.6.11.jar
・struts2-core-2.0.11.1jar
・xwork-2.0.4.jar

web.xmlの編集

struts2がリクエストを受け取るように
web.xmlに以下のフィルターを追加します。
  <filter>
    <filter-name>struts2</filter-name>
    <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
  </filter>

  <filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

struts.xmlの追加

struts2の設定ファイルを追加します。
strtus1のstruts-config.xmlと同じようなもので
遷移先の管理やアクションクラスの関連を設定します。
アノテーションを使うことによって設定しないことも可能ですが今回は設定します。
以下を記述したstruts.xmlをsrc配下に格納します。
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
    <package name="tutorial" extends="struts-default">
        <action name="HelloWorld" class="tutorial.HelloWorld">
            <result>/HelloWorld.jsp</result>
        </action>
    </package>
</struts>
(tutorial.HelloWorld.javaとHelloWorld.jspについては下記参照)

tutorial.HelloWorld.javaを作成する

アクションクラスであるHelloWorld.javaを作成します。
srcの下にtutorialパッケージを作成し以下の内容で
HelloWorld.javaを作成します。
package tutorial;
import com.opensymphony.xwork2.ActionSupport;
public class HelloWorld extends ActionSupport {//ActionSupportを継承

    //画面に表示するMESSAGE
    public static final String MESSAGE = "Struts is up and running ...";

    //実行されるアクションメソッド
    public String execute() throws Exception {
        setMessage(MESSAGE);
        return SUCCESS;
    }

    //以下messageプロパティ・アクセサ
    private String message;

    public void setMessage(String message){
        this.message = message;
    }

    public String getMessage() {
        return message;
    }
}

hello.jspの作成

結果を表示する画面hello.jspを作成します。
<%@ page language="java" contentType="text/html; charset=Windows-31J"
    pageEncoding="Windows-31J"%>
<%@taglib prefix="s" uri="/struts-tags" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
    <head>
        <title>Hello World!</title>
    </head>
    <body>
        <h2><s:property value="message" /></h2>
    </body>
</html>

動かしてみる

必要なものが揃ったので動かしてみます。
サーバを起動して以下にアクセスして画面に「Struts is up and running ...」が表示されれば成功です。
http://localhost:8080/struts2test/HelloWorld.action
↑hが全角になっているので半角に変えてください。
ローカルホストを入力するとwiki文法で勝手に"/"になるので
解決方法知ってる方は是非教えてください。(^_^;)

以上で最低限動かしてみるところまでです。
アノテーションを使ってゼロ設定でやらないとあまり
ありがたみがありませんがActionFormが無くなってActionのアクセサで
プロパティを参照できるのはJSFライクでいいと思います。
strtusはデザインとの調和がJSFより取りやすいのでまだ期待してます。

次回はアノテーションを使ってみます。

アフィリエイト   私のおすすめ:
StrutsによるWebアプリケーションスーパーサンプル第2版

閉じる コメント(0)

コメント投稿
名前パスワードブログ
絵文字
×
  • SoftBank1
  • SoftBank2
  • SoftBank3
  • SoftBank4
  • docomo1
  • docomo2
  • au1
  • au2
  • au3
  • au4
投稿

閉じる トラックバック(0)

トラックバックされた記事

トラックバックされている記事がありません。

トラックバック先の記事

  • トラックバック先の記事がありません。
PR

.
検索 検索
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
 今日全体
訪問者1556822
ブログリンク00
コメント046
トラックバック02

人気度

ヘルプ

Yahoo Image

Yahoo!スマホマネージャー
PR

PR


プライバシーポリシー -  利用規約 -  ガイドライン -  順守事項 -  ヘルプ・お問い合わせ

Copyright (C) 2013 Yahoo Japan Corporation. All Rights Reserved.

みんなの更新記事