6. Tomcatをインストールする

Webアプリの運用環境Tomcatをインストールする。

Tomcatの概念についてはitb-TECHや@ITでわかりやすく説明されている。

http://itbtech.itboost.co.jp/jserv/jserv_04.php

http://www.atmarkit.co.jp/fjava/index/index_java.html

 

■Java1.5を用意する

Tomcat5.5からは、Java1.5が必要らしい。しかし自分が使っているバージョンは1.4.2なのだ。だって今使っているWebObjects5.2はJava1.4.2対応なんだもん。

 

う、Tomcat5.5使うには、Java1.5(J2SE5.0)をインストールをせねばいかん...ということか。

 

J2SE 5.0 「リリース4」だと、1.4.2よりも優先され、デフォルトバージョンになってしまうので、WebObjectsへの影響がコワイ。なので J2SE 5.0 リリース3をインストールしておいた。リリース3だと、特別な指定をしないかぎり、1.4.2が通常起動されるのだ。

 

J2SE 5.0 リリース3のダウンロード 

http://www.apple.com/jp/ftp-info/reference/java2se50release3.html

情報はこちら

http://docs.info.apple.com/article.html?artnum=302412-ja

 

でも、リリース4をインストールしたかったりもするもんだ。そんな人は、マニュアルでデフォルトバージョンをコントロールするのがいいと思われる。

 

デフォルトのJavaのバージョンを変更したいときはココをいじる。

システム > ライブラリ > Frameworks > JavaVM.framework > Versions > CurrentJDK 

このCurrentJDKは、エイリアス。コマンド + I でオリジナルのディレクトリが1.4.2をさしている事がわかる。リリース4をインストールして、デフォルトがJ2SE 5.0 になってしまい困るときは、このようにすれば元にもどる。

% cd /System/Library/Frameworks/JavaVM.framework/Versions
% sudo ln -fsh 1.4.2 CurrentJDK

 

J2SE 5.0 Release 4 アップデートをインストール後の、Java の問題

http://docs.info.apple.com/article.html?artnum=303526-ja 

 

■Tomcatをダウンロードする

http://tomcat.apache.org/download-55.cgi(すぐにダウンロードできる)

http://tomcat.apache.org/ (ホーム。その他のバージョンもダウロードできる) 

http://jakarta.apache.org/site/downloads/index.html(リンクがわかりにくい) 

Tomcat5.5.17をダウンロードして解凍する。

% tar zxvf apache-tomcat-5.5.17.tar.gz  

解凍したら、テキトーなとこに置いておく。どこでもいいんだけど、ファインダで確認しやすいので、アプリケーションのフォルダに入れておいた。

/Applications/apache-tomcat-5.5.17

とアクセスもしやすいかな...。 

 

運用するSolaris, Linuxにあわせて、/usr/local/tomcat にする場合、

# mv apache-tomcat-5.5.17 /usr/local/
#  ln -s /usr/local/apache-tomcat-5.5.17 /usr/local/tomcat

ホームディレクトリにエイリアスを作っておくと便利かも。

% cd ~/
% ln -s /usr/local/tomat tomcat

 

■とりあえずTomcatを起動する

 tomcatアプリケーションの起動スクリプトをキックして、とりあえず起動してちゃんと動くことを確認する。

% cd /Applications/apache-tomcat-5.5.17/bin/
% ./startup.sh
Using CATALINA_BASE:   /Applications/apache-tomcat-5.5.17
Using CATALINA_HOME:   /Applications/apache-tomcat-5.5.17
Using CATALINA_TMPDIR: /Applications/apache-tomcat-5.5.17/temp
Using JRE_HOME:       /System/Library/Frameworks/JavaVM.framework/Versions/1.5/Home

 あれれ、JRE_HOMEを J2SE 1.5 を指しているようで、無事に動いてしまいました。

 

startup.shの中身をのぞくと、Darwinという文字があったので、1.5をうまく指定するようにしてあるのかもしれません。だって、java -version すると1.4.2のままですから...。

 

■接続してみる

Safari で、http://localhost:8080/ へアクセスする。

 


tomcat | インストール1


 

 左メニューの下の方、JSP Examples をクリックすると、

 


tomcat | インストール2


 

 このようにサンプルも見れて、動作の確認OK。

 

■Tomcatの起動と終了

% cd /Applications/apache-tomcat-5.5.17/bin/
% ./startup.sh ←起動
% ./shutdown.sh ←終了

 

■起動スクリプトを用意する

起動、停止を簡単にするために自分のディレクトリに起動スクリプトを用意しておく。

% cd ~/
% mkdir bin
% cd bin

binディレクトリに起動スクリプトを書いておく。

start_tomcat 

#!/bin/sh
export CATALINA_HOME=/usr/local/tomcat
export JAVA_HOME=/usr
$CATALINA_HOME/bin/startup.sh

 

stop_tomcat 

#!/bin/sh
export CATALINA_HOME=/usr/local/tomcat
export JAVA_HOME=/usr
$CATALINA_HOME/bin/shutdown.sh

 

■web.xmlを編集する

$CATALINA_HOME/conf/web.xmlを開いて、以下の4箇所のコメントアウトを削除する。

100行目あたり

<!-- ←削除
    <servlet>
        <servlet-name>invoker</servlet-name>
        <servlet-class>
          org.apache.catalina.servlets.InvokerServlet
        </servlet-class>
        <init-param>
            <param-name>debug</param-name>
            <param-value>0</param-value>
        </init-param>
        <load-on-startup>2</load-on-startup>
    </servlet>
--> ←削除

 

350行あたり

    <!-- The mapping for the invoker servlet -->
<!-- ←削除
    <servlet-mapping>
        <servlet-name>invoker</servlet-name>
        <url-pattern>/servlet/*</url-pattern>
    </servlet-mapping>
--> ←削除

 

「Invoker Servlet」(web.xmlで明示されていない無名サーブレットクラス)は、セキュリティの脆弱さから非推奨とされている。web.xmlの記述が面倒なのと、今の段階ではテストを中心に行うのでInvoker Servletとし、実運用ではweb.xmlでURLマッピングする。