Spring MVCでHelloWorld EclipseのTomcat上で起動する

SpringMVCのアプリケーションを動かしてみたいと思います。

手順は

  • サンプルプログラムの作成
  • Tomcatの設定
  • 起動!

という感じになります。 では、まずサンプルプログラムの作成から行います。

サンプルプログラムの作成

とりあえず、HelloWorldと表示したいので、そのページを作ります。
詳しくは、本記事末尾に参考URLとして記載させていただいた○○のページを見ていただければと思います。
非常に長くなるので、GitHubからダウンロードしていただいて、実際に動かしながら見てもらえると、よりわかりやすいかもしれません。

web.xmlの修正

参考サイトからコピーさせていただきました。

Springの設定ファイルを作成

参考サイトからコピーさせていただきました。

<context:component-scan base-package="" />

部分を修正

コントローラーを作成

参考サイトからコピーさせていただきました。

JSPファイルの作成

参考サイトからコピーさせていただきました。

これで動く準備は出来ました。
で、せっかくMaven使っているのでTomcatに直接デプロイしようかと思ったんですけど、せっかくなのでEclipseのTomcatで動かしてみます。
Eclipse4.2のpleiades版を使っています。

Tomcatにtomcat7-devloaderを追加

Tomcatは基本的にはTomcatのlibディレクトリやWEB-INF/libなど、ある程度指定された場所にjarファイルを配置する必要があります。
ですが、今回はMaven2を使って構成管理しているのでM2_REPOにjarファイルが配置されており、もちろんそんなところ読み込んでくれません。
tomcat7-devloaderを使うことで読み込ませることができる?みたいです。
こちらのtomcat7-devloader-exからダウンロードします。 README.mdに書いてありますが、

  • mvn packageでjarファイルを作成
  • devloader7-x.x.x.jarをTOMCAT_HOME/libに追加
  • referencePath.confをTOMCAT_HOME/confに追加

ちなみに、自分の場合referencePath.confは以下のようにしました。

D:/tools/eclipse/4.2/eclipse/workspace/testapp,/target/classes

これで、Tomcat本体の設定は完了です。

EclipseのTomcatプラグインの設定

Eclipse4.2でTomcatプラグインがインストールされているのに、Tomcatの起動アイコンが見当たらないので表示させます。 ウィンドウ>パースペクティブのカスタマイズを開きます。 f:id:beeete2:20160709094303p:plain

コマンド・グループ可用性タブを選択してTomcatをクリックします。 f:id:beeete2:20160709094334p:plain

これで、ツールバーに見慣れたTomcatのアイコンが表示されます。
f:id:beeete2:20160709094412p:plain

EclipseのプロジェクトTomcatの設定

プロジェクトを右クリックしてプロパティから、Tomcatを選択して設定を行います。

全般タブ
  • Tomcatプロジェクトにチェック
  • コンテキスト名にtestを入力
  • WEBアプリケーションディレクトリの設定 f:id:beeete2:20160709094528p:plain
開発用クラスローダーのクラスパス

f:id:beeete2:20160709094649p:plain

要約すると

  • test用のクラスを除外
  • サーブレット関連のjarを除外

です。
※tilesを使う場合、jstl-1.2jarは必要になりますのでチェックをつけておいてください。

起動

ツールバーのTomcat起動ボタンをクリックすると起動すると思います。 http://localhost:8080/test/hello にアクセスすると・・・。 表示されました。 f:id:beeete2:20160709094756p:plain

まとめ

開発はある程度はローカル環境で完結したいということがあると思います。 EclipseからTomcatを起動できればかなり楽になるのではないかと思います。 今回もかなりの情報を参考させていただきました。 この記事ではさらりと流した部分も詳しく記載されているので、目を通されるとよいと思います。

今回のプロジェクトをGitHubに置きました。 github.com

参考にさせていただいたサイト

SpringMVCサンプルプロジェクト - ぺーぺーSEのブログ
Spring MVC 3.0/3.1/3.2 Cookbook - タツノオトシゴの日記