ソースコードから理解する技術-UnderSourceCode

手を動かす(プログラムを組む)ことで技術を理解するブログ

Wicket (8)環境設定

「オープンソース徹底活用 WicketによるWebアプリケーション開発」を読み
Wicketについて学習しています。

Wicketの環境設定をしてみました。
IDEにEclipse、WebサーバーはTomcat6.0を使用したいと考えたのですが、この組み合わせについて検索すると
古い記事でEclipseのバージョンが異なる、Maven2WTPなどいろいろインストールしなければならないなど
なかなか納得できる方法が見つかりませんでした。

Wicketを簡単に始めるならWebサーバーにJettyを使えるようですが、実業務を考えるとTomcatやJBossなど
Jetty以外のWebサーバーが使えたほうがいいでしょう。。。

以下、環境設定の手順です。
必要なのはIDEにEclipse、WebサーバーはTomcat6.0のみのシンプルな組み合わせです。

1.Eclipseのダウンロード、インストール
  http://www.eclipse.org/downloads/ より「Eclipse IDE for Java EE Developers」をダウンロードして
  インストールします。インストール手順は省きますが、このバージョンだとWTPが含まれているので
  別途インストールする手間が省けます。

2.Eclipseの日本語化
  Eclipseを日本語化するためのパッチである「pleiades_1.3.1.zip」を
  http://sourceforge.jp/projects/mergedoc/downloads/43995/pleiades_1.3.1.zip/ より
  ダウンロードします。
  ダウンロードしたら.zipファイルを解凍し、全てのファイルをEclipseをインストールフォルダ内に上書きコピーします。
  eclipse.iniに「-javaagent:plugins/jp.sourceforge.mergedoc.pleiades/pleiades.jar」という記述を一行追加します。
  コピー後、Eclipseを終了し、「eclipse.exe -clean.cmd」を実行します。

3.Tomcat6.0のダウンロード、インストール
  http://tomcat.apache.org/download-60.cgi よりTomcat6.0をダウンロードしてインストールします。
  インストール手順は省きますが、お約束のシステム変数「CATALINA_HOME」は設定しておきましょう。

以下、Wicketプロジェクトの開始手順です。
http://wicket.apache.org/よりWicketをダウンロードして解凍しておきます。
今回使用するWicketのバージョンは、1.4-rc2です。
現在は配布されていないようなので、以下の手順はご自分が使用するバージョンに置き換えてください。

1.プロジェクトの新規作成
  [ファイル] - [新規] - [動的Webプロジェクト] を選択。
  「動的Webプロジェクト」ウィンドウの「Target runtime」に「Apache Tomcat 6.0」を選択。
  「プロジェクト名」は「WicketStart」とする。これ以外は全てデフォルト設定。

2.ライブラリの配置
  解凍したものの「lib」フォルダ内に「wicket-examples-1.4-rc2.war」があるので、これを解凍する。
  その中のWEB-INF\classes より以下のファイルを取得する。
  ・wicket-1.4-rc2.jar
  ・log4j-1.2.13.jar
  ・slf4j-api-1.4.2.jar
  ・slf4j-log4j12-1.4.2.jar
  「wicket-1.4-rc2.jar」がWicket本体、他はログ関連。
  取得したファイルをEclipseのワークスペース\WicketStart\WebContent\WEB-INF\lib にコピーする。

3.Jave EE モジュール依存関係の設定
  プロジェクトエクスプローラーにて「WicketStart」プロジェクトを選択し、[プロジェクト] - [プロパティー]を選択する。
  「WicketStartのプロパティー」ウィンドウが開くので、[Java EE モジュール依存関係]を選択する。
  右側の[外部JARの追加]ボタンを押下し、先ほど追加した「wicket-1.4-rc2.jar」を追加する。

4.WebApplicationクラスの作成
  WebApplicationクラスを継承する新規クラスを、Eclipseのワークスペース\WicketStart\src に作成する。
  フォルダ階層はパッケージの名前空間と合わせること。


package xxx.yyy.wicketstart;
import org.apache.wicket.protocol.http.WebApplication;

public class WicketSample extends WebApplication{
protected void init() {
super.init();
getRequestCycleSettings().setResponseRequestEncoding("UTF-8");
getMarkupSettings().setDefaultMarkupEncoding("UTF-8");
getMarkupSettings().setStripWicketTags(true);
}

@Override
public Class getHomePage() {
return StartPage.class;
}
}

5.WebPageクラスの作成
  WebPageクラスを継承する新規クラスを作成する。


package xxx.yyy.wicketstart;
import org.apache.wicket.markup.html.WebPage;
import org.apache.wicket.markup.html.basic.Label;
public class StartPage extends WebPage {
public StartPage(){
Label label = new Label("message", "Wicketでのスタートページです。");
this.add(label);
}
}

6.HTMLテンプレートの作成
  上記の.javaファイルと同じフォルダ内に
  WebPageクラスと同名の.htmlファイルを作成する。


<!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>スタートページ</title>
</head>
<body>
<h4>Wicket Start Page</h4>
<span wicket:id="message" id="message">デフォルトメッセージ</span>
</body>
</html>

7.web.xmlの設定
  Eclipseのワークスペース\WicketStart\WebContent\WEB-INF 内のweb.xmlをについて
  <init-param>タグ内の<param-value>の値に、4.で作成したWebApplicationクラス名、名前空間を設定する。


<init-param>
<param-name>applicationClassName</param-name>
<param-value>xxx.yyy.wicketstart.WicketSample</param-value>
</init-param>

8.実行
  WicketStartプロジェクトを[右クリック] - [リフレッシュ]を選択。
  プロジェクトエクスプローラーの「WicketStart」プロジェクトを右クリックし[実行] - [1.サーバーで実行] を選択。
  HTMLテンプレートで設定したページが表示できれば、無事終了。