tomcat7 + struts2でwebアプリ(1) とりあえず動かす

仕事で触るtomcatはtomcat7が多いので、tomcat7でいろいろやってみる。
内容的には公式チュートリアルを見るのが間違いないと思います。


(1)動的webプロジェクト作成

  • 「web.xmlデプロイメント記述子の生成」にチェック

(2)WebContent/WEB-INF/libに以下のファイルをコピー
(バージョンは使用するstrutsによる)

  • commons-fileupload-1.2.1.jar
  • commons-io-1.3.2.jar
  • commons-lang-2.4.jar
  • commons-logging-1.0.4.jar
  • commons-logging-api-1.1.jar
  • freemaker-2.3.18.jar
  • javaassist-3.0.jar
  • ognl-3.0.4.jar
  • struts2-core-2.3.1.2.jar
  • xwork-core-2.3.1.2.jar

(3)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>

(4)新規にjspファイルを作成する。
タグの設定だけしてやれば大丈夫と思う。

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>test</title>
</head>
<body>
<s:set var="test" value="3"/>
test:[${test}]
</body>
</html>

(5)サーバーを起動し、アプリケーションをディプロイ後、jspファイルを確認。

test:[3]

と表示されるはず。
(6)その他
サーバー起動時に設定ファイルが読み込めない旨がコンソールに出力される。

(7)struts.xmlを作成する。
Javaリソース配下にあれば読み込んでくれるらしいので、resourcesフォルダを作成して、その中に作成。
strutsバージョンはとりあえず2.1.7です。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
    "http://struts.apache.org/dtds/struts-2.1.7.dtd">

<struts>
    <constant name="struts.devMode" value="false" />

    <package name="myapp" extends="struts-default" namespace="/">
    </package>

</struts>