OSS探訪

Servlet・JSP・WebSocketを実行し、Java Web applicationを配備する

スコアの見方

OSS規模スコアはStars・Watchers・Forks・Contributorsを対数圧縮して重み付けした現在の規模指標(上限なし)です。発掘スコアは現在のOSS規模スコアから発掘時点のOSS規模スコアを引いた値、更新ペースは直近30日Commit数、成長モメンタムは直近の観測期間におけるOSS規模スコア差、OSS健全度は取得できた更新状況・Community Health・Releaseの0〜100評価です。

Stars
8,258
主要言語
Java
ライセンス
Apache-2.0
リポジトリ最終更新
2026/10/03
ページ内ナビ

概要

Apache Tomcatは、Java Web applicationを実行するServlet containerです。Jakarta Servlet、Pages(JSP)、Expression Language、WebSocketなどの仕様を実装し、WAR配備、HTTP connector、session管理、JNDI resource、TLSなどWeb application運用に必要な機能を提供します。

特徴と向いている用途

公式資料に基づく紹介・実機未検証 · 内容確認日:

主な特徴

Servlet・JSP・WebSocketの実行環境を提供する

Tomcat 11はJakarta Servlet 6.1、Pages 4.0、Expression Language 6.0、WebSocket 2.2などを実装します。Java Web applicationをWARまたは展開directoryとして配備し、HTTP requestをServletやJSPへ渡せます。

出典:[1][3]

connector・session・resource設定をserver側で管理する

HTTP/HTTPS connector、session、JNDI DataSource、Realm、access logなどをserver設定として管理できます。application codeと運用設定を分け、複数Web applicationを同じTomcat instanceで動かせます。

出典:[3][4]

CATALINA_HOMEとCATALINA_BASEでbinaryとinstance設定を分離する

TomcatのbinaryをCATALINA_HOME、instanceごとの設定・log・webappsをCATALINA_BASEへ分離できます。複数instance運用やversion更新時にbinaryと設定を分けて管理しやすくなります。

出典:[5]

向いている用途

Servlet/JSP中心のJava Web applicationを自社運用する環境に向く

Spring MVCを含むServletベースのWeb application、既存WAR、社内業務systemなどを自社serverやcontainer環境で運用したい場合の標準的な選択肢です。

出典:[1][3]

導入前の確認

11.0.26はJava 17以上とJakarta EE 11世代を前提にする

Tomcat 11.0.26はJava 17以上を必要とし、Servlet 6.1やPages 4.0などJakarta EE 11のWeb仕様を実装します。利用applicationとlibraryがこの世代に対応しているか確認してください。

出典:[3][6]

10.1系と9.0系も並行し、対象仕様が異なる

Tomcat 10.1.60はJakarta EE 10世代、Tomcat 9.0.122はJava EE 8世代を対象にします。Tomcat 9のsupport終了は2027年3月31日と告知されているため、既存systemでは移行計画も含めてrelease lineを選びます。

出典:[2]

9系以前から10/11系ではjavaxからjakartaへの変更が必要

Tomcat 10以降はJava EEからJakarta EEへの移行に伴い主要API packageがjavax.*からjakarta.*へ変わりました。applicationや依存libraryのsource/bytecode互換性を確認し、必要に応じて公式migration toolを使います。

出典:[2][6]

参考にした公式資料

  1. [1]Apache Tomcat README(2026-10-03)
  2. [2]Apache Tomcat releases(2026-10-03)
  3. [3]Apache Tomcat 11.0 documentation(2026-10-03)
  4. [4]Apache Tomcat 11 configuration reference(2026-10-03)
  5. [5]Apache Tomcat RUNNING.txt(2026-10-03)
  6. [6]Tomcat 11 migration guide(2026-10-03)
編集部からの補足

Java Web applicationの実行基盤を選ぶときは、Tomcatのmajor versionとアプリ側のServlet/Jakarta EE世代を最初に合わせるのが重要です。特に9系以前から10/11系へ移行する場合は、javax.*からjakarta.*への変更を単純なserver更新として扱わない方が安全です。

3ステップで試す

  1. 1

    Tomcat 11.0.26を取得して展開する

    Tomcat 11はJava 17以上が必要です。production利用ではdownload pageの案内に従ってPGPまたはSHA-512も検証してください。

    curl -LO https://dlcdn.apache.org/tomcat/tomcat-11/v11.0.26/bin/apache-tomcat-11.0.26.tar.gz && tar xzf apache-tomcat-11.0.26.tar.gz
  2. 2

    Tomcatをforegroundで起動する

    Unix系環境の例です。別terminalから動作確認するため、foregroundでserverを起動します。

    cd apache-tomcat-11.0.26 && bin/catalina.sh run
  3. 3

    default pageへaccessする

    Tomcatのdefault pageが返れば最小動作確認は完了です。停止は起動terminalでCtrl+Cを使います。

    curl http://localhost:8080/
公式READMEで確認

成長

成長の推移 · 直近30日

8,258 Stars

推移データを蓄積中です。

開発アクティビティ

直近90日・週次

Commit(直近30日)
245
Open PR
35

開発アクティビティを蓄積中です。

Built with

カテゴリとタグ

GitHubデータ

GitHubのデータGitHubの詳細データを見る

GitHub Topics

  • javaee
  • http
  • java
  • network-server
  • tomcat
Stars
8,258
Forks
5,402
Watchers
472
Open Issues
0
Contributors
162
所有者種別
Organization
主要言語
Java
ライセンス
Apache-2.0
リポジトリ最終更新
2026/10/03

このOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。

情報の誤りを報告

掲載内容に誤りや古い情報があればお知らせください。

このページを読んで、次に何をすればよいか分かりましたか?