JAVAアプリケーションサーバー - Tomcat 72011/04/26 |
| [1] | Tomcat 7のインストールと設定です。wgetでとってくる際には こちらより最新のものを確認後、 取得してください。 |
|
[root@www ~]# wget http://ftp.riken.jp/net/apache/tomcat/tomcat-7/v7.0.12/bin/apache-tomcat-7.0.12.tar.gz [root@www ~]# tar zxvf apache-tomcat-7.0.12.tar.gz [root@www ~]# mv apache-tomcat-7.0.12 /usr/tomcat7 [root@www ~]# useradd -d /usr/tomcat7 tomcat useradd: warning: the home directory already exists. Not copying any file from skel directory into it. [root@www ~]# chown -R tomcat. /usr/tomcat7
|
| [2] | 起動スクリプトを作成しておきます。 |
|
[root@www ~]#
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=tomcat
LOCKFILE=/var/lock/subsys/tomcat
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
;;
status)
status tomcat
;;
*)
echo $"Usage: $0 {start|stop|restart|status}"
exit 1
;;
esac
exit $?
chmod 755 /etc/rc.d/init.d/tomcat7 [root@www ~]# /etc/rc.d/init.d/tomcat7 start
Starting Tomcat7:
[root@www ~]# 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 chkconfig --add tomcat7 [root@www ~]# chkconfig tomcat7 on
|
| [3] | Webブラウザで「http://(サーバー名またはIPアドレス):8080/」にアクセスして、 以下のような Tomcat のページが表示されることを確認してください。 |
|
| [4] | URLに8080を指定しなくてもアクセスできるように設定しておきます。 |
|
[root@www ~]#
vi /etc/httpd/conf.d/proxy_ajp.conf # 最終行に追記
ProxyPass /tomcat/ ajp://localhost:8009/
/etc/rc.d/init.d/httpd restart Stopping httpd: [ OK ] Starting httpd: [ OK ]
|
| [5] |
Webブラウザで「http://(サーバー名またはIPアドレス)/tomcat/」にアクセスして、
[3] の Tomcat のページが表示されることを確認してください。
|
| [6] | 現在の日時を表示するテストサーブレットを作成して動作を確認してみます。 |
|
[root@www ~]# mkdir /usr/tomcat7/webapps/ROOT/WEB-INF/classes [root@www ~]# chown tomcat. /usr/tomcat7/webapps/ROOT/WEB-INF/classes [root@www ~]# cd /usr/tomcat7/webapps/ROOT/WEB-INF/classes
[root@www 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>");
out.println("<head>");
out.println("<title>DayTime</title>");
out.println("</head>");
out.println("<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>");
out.println("</body>");
out.println("</html>");
}
}
javac -classpath /usr/tomcat7/lib/servlet-api.jar daytime.java
[root@www 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> |
| [7] | Webブラウザで「http://(サーバー名またはIPアドレス)/tomcat/daytime」にアクセスして、 以下のようなページが表示されることを確認してください。 |
|
|
|