[Tomcat] Tomcatへのwebアプリのデプロイ方法(jarファイル編)

何かと忘れがちなので、Tomcatへのアプリケーションのデプロイ方法をまとめておく。

Tomcatのディレクトリ構成

Tomcatのホームディレクトリはもちろんインストールの仕方によって変わるけれども、私の場合は「/usr/share/tomcat6」だった。CentOS6.4です。

で、この下にいくつかのフォルダがある。
主要なフォルダは「conf」と「webapps」の2つ。この2つを押さえておけばひとまずOK。

「conf」ディレクトリ

シンボリックリンクで「/etc/tomcat6」につながっている。
server.xml、web.xml、tomcat-users.xmlなどの設定ファイルがある。
ちなみに、ここにあるweb.xmlとは別に個々のアプリでweb.xmlを作ります。

「webapps」ディレクトリ

シンボリックリンクで「/var/lib/tomcat6/webapps」につながっている。
webアプリの配備先。

jarファイルを配置

以下の5つの順序でデプロイしていきます。

1.webappsに新規ディレクトリ作成

ディレクトリ名がURLになります。例えば、ディレクトリ名が「testtest」だったら、URLは「http://localhost:8080/testtest」という感じ。
他人に見える部分なのであんまり変な言葉にはできないですね!

2.WEB-INFディレクトリ作成

1で作成した新規ディレクトリの下にWEB-INFという名前のディレクトリを作成します。この名前はTomcatで決まってます。「webapps/testtest/WEB-INF」という感じ。

3.libディレクトリ作成

2で作成したWEB-INFの下にlibというディレクトリを作成します。この名前も決まってます。そして、jarファイルはこのlibディレクトリに置くと決まっています。「webapps/testtest/WEB-INF/lib」という感じ。

4.jarファイルデプロイ

3で作ったディレクトリにjarファイルをデプロイします。デプロイって言うとカッコいいですが、アップロードするだけですね(笑)
ちなみに、私はjarファイルはEclipseで作りました。スタンダードですよね。

5.web.xml作成

最後に2で作ったWEB-INFのディレクトリにweb.xmlを作成します。このweb.xmlというのは、jarファイルのクラスとURLをマッピングする役割です。

以下、web.xmlのサンプルです。

この設定だと、8~11行目でパッケージ名「net.tazakazushi.hello」のjarファイルの「HelloWorld」というクラス名に対して、「HelloWorldServlet」というサーブレット名をつけています。

さらに、13~16行目で「HelloWorldServlet」というサーブレットに対して、「/*」というURLを紐付けています。「*」は全てという意味なので、全てのURLがこのサーブレットにひも付きます。
全て、とは言っても、そもそもこのディレクトリは「testtest」という名前にしていたので、「http://localhost:8080/testtest/」以下が全てひも付きます。

表示を確認

「http://localhost:8080/testtest/」にアクセスしてみて、きちんと表示されたらOKです。絶対正しいはずなのにエラーの場合は、Tomcatを再起動させてみるといいかも。

関連記事

  • ■ システムの科学
    システム創成学科のシミュレーションコース的にはバイブル的存在であったと認識しております(笑)社会システムや人工物をどのように設計していくかについて俯瞰的に書かれているので、自分の思考のフレームができます。
PAGE TOP ↑