Tomcat 9.0.88 のリリースノート

このドキュメントは 2024 年 4 月 16 日にリリースされた Tomcat 9.0.88 のリリースノートの日本語訳です。
ダウンロードは Tomcat ダウンロードより行えます。
以下はリリースの詳細と、最新情報およびドキュメントを補足するその他情報について記載しています。

不具合修正(Catalina)

* AsyncContext 使用時に、AsyncContext がリサイクルされた後にその AsyncContext を使おうとした場合に、NullPointerException ではなく IllegalStateException が投げられるようになりました。

* StandardServer.services を保護するスレッドセーフ化の仕組みが、単純同期ロックから ReentrantReadWriteLock に変更され、複数のリーダが同時に動作できるようになりました。

* Service コネクタ、Container チルドレン、Service エグゼキュータが改善され、同期アクセスで ReentrantReadWriteLock が使用されるようになりました。

* ファイルを Servlet API でアップロードしようとした時、そのファイルが Integer.MAX_VALUE より大きい場合の整数オーバーフローの処理が改善されました。

* 読み込みエラーを処理する際のレスポンスのコミットの可能性が対処されるようになりました。(68862)

不具合修正(Coyote)

* エンドポイントに threadsMaxIdleTime 属性が追加されました。これにより、内部のエグゼキュータが設定された minSpareThreads のサイズにスケールバックするまでの時間を設定できるようになりました。

不具合修正(Jasper)

* JSP エンジンがリクエスト/レスポンスを Writer ではなく OutputStream を使用している Servlet に転送する場合が対処されるようになりました。これまでは、このような場合に、Writer を取得しようとする試みが続いた場合、コードパス上で IllegalStateException をトリガしていました。

* タグライブラリが JAR ファイルにパッケージされ、Web アプリケーションが展開したディレクトリではなく WAR ファイルとしてデプロイされた場合が正しく処理されるようになりました。

* アプリケーションがカスタムの XMLInputFactory を使用している場合、そのアプリケーションの ClassLoader が JSP コンパイラによってピン留めされることが防止されるようになりました。

機能追加・改良(Catalina)

* SemaphoreValve に highConcurrencyStatus 属性が追加され、セマフォから権限を獲得できなかった場合に、バルブがクライアントにエラーステータスコードを返すこともできるようになりました。

* SecurityListener に、実行中の Tomcat インスタンスのそのビルド時からの “age” の検査処理が追加され、サーバが古い場合警告がログ出力されるようになりました。

機能追加・改良(Other)

* Checkstyle が 10.14.1 が更新されました。

* Apache Commons BCEL の内部フォークが 6.8.2 に更新されました。

* Apache Commons Codec の内部フォークが 1.16.1 に更新されました。

* フランス語翻訳が改善されました。

* 日本語翻訳が改善されました。

* 中国語翻訳が改善されました。

詳細は以下をご覧ください。

https://tomcat.apache.org/tomcat-9.0-doc/changelog.html#Tomcat_9.0.88_(remm)