Tomcat 9 : Javaアプリケーションサーバー2018/10/17 |
Tomcat 9 をインストールし、Javaアプリケーションをサーバーサイドで実行できる環境を構築します。
|
|
[1] |
こちらを参考に Java 実行環境をインストールしておきます。
|
[2] | Tomcat 9 のインストールと設定です。 事前にダウンロードサイトで最新版を確認しておいてください。 ⇒ https://tomcat.apache.org/download-90.cgi |
[root@dlp ~]# curl -O http://ftp.riken.jp/net/apache/tomcat/tomcat-9/v9.0.12/bin/apache-tomcat-9.0.12.tar.gz [root@dlp ~]# tar zxvf apache-tomcat-9.0.12.tar.gz [root@dlp ~]# mv apache-tomcat-9.0.12 /usr/libexec/tomcat9 [root@dlp ~]# useradd -M -d /usr/libexec/tomcat9 tomcat [root@dlp ~]# chown -R tomcat. /usr/libexec/tomcat9
|
[3] | Systemd 設定ファイルを作成しておきます。 |
[root@dlp ~]#
vi /usr/lib/systemd/system/tomcat9.service # 新規作成 [Unit] Description=Apache Tomcat 9 After=network.target [Service] Type=oneshot ExecStart=/usr/libexec/tomcat9/bin/startup.sh ExecStop=/usr/libexec/tomcat9/bin/shutdown.sh RemainAfterExit=yes User=tomcat Group=tomcat [Install] WantedBy=multi-user.target systemctl start tomcat9 [root@dlp ~]# systemctl enable tomcat9 |
[4] | ローカルホスト または 任意のクライアントで Webブラウザを起動し、 [http://(サーバーホスト名またはIPアドレス):8080/] にアクセスして、Tomcat デフォルトページが表示されることを確認します。 |
[5] | 現在の日時を表示するテストサーブレットを作成して動作を確認します。 |
[root@dlp ~]# mkdir /usr/libexec/tomcat9/webapps/ROOT/WEB-INF/classes [root@dlp ~]# chown tomcat. /usr/libexec/tomcat9/webapps/ROOT/WEB-INF/classes [root@dlp ~]# cd /usr/libexec/tomcat9/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>"); } } javac -classpath /usr/libexec/tomcat9/lib/servlet-api.jar daytime.java
[root@dlp classes]#
vi /usr/libexec/tomcat9/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 /tomcat9/ ajp://localhost:8009/
systemctl restart httpd |
[8] | [http://(サーバーのホスト名またはIPアドレス)/tomcat9/] にアクセスして、デフォルトページが表示されることを確認します。 |
Sponsored Link |