CentOS 6
Sponsored Link

Tomcat 7 : インストール
2015/03/12
 
Tomcat 7 をインストールし、JAVAアプリケーションをサーバーサイドで実行できる環境を構築します。
[1]
[2] Tomcat 7 のインストールと設定です。以下のサイトで最新のものを確認してダウンロードしてください。
⇒ http://ftp.riken.jp/net/apache/tomcat/tomcat-7/
[root@dlp ~]#
wget http://ftp.riken.jp/net/apache/tomcat/tomcat-7/v7.0.59/bin/apache-tomcat-7.0.59.tar.gz

[root@dlp ~]#
tar zxvf apache-tomcat-7.0.59.tar.gz

[root@dlp ~]#
mv apache-tomcat-7.0.59 /usr/tomcat7

[root@dlp ~]#
useradd -M -d /usr/tomcat7 tomcat7

[root@dlp ~]#
chown -R tomcat7. /usr/tomcat7
[3] 起動スクリプトを作成しておきます。
[root@dlp ~]#
vi /etc/rc.d/init.d/tomcat7
#!/bin/bash

# Tomcat7: Start/Stop Tomcat 7
#
# chkconfig: - 90 10
# description: Tomcat is a Java application Server.

. /etc/init.d/functions
. /etc/sysconfig/network

CATALINA_HOME=/usr/tomcat7
TOMCAT_USER=tomcat7

LOCKFILE=/var/lock/subsys/tomcat7

RETVAL=0
start(){
    echo "Starting Tomcat7: "
    su - $TOMCAT_USER -c "$CATALINA_HOME/bin/startup.sh"
    RETVAL=$?
    echo
    [ $RETVAL -eq 0 ] && touch $LOCKFILE
    return $RETVAL
}

stop(){
    echo "Shutting down Tomcat7: "
    $CATALINA_HOME/bin/shutdown.sh
    RETVAL=$?
    echo
    [ $RETVAL -eq 0 ] && rm -f $LOCKFILE
    return $RETVAL
}

case "$1" in
    start)
        start
        ;;
    stop)
        stop
        ;;
    restart)
        stop
        start
        ;;
    *)
        echo $"Usage: $0 {start|stop|restart}"
        exit 1
        ;;
esac
exit $?

[root@dlp ~]#
chmod 755 /etc/rc.d/init.d/tomcat7

[root@dlp ~]#
/etc/rc.d/init.d/tomcat7 start

Starting Tomcat7:
Using CATALINA_BASE:   /usr/tomcat7
Using CATALINA_HOME:   /usr/tomcat7
Using CATALINA_TMPDIR: /usr/tomcat7/temp
Using JRE_HOME:        /usr/java/default
Using CLASSPATH:       /usr/tomcat7/bin/bootstrap.jar:/usr/tomcat7/bin/tomcat-juli.jar
Tomcat started.

[root@dlp ~]#
chkconfig --add tomcat7

[root@dlp ~]#
chkconfig tomcat7 on
[4] ローカルホスト または 任意のクライアントで Webブラウザを起動し、 「http://(サーバーホスト名またはIPアドレス):8080/」にアクセスして、Tomcat デフォルトページが表示されることを確認します。
[5] 現在の日時を表示するテストサーブレットを作成して動作を確認します。
[root@dlp ~]#
mkdir /usr/tomcat7/webapps/ROOT/WEB-INF/classes

[root@dlp ~]#
chown tomcat7. /usr/tomcat7/webapps/ROOT/WEB-INF/classes

[root@dlp ~]#
cd /usr/tomcat7/webapps/ROOT/WEB-INF/classes

[root@dlp classes]#
vi daytime.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.Calendar;

public class daytime extends HttpServlet {
    public void doGet(HttpServletRequest request
    ,HttpServletResponse response)

    throws IOException, ServletException{
        response.setContentType("text/html");
        PrintWriter out = response.getWriter();
        Calendar cal = Calendar.getInstance();
        out.println("<html>\n<head>\n<title>DayTime</title>\n</head>\n<body>");
        out.println("<div style=\"font-size: 40px; text-align: center; font-weight: bold\">");
        out.println(cal.get(Calendar.YEAR) + "/" + (cal.get(Calendar.MONTH) + 1) + "/" + 
        cal.get(Calendar.DATE) + " " + cal.get(Calendar.HOUR_OF_DAY) + ":" + cal.get(Calendar.MINUTE));
        out.println("</div>\n</body>\n</html>");
    }
}

[root@dlp classes]#
javac -classpath /usr/tomcat7/lib/servlet-api.jar daytime.java

[root@dlp classes]#
vi /usr/tomcat7/webapps/ROOT/WEB-INF/web.xml
# 以下を<web-app> - </web-app>の間の適当なところへ追記

  <servlet>
     <servlet-name>daytime</servlet-name>
     <servlet-class>daytime</servlet-class>
  </servlet>
  <servlet-mapping>
     <servlet-name>daytime</servlet-name>
     <url-pattern>/daytime</url-pattern>
  </servlet-mapping>
[6] 「http://(サーバーのホスト名またはIPアドレス):8080/daytime」にアクセスして、以下のようなページが表示されることを確認します。
[7] Apache http サーバーと連携し、URLに 8080 を指定しなくてもアクセスできるようにする場合は、以下のように設定します。 事前にこちらを参考に Apache http サーバーをインストールして起動しておいてください。
[root@dlp ~]#
vi /etc/httpd/conf.d/proxy_ajp.conf
# 最終行に追記

ProxyPass /tomcat7/ ajp://localhost:8009/
[root@dlp ~]#
/etc/rc.d/init.d/httpd restart
[8] 「http://(サーバーのホスト名またはIPアドレス)/tomcat7/」にアクセスして、デフォルトページが表示されることを確認します。
 
Tweet