SpringBoot2.2.4の内蔵TomcatでSSIServletを使う
対象読者
SpringBootを使ったWebサービスを開発しており、内蔵Tomcatを利用している。
また、SSI (Server Side Include) を利用しているため、SSIServlet
を使用している。
TL;DR
Tomcat 9.0.30ではSSI関連のモジュールが外部ライブラリ化していますので、
以下のTomcat SSIライブラリも依存関係に追加しなければならなくなりました。
経緯
JVNVU#98104709 Apache Tomcat の複数の脆弱性に対するアップデート
http://jvn.jp/vu/JVNVU98104709/index.html
により、SpringBootの内蔵Tomcatをバージョンアップする必要が出てきました。
そこで、SpringBootのバージョンを最新のリリースバージョン2.2.4.RELEASE
へと更新することにしました。
SpringBoot 2.2.4RELEASEの内蔵Tomcatのバージョン
公式ドキュメントによると、内蔵されたTomcatのバージョンは9.0.30
です。
Tomcat 9.0.30では、SSI関連モジュールが外部ライブラリ化されている!
ここで、Tomcat 9.0.30のChangeLogを参照すると、
Moved server-side include (SSI) module into a separate JAR library. (schultz)
と記載されています。
実際にbuild.gradle
ファイルにてSpringBootのバージョンを2.2.4.RELEASE
へと変更すると、
SSIServlet
が見つからなくなり、ビルドできなくなります。
どこに移動したかが書いていないので、MVN Repositoryを探索しました。
Tomcat SSIライブラリに分割されていた
MVN Repository内にて、Tomcat SSIライブラリを発見しました。
Spring Bootの内蔵Tomcatにバージョンをあわせて9.0.30
を選択して、build.gradle
のdependencies
に追加したところ、問題なくSSIServlet
を見つけられるようになり、ビルドが通りました。
まとめ
本記事では、Spring Boot 2.2.4.RELEASE内蔵のTomcat 9.0.30にて、SSIを使用するための依存ライブラリを紹介しました。
お役に立てれば幸いです。
Author And Source
この問題について(SpringBoot2.2.4の内蔵TomcatでSSIServletを使う), 我々は、より多くの情報をここで見つけました https://qiita.com/Tebasaki314/items/b15899897b122c111a34著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .