今回は、Webアプリケーションコンテナの一つであるApache Tomcat(以降、Tomcat)にWebアプリケーションをGUIでデプロイする方法を紹介したいと思います。
今回の検証はTomcatバージョン8.5系、Windows OS 11Proで確認しています。
GUIでデプロイするための準備
実際にGUIでデプロイするために必要な準備があります。
それは、事前にManagerアプリケーションを有効化しておくことです。今回のGUIでデプロイする方法は、このManagerアプリケーションを使用するので、この作業が必要になります。
因みにManagerアプリケーションとは、Tomcatに標準で付属している管理用アプリケーションですが、デフォルトでは有効化されていません。
以前、別の記事でManagerアプリケーションを有効化するための記事を記載してるので、手順を知りたい方はご参照いただければと思います。
mr-star.hatenablog.com
サンプルのWebアプリケーションを用意する
GUIでデプロイするサンプルのWebアプリケーションを用意します。
Webアプリケーションは以下のような動作確認用のプログラムを1つ用意したものをwarファイルにまとめて用意します。

今回は、プログラムは以下のHelloServlet.javaを用意しました。
package hoge; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import javax.servlet.annotation.WebServlet; @WebServlet("/HelloServlet") public class HelloServlet extends HttpServlet { @Override public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { PrintWriter out = response.getWriter(); out.println("Hello!"); } }
上記のプログラムを含んだWebアプリケーションを、jarコマンドでwarファイルにまとめます。warファイルができたら準備完了です。

GUIでWebアプリケーションをデプロイする
それでは、準備が整いましたので本題に入っていきましょう。
以下のURLでTomcatのManagerアプリケーションへアクセスします。
http://localhost:8080/manager/html

画面中央あたりに以下の通り、「配備」セクションがあると思います。2つに分かれていますが、下の"WARファイルの配備"の部分に注目します。

「アップロードするWARファイルの選択」の「ファイルを選択」ボタンを押下すると、ブラウザのファイル選択ダイアログが開きます。そしたら、先ほど作成したwarファイルを見つけて、選択します。

そうすると、以下の通り選択したwarファイルが「ファイルを選択」ボタンの右あたりに表示されると思います。そうしたら、下にある「配備」ボタンを押下します。

上手く処理されると、以下の通りWebアプリケーションの一覧に先ほど選択したwarファイルのWebアプリケーションが表示されると思います。これでデプロイ作業は終わりになります。拍子抜けするほど簡単ですね。

動作確認してみます。問題なさそうですね。

GUIで再デプロイする場合
因みに、GUIで既に存在するWebアプリケーションを再デプロイすると以下のエラーが発生してしまいます。同じwarファイル名だとエラーにする仕様です。

そのため、再デプロイ時は先に「配備解除」をする必要があります。以下の通り該当のアプリケーションコマンド欄に「配備解除」があるので、これを押下します。

すると、以下の通りアプリケーション一覧から配備解除したアプリケーションの表示が消えます。

そしたら、再度同様の手順でManagerアプリケーションからGUIでwarファイルをデプロイすることができます。