
このドキュメントは 2025 年 4 月 9 日にリリースされた Tomcat 9.0.104 のリリースノートの日本語訳です。
ダウンロードは Tomcat ダウンロードより行えます。
以下はリリースの詳細と、最新情報およびドキュメントを補足するその他情報について記載しています。
本リリースノートには Tomcat バージョン 9.0.104 および 9.0.103 のリリース情報が記載されています。9.0.103 は単独ではリリースされていません。
9.0.104
不具合修正(Catalina)
* AccessLogValve の SimpleDateFormat パターンにおける SSS の使用が修正されました。
* リライトバルブで、パスパラメータの書き換え生成が行われる可能性がある場合の処理が修正されました。
* 大量のファイルがある場合のディレクトリ一覧表示の最適化が行われました。(69643)
不具合修正(Other)
* service.bat で sun.io.useCanonCaches を設定するようになりました。
* リリースをビルドするための Java の最小バージョンが Java 22 になり、Tomcat 10.1 と同等になりました。これにより、java-ffm.home プロパティを使用する必要がなくなりました。
9.0.103
不具合修正(Catalina)
* 部分的な PUT リクエストで指定された範囲と送信されたコンテンツ量が一致しない場合、400 を返すように修正されました。
* ExtendedAccessLogValve における time-taken トークンの解析処理が修正されました。
* SSL エンジンと FIPS モードの設定時に FFM OpenSSL コードの呼び出しが修正されました。
* RemoteIpFilter と RemoteIpValve のデフォルトの内部プロキシに IPv6 のローカルアドレス(RFC 4193 および RFC 4291)が追加されました。(69600)
* カスタム Web アプリケーションクラスローダーを使用しているユーザ、またはリフレクションを使用して Web アプリケーションクラスローダーに外部リポジトリを動的に追加しているユーザ向けに、見つからないクラスリソースキャッシュとの統合が改善されました。(69615)
* リソースキャッシュ有効時に Web アプリケーション内から ClassLoader.getResource().getContent() を呼び出すと失敗する長年の不具合が修正されました。(69623)
* JsonErrorReportValve での NullPointerException が修正されました。(69634)
* JsonErrorReportValve に、ErrorReportValve と同等のスローされた例外のスタックトレース出力が追加されました。
* RewriteValve における %nn URL エンコードの処理が改善され、書き換えルールでの %nn の使用方法がドキュメントに記載されました。
* WebappClassLoaderBase.getResource(“”) 呼び出し時の例外が修正されました。
不具合修正(Coyote)
* MD5 初期化失敗を許容するように修正されました。(69607)
* 無効な優先度フィールド値を持つ HTTP/2 の優先度フレームを無視するよう修正されました。(69614)
* HTTP/2 処理中の予期しないエラーの処理が改善されました。
* PROFILE=SYSTEM などの OpenSSL プロファイルを FFM 経由で処理するコードが欠けていた問題が修正されました。
不具合修正(Cluster)
* ReplicationValve におけるクロスコンテキストセッションのリセット処理が修正されました。
機能追加・改良(Catalina)
* 新しい RateLimiter 実装 org.apache.catalina.util.ExactRateLimiter が追加されました。これにより、org.apache.catalina.filters.RateLimitFilter と組み合わせて使用することで、設定された正確な値に基づいてレート制限の設定が可能になりました。
* Default サーブレットに新しい初期化パラメータ allowPostAsGet が追加されました。このパラメータは、POST メソッドを用いた静的リソースへの直接リクエスト(つまり、フォワードやインクルードではないリクエスト)を、GETメソッドが使用されたかのように処理するかどうかを制御します。許可されていない場合、リクエストは拒否されます。GET メソッドが使用されたかのようにリクエストを処理するデフォルトの動作は変更されていません。
機能追加・改良(Coyote)
* HTTPS 有効なコネクタでカスタム SSLContext を簡単に使用できるよう処理が簡略化されました。
機能追加・改良(Jasper)
* JSP ランタイムライブラリでのカスタム URL エンコードが java.net.URLEncoder.encode() の呼び出しに置き換えられました。
* Java Compiler API を使用するコンパイラを追加し、展開済みの Web アプリケーションがサポートされるようになりました。使用する compilerClassName は org.apache.jasper.compiler.JavaCompiler です。
* JSP コンパイルのコンパイラソースおよびコンパイラターゲットとして Java 25 (値 25) を指定できるようになりました。これらの値をサポートしていない Eclipse JDT コンパイラバージョンで使用すると、警告がログに記録され、デフォルト値が使用されます。
機能追加・改良(Web applications)
* ドキュメント: Tomcat の内部ログ出力に JULI ではなくLog4j を使用する方法を説明した Log4j ドキュメントへのリンクが追加されました。
* ドキュメント: Web アプリケーションが Request または ServletContext 経由で利用できるランタイム属性がドキュメント化されました。
機能追加・改良(Other)
* ファイルロックの問題を回避するため、JSign が 6.0 に戻されました。
* NSIS が 3.11 に更新されました。
* ByteBuddy が 1.17.4 に更新されました。
* Checkstyle が 10.21.4 に更新されました。
* SpotBugs が 4.9.3 に更新されました。
* フランス語翻訳が改善されました。
* 日本語翻訳が改善されました。
詳細は以下をご覧ください。
https://tomcat.apache.org/tomcat-9.0-doc/changelog.html#Tomcat_9.0.104_(remm)