# 1.9. 更新履歴

更新日付 | 更新箇所 | 更新内容
--- | --- | ---
2026-03-30 | - | 1.11.1 RELEASE版公開
| 全般 | ガイドラインの誤記(タイプミスや単純な記述ミスなど)の修正 記載内容の修正・追加 ライブラリのバージョン定義に関するNoteを削除 Spring Framework ReferenceへのリンクURLを変更 記載内容の削除 Spring Framework理解度チェックテストに関する記述を削除
| ガイドラインの観点別マッピング | OWASP Top 10 を2021版から2025版へ変更 OWASP(Open Web Application Security Project)による観点の更新
| Macchinetta Server Framework (1.x)のスタック | 記載内容の修正・追加 Terasoluna Dependenciesに関する説明を追加 利用するOSSのバージョンを更新 Spring Bootを3.5.9に更新 MyBatisを3.5.19に更新 MyBatis Springを3.0.5に更新 Apache Commons BeanUtilsを1.11.0に更新 Guavaを33.5.0-jreに更新 Apache Commons Collectionsを4.5.0に更新 Apache Commons IOを2.20.0に更新 MapStructを1.6.3に更新 OpenPDFを2.0.5に更新 Apache POIを5.4.1に更新 Spring Bootのバージョン更新に伴い利用するOSSのバージョンを更新 Spring Frameworkを6.2.15に更新 Spring Dataを3.5.7に更新 Spring Securityを6.5.7に更新 AspectJを1.9.25.1に更新 Logbackを1.5.22に更新 SLF4Jを2.0.17に更新 Jacksonを2.19.4に更新 Hibernate Validatorを8.0.3.Final(Bean Validation 3.1)に更新 Apache Commons Langを3.19.0に更新 Apache Commons DBCPを2.13.0に更新 Jakarta Mailを2.0.5に更新 Apache HttpClient5を5.5.1に更新 Lombokを1.18.42に更新 単体テストで利用するOSSのバージョンを更新 JUnitを4.13.2に更新 Hamcrestを3.0に更新 Mockitoを5.17.0に更新 Spring Testを6.2.15に更新
| Webアプリケーション向け開発プロジェクトの作成 | 削除 「ブランクプロジェクト」の追加にともない削除
| ブランクプロジェクト | 新規追加 各ページに分散していたブランクプロジェクトに関する内容を1ページに集約
| 入力チェック | 記載内容の修正・追加 「ネストしたBeanの単項目チェック」において、ネストしたBeanのコレクションに対するバリデーションの記載内容を修正
| 例外ハンドリング | 記載内容の削除 HTTPステータスコードの表を削除し、DefaultHandlerExceptionResolverのJavaDocへリンクするよう修正
| ファイルアップロード | 記載内容の修正・追加 Multipartに関する制限についての説明を追加
| システム時刻 | 記載内容の修正 節構成の見直し
| STSの設定手順 | 記載内容の修正 記載内容をSTS5の最新バージョンに準じた内容に修正
| オフライン環境におけるアプリケーション開発 | 新規追加 「Webアプリケーション向け開発プロジェクトの作成」の「オフライン環境におけるアプリケーション開発」の内容を移動
| RESTクライアント（HTTPクライアント） | 記載内容の修正 内容の見直しに伴い、Overviewの構成と説明を修正 内容の見直しに伴い、How to useの構成と説明を修正 内容の見直しに伴い、How to extendの構成と説明を修正 非同期通信の説明をAppendixに移動 HTTP Proxyサーバの設定方法をHow to extendに移動 記載内容の追加 RestTemplateの廃止予定に伴い、RestClientを推奨とする説明を追加 `ClientHttpRequestFactory`の実装として、`HttpComponentsClientHttpRequestFactory`の利用を推奨とする旨の説明を追加 URLの生成に関する説明を追加 リクエスト初期化に関する説明を追加 `ClientHttpRequestInterceptor`と`ClientHttpRequestInitializer`の使い分けについての説明を追加 レスポンス取得後処理に関する説明を追加 `baseUrl`の設定に関する説明を追加 HTTPステータスコードでハンドリングする方法に`NoOpResponseErrorHandler`の説明を追加 認証要求の設定に関する説明を追加 URL生成処理をカスタマイズする方法についての説明を追加
2025-03-28 | - | 1.11.0 RELEASE版公開
| 全般 | ガイドラインの誤記(タイプミスや単純な記述ミスなど)の修正 記載内容の改善 記載内容の修正・追加 Logbackの `<logger>`タグの `level`属性が非推奨な実装になっていたため、適切な実装に修正 Stringフィールドに付与する入力必須チェック用のアノテーションを適切なものに修正 記載内容の削除 非推奨としていたJoda Timeに関する記述を削除
| Macchinetta Server Framework (1.x)のスタック | 記載内容の修正 利用するOSSのバージョンを更新 Spring Bootを3.4.1に更新 MyBatisを3.5.17に更新 MyBatis Springを3.0.4に更新 SLF4Jを2.0.16に更新 Apache POIを5.3.0に更新 Guavaを33.3.1-jreに更新 Apache Commons IOを2.18.0に更新 Apache HttpClient5を5.4.2に更新 Spring Bootのバージョン更新に伴い利用するOSSのバージョンを更新 Spring Frameworkを6.2.1に更新 Spring Dataを3.4.1に更新 Spring Securityを6.4.2に更新 AspectJを1.9.22.1に更新 Logbackを1.5.12に更新 Jacksonを2.18.2に更新 Thymeleafのバージョンを3.1.3に更新 Hibernate Validatorを8.0.2.Final(Bean Validation 3.0)に更新 MapStructを1.6.3に更新 Apache Commons Langを3.17.0に更新 Apache Commons DBCPを2.12.0に更新 Jakarta Mailを2.0.3に更新 Lombokを1.18.36に更新 単体テストで利用するOSSのバージョンを更新 DB Unitを2.8.0に更新 Mockitoを5.14.2に更新
| Webアプリケーション向け開発プロジェクトの作成 | 記載内容の追加 プロジェクト情報に開発者とソース管理システムを追加
| アプリケーション層の実装 | 記載内容の修正 引数に付与するアノテーションのvalue属性の省略についての記述から`-g`オプションの記述を削除
| 入力チェック | 記載内容の追加 入力必須チェックについての詳細な説明を追加
| 例外ハンドリング | 記載内容の追加 SystemExceptionResolverの設定項目に `checkCause`と `checkSubClass`ついての記述を追加
| セッション管理 | 記載内容の修正 ModelAttributeで指定したオブジェクトが存在しない場合に発生する例外が`IllegalStateException`に変更されたため、例外ハンドリングの実装例を修正
| RESTクライアント（HTTPクライアント） | 記載内容の修正 `DefaultResponseErrorHandler`にメソッドが追加されたため、オーバーライドする対象を追加 通信タイムアウトの設定のXML Configの `SimpleClientHttpRequestFactory`についての記述を修正 SSLコンテキストを設定する際に使用する`PoolingHttpClientConnectionManagerBuilder#setSSLSocketFactory`が非推奨となったことへの対応
| SOAP Web Service（サーバ/クライアント） | 移動 Spring Frameworkが提供していたJakarta XML Web Servicesの連携機能が削除されたことに伴い該当ページをAppendixへ移動していたが、Jakarta XML Web Servicesの記述に変更しWeb Serviceにページを戻す対応を実施 記載内容の修正・追加 アプリケーションサーバに依存する記述について、動作検証環境と合わせて、Apache Tomcatを前提とした記述に統一 Java EEからJakarta EEへの切り替えに伴い、Jakarta EEの記述に修正 Jakarta XML Web Servicesベースの内容で改定 コードファーストに準拠した記載とするため、wsimportの内容を削除
| データベースアクセス（共通編） | 記載内容の修正 log4jdbc-remixの代替となるO/R Mapper(MyBatis)のログ出力設定の実装例を追加
| データベースアクセス（MyBatis3編） | 記載内容の修正 独自TypeHandlerの実装の記述を修正
| JMS(Jakarta Messaging) | 記載内容の修正 ActiveMQ Client 2.32.0より`ActiveMQConnectionFactory#setDeserializationWhiteList`が非推奨となったことへの対応
| 認証 | 記載内容の修正・追加 ログアウト処理の仕組みに、`CompositeLogoutHandler`の説明を追加 主なLogoutHandlerの実装クラスに、`TokenBasedRememberMeServices`, `PersistentTokenBasedRememberMeServices`の説明を追加 主なLogoutSuccessHandlerの実装クラスから、`DelegatingLogoutSuccessHandler`の説明を削除 主なLogoutSuccessHandlerの実装クラスに、`ForwardLogoutSuccessHandler`の説明を追加 PasswordEncoderを明示的に設定するように修正
| 認可 | 記載内容の修正・追加 `SystemExceptionResolver`で`AuthorizationDeniedException`を捕捉しないようにするための設定をTipに追加 Spring Security 6.3.0より`RoleHierarchyImpl#setHierarchy`が非推奨となったことへの対応 ロールの階層化に関する説明を修正
| ブラウザのセキュリティ対策機能との連携 | 記載内容の修正 Spring Security 6.1.0より`HeadersConfigurer#permissionsPolicy`が非推奨となったことへの対応
| Java SE 17以降のバージョンを利用するための設定 | 記載内容の修正 Java及びJakartaのバージョンに関する記述を修正
| 日付操作(Joda Time) | 削除 非推奨としていたJoda Timeに関する記述を削除
| STSの設定手順 | 記載内容の修正・追加 記載内容をSTS4の最新バージョンに準じた内容に修正 Javaバージョンが異なる場合の対応を追加
2024-03-28 | - | 1.10.0 RELEASE版公開
| 全般 | ガイドラインの誤記(タイプミスや単純な記述ミスなど)の修正 記載内容の改善 記載内容の修正・追加 Apache Commons DBCP 2.10.0より`org.apache.commons.dbcp2.BasicDataSource#setMaxWaitMillis`が非推奨となったことへの対応 アプリケーションサーバに依存する記述について、動作検証環境と合わせて、Apache Tomcatを前提とした記述に統一
| Macchinetta Server Framework (1.x)のスタック | 記載内容の修正 利用するOSSのバージョンを更新 Spring Bootを3.2.2に更新 MyBatisを3.5.15に更新 MyBatis Springを3.0.3に更新 Jakarta Dependency Injectionを2.0.1に更新 SLF4Jを2.0.12に更新 OpenPDFを1.3.35に更新 Apache POIを5.2.5に更新 Guavaを33.0.0-jreに更新 Apache Commons IOを2.15.1に更新 Spring Bootのバージョン更新に伴い利用するOSSのバージョンを更新 Spring Frameworkを6.1.3に更新 Spring Dataを3.2.2に更新 Spring Securityを6.2.1に更新 AspectJを1.9.21に更新 Logbackを1.4.14に更新 Jacksonを2.15.3に更新 Thymeleafのバージョンを3.1.2に更新 Hibernate Validatorを8.0.1.Final(Bean Validation 3.0)に更新 MapStructを1.5.5.Finalに更新 Apache Commons Langを3.13.0に更新 Apache Commons DBCPを2.10.0に更新 Jakarta Mailを2.0.2に更新 Apache HttpClient5を5.2.3に更新 Lombokを1.18.30に更新
| Webアプリケーション向け開発プロジェクトの作成 | 記載内容の修正 `maven-compiler-plugin`のデフォルト設定に関する説明を追加
| アプリケーション層の実装 | 記載内容の修正 リクエストパスの拡張子によるパターンマッチングおよび末尾”`/`“でのアクセスに関する記述をAppendixに追加 `@PathVariable`と`@RequestParam`のvalue属性の省略についての記載をAppendixへ移動
| Ajax | 記載内容の修正 `BindException`のハンドリングについての説明を削除
| RESTful Web Service | 記載内容の修正 `BindException`の説明及びハンドリングについての説明を削除 `ServletUriComponentsBuilder`に関するTipを修正
| RESTクライアント（HTTPクライアント） | 記載内容の修正 `RestTemplate`でContent-Lengthが出力されないことに関するNoteを追加 `SimpleClientHttpRequestFactory`のタイムアウト設定が間違った型にマッピングされる事象に関するWarningを追加 コンストラクタがオーバーロードされている場合に誤ったコンストラクタが使われる件に関するWarningを追加
| データベースアクセス（共通編） | 記載内容の修正 factory属性省略時に使用されるコネクションプールに関する説明を修正
| ロギング | 記載内容の修正 Logbackの設定の読み込みについてのNoteを修正
| E-mail送信(SMTP) | 記載内容の削除 JVMオプションの`sun.nio.cs.map`に関する記述を削除
| JMS(Jakarta Messaging) | 記載内容の修正 `ActiveMQConnectionFactory`のクローズに関するNoteを追加
| 認証 | 記載内容の修正 `delete-cookies`に関する古いTIPを削除 非推奨アルゴリズムの紹介をAppendixに移動 `UserDetails`を実装した`AccountUserDetails`の実装例を修正
2023-04-28 | - | 1.9.1 RELEASE版公開
| 全般 | ガイドラインの誤記(タイプミスや単純な記述ミスなど)の修正 記載内容の改善 記載内容の修正・追加 ログインジェクション対策としてlogbackのフォーマットパターンを修正 Jakarta EE 8 ベースからJakarta EE 10 ベースへ切り替えることに伴う記述修正 Java 1.8 ベースから Java 17 ベースへ切り替えることに伴う記述修正 Tilesに関する記述を削除 Dozerに関する記述を削除 リクエストのハンドラメソッドに@RequestMapping合成アノテーションを使用するように修正 Spring Securityのパス解析で使用されるMatcherがAntPathRequestMatcherとなるように修正
| このドキュメントが示すこと | 記載内容の修正 動作検証環境に関するNoteを修正
| Macchinetta Server Framework (1.x)のスタック | 記載内容の修正 利用するOSSのバージョンを更新 Spring Bootを3.0.1に更新 MyBatisを3.5.11に更新 MyBatis Springを3.0.1に更新 Jakarta Dependency Injectionを2.0.1に更新 OpenPDFを1.3.30に更新 Apache POIを5.2.3に更新 Guavaを31.1-jreに更新 commons-collectionsをcommons-collections4の4.4に更新 Spring Bootのバージョン更新に伴い利用するOSSのバージョンを更新 Spring Frameworkを6.0.3に更新 Spring Dataを3.0.0に更新 Spring Securityを6.0.1に更新 AspectJを1.9.19に更新 Logbackを1.4.5に更新 SLF4Jを2.0.6に更新 Jacksonを2.14.1に更新 Thymeleafを3.1.1に更新 Hibernate Validatorを8.0.0.Final(Bean Validation 3.0)に更新 Apache Commons Langを3.12.0に更新 Apache Commons DBCPを2.9.0に更新 Lombokを1.18.24に更新 Spring Bootのバージョン更新に伴い利用するOSSを変更 Java MailをAngus Mailの1.0.0(Jakarta Mail 2.1)へ変更 HttpClientをHttpClient5の5.1.4へ変更 Apache Standard TaglibをJakarta Standard Tag Libraryの3.0.1へ変更 利用するOSSを追加 MapStruct 1.5.3.Finalを追加 Java Time Jsptags 2.0.0を追加 利用するOSSのサポートを終了 Apache Tilesをサポート対象外として削除 Joda Timeをサポート対象外として削除 Dozerをサポート対象外として削除 単体テストで利用するOSSのバージョンを更新 DB Unitを2.7.3.に更新 Mockitoを4.8.1に更新 Spring Testを6.0.3に更新 記載内容の修正 Apache Tilesのサポートが終了したことに伴い、画面レイアウトに関するページがなくなったことに対するTipを追加 Logback1.2.8以降モジュール構成が変わったことに関するTipを追加 共通ライブラリが提供するJoda-Timeに関する機能を非推奨化
| Spring MVCアーキテクチャ概要 | 記載内容の修正 Spring MVCに関する説明を修正 クラス階層の図を最新化
| テンプレートエンジン(Thymeleaf) | 記載内容の修正 Web APIベースの式ユーティリティオブジェクトが削除されたことに伴う修正
| 例外ハンドリング | 記載内容の修正 NestedServletExceptionが削除されたことに伴い例外ハンドリングのパターンを修正
| ページネーション | 記載内容の修正 Web APIベースの式ユーティリティオブジェクトが削除されたことに伴う修正
| ファイルアップロード | 記載内容の修正 Commons FileUploadに関する記述を削除
| ファイルダウンロード | 記載内容の修正 AbstractPdfViewを継承したクラスの実装例で使用しているParagraphに渡す型を修正
| Tilesによる画面レイアウト | 削除 Jakarta EE 10 への移行に伴い該当のページを削除
| RESTクライアント（HTTPクライアント） | 記載内容の修正 AsyncRestTemplateの代替としてWebClientへ修正 HttpClient5への移行に伴いSSL自己署名証明書の処理を修正
| ロギング | 記載内容の修正 Logbackの設定の読み込みについてのNoteを修正
| 日付操作(JSR-310 Date and Time API) | 記載内容の修正 Clockについての記述を追加 JSR-310のJSP Tag Libraryについて記述を追加
| システム時刻 | 記載内容の修正 Joda Timeを削除しJSR-310ベースへ修正
| E-mail送信(SMTP) | 記載内容の削除 GreenMailを利用したテストを削除
| JMS(Jakarta Messaging) | 記載内容の修正 Apache ActiveMQ からApache ActiveMQ Artemisへ変更
| Beanマッピング(MapStruct) | 新規追加 Beanマッピングに使用するライブラリをDozerからMapStructに変更
| Spring Security概要 | 記載内容の修正・追加 Spring Security 5.7.0よりSecurityContextPersistenceFilterが非推奨となり、SecurityContextHolderFilterが推奨となったことへの対応 認可処理のフィルターがFilterSecurityInterceptorからAuthorizationFilterへ変更になったことに伴う修正 AuthorizationFilterに関するWarningを追加 Spring Securityのパスパターン解析がデフォルトでMVC形式となったことに対するTipを追加
| 認証 | 記載内容の修正 Spring Security 5.7.0よりSecurityContextPersistenceFilterが非推奨となり、SecurityContextHolderFilterが推奨となったことへの対応 PasswordEncoderのデフォルトコンストラクタ削除に伴う修正
| 認可 | 記載内容の修正・追加 認可処理のデフォルト値がdenyAllになったことに伴う修正 認可処理のフィルターがFilterSecurityInterceptorからAuthorizationFilterへ変更になったことに伴う修正
| OAuth 2.0 | 記載内容の修正・追加 OAuth(org.springframework.security.oauth)へのリンクを削除 Spring SecurityのOAuth2のアーキテクチャのフローを修正 クライアント認可処理のフローを修正 How to Useの修正 Proxy Serverを経由している場合についてのNoteを追加
| チュートリアル(Todoアプリケーション JSP編) | 記載内容の追加 JSPの警告についてNoteを追加
| チュートリアル(Todoアプリケーション REST編) | 記載内容の修正 DHC REST ClientのキャプチャをTalend API Testerのものに修正
| Spring Securityチュートリアル | 記載内容の修正 systemExceptionResolverの除外設定からNestedServletExceptionを削除
| ボイラープレートコードの排除(Lombok) | 記載内容の追加 MapStructと併用するための記述を追加
| Java SE 17以降のバージョンを利用するための設定 | 記載内容の修正 ページタイトルを「Java SE 8からJava SE 11までの主要な変更点」から「Java SE 17を使用するための設定」へ修正
| STSの設定手順 | 記載内容の追加 プラグインが入れられない問題についてNoteを追加 JSPの警告についてNoteを追加
| OAuth(org.springframework.security.oauth) | 削除 org.springframework.security.oauthがEOLしたことに伴い該当ページを削除
| 日付操作(Joda Time) | 移動 Joda Timeをスタック対象外としたことに伴い該当ページをAppendixへ移動
| SOAP Web Service（サーバ/クライアント） | 移動 Spring Frameworkが提供していたJAX-WSの連携機能が削除されたことに伴い該当ページをAppendixへ移動
2022-03-30 | - | 1.8.1 RELEASE版公開
| 全般 | ガイドラインの誤記(タイプミスや単純な記述ミスなど)の修正 記載内容の改善 記載内容の修正・追加 ログインジェクション対策としてlogbackのフォーマットパターンを修正
| ガイドラインの観点別マッピング | OWASP Top 10 を2017版から2021版へ変更 OWASP(Open Web Application Security Project)による観点の更新
| Macchinetta Server Framework (1.x)のスタック | 利用するOSSのバージョンを更新 Spring Bootを2.6.1に更新 MyBatisを3.5.7に更新 Dozerを6.5.2に更新 Apache POIを4.1.2に更新 Spring Boot のバージョン更新に伴い利用するOSSのバージョンを更新 Spring Frameworkを5.3.13に更新 Spring Dataを2.6.0に更新 Spring Securityを5.6.0に更新 Hibernateを5.6.1(JPA 2.2)に更新 AspectJを1.9.7に更新 SLF4Jを1.7.32に更新 Jacksonを2.13.0に更新 Thymeleafのバージョンを3.0.12に更新 Hibernate Validatorを6.2.0(Bean Validation 2.0)に更新 Apache Commons Langを3.12.0に更新 Apache Commons DBCPを2.9.0に更新 Lombokを1.18.22に更新 Logbackを1.2.7に更新 単体テストで利用するOSSのバージョンを更新 DB Unitを2.7.2に更新 Mockitoを4.0.0に更新 Spring Testを5.3.13に更新 利用するOSSのサポートを終了 Spring Security標準OAuthのサポートに伴い、非推奨となっているSpring Security OAuthをサポート対象外として削除 記載内容の追加 CVE-2021-42550に関する説明及び注意点を追加
| 開発プロジェクトのビルド | 記載内容の修正 warファイルのコピーに使用するmaven-dependency-pluginのバージョンを更新し、使用するゴールをcopyに変更
| RESTクライアント（HTTPクライアント） | 記載内容の修正 `RequestFactoryBean`内の`HttpClient`がクローズされるように修正
| OAuth 2.0 | 記載内容の修正 Spring Security標準OAuthのサポートに伴い、説明内容を修正
| 代表的なセキュリティ要件の実装例 | 記載内容の修正 Passayを1.6.1に更新したことに伴い、説明内容を修正
| チュートリアル(Todoアプリケーション REST編) | 記載内容の追加 REST ClientがDHC REST ClientからTalend API Testerに置き換わっていることについてのNoteを追加
| セッションチュートリアル | 記載内容の追加 JDK11の場合のビルド手順についてのNoteを追加
| レイヤごとのテスト実装 | 記載内容の削除 DB Unitの更新に伴い、Apache POIのダウングレードに関するWarningを削除
| STSの設定手順 | 新規追加 STS4の設定手順を追加
| OAuth(org.springframework.security.oauth) | 新規追加 Spring Security標準OAuthのサポートに伴い、Spring Security OAuthの説明をAppendixへ移動
2021-03-26 | - | 1.8.0 RELEASE版公開
| 全般 | Java EEからJakarta EEへ切り替えことに伴う記述修正 記載内容の修正・追加 利用するミドルウェアのバージョンを更新
| Macchinetta Server Framework (1.x)のスタック | 利用するOSSのバージョンを更新 Spring Bootを2.4.1に更新 Spring Security OAuthを2.5.0に更新 MyBatisを3.5.6に更新 MyBatis Springを2.0.6に更新 Joda Timeを2.10.9に更新 Spring Boot のバージョン更新に伴い利用するOSSのバージョンを更新 Spring Frameworkを5.3.2に更新 Spring Dataを2.4.2に更新 Spring Securityを5.4.2に更新 Hibernateを5.4.25(JPA 2.2)に更新 AspectJを1.9.6に更新 SLF4Jを1.7.30に更新 Jacksonを2.11.3に更新 Hibernate Validatorを6.1.6(Bean Validation 2.0)に更新 Apache Commons Langを3.11に更新 Apache Commons DBCPを2.8.0に更新 Apache HttpClientを4.5.13に更新 Lombokを1.18.16に更新 単体テストで利用するOSSのバージョンを更新 Hamcrestを2.2に更新 Mockitoを3.6.28に更新 Spring Testを5.3.2に更新 利用するOSSのバージョンの更新による主な変更 Spring Boot 2.3よりjoda-timeをバージョン管理しなくなったため、terasoluna-gfw-parentで管理するよう変更 Spring Framework 5.3.0より`@PathVariable`でバインドされる値に拡張子が含まれるように変更されたことへの対応 Spring Framework 5.3.0より`HandlerInterceptor`のパス指定におけるワイルドカードの使用方法が変更されたことへの対応 Spring Framework 5.3.0より`HandlerInterceptorAdapter`が非推奨となったことへの対応 Spring Framework 5.3.0より`StringUtils#isEmpty`が非推奨となったことへの対応 Spring Framework 5.3.0より`JdbcTemplate`のメソッドのうち一部が非推奨となったことへの対応 Spring Security OAuth 2.5.0より`DefaultUserAuthenticationConverter#getAuthorities`の可視性が変更されたことへの対応 Hibernate Validator 6.1.0より日本語メッセージが提供されたことへの対応 JUnit 4.13より`org.junit.Assert#assertThat`が非推奨となったことへの対応 TERASOLUNA Server Framework for Java (5.x)の共通ライブラリの機能改善 共通ライブラリが用意する入力チェックルールの日本語メッセージを提供 `@Compare`がBean Validation 2.0に準拠 Bootstrap v4以降に対応するため、以下の変更 `ResultMessages`の標準メッセージタイプに、`primary`、`secondary`、`light`、`dark`を追加 `<t:pagination>`タグに、`anchorClass`属性を追加 共通ライブラリの非推奨APIを削除
| Webアプリケーション向け開発プロジェクトの作成 | 記載内容の修正 Mavenセントラルリポジトリで公開されるOracle JDBC DriverのgroupIdが変更されたことへの対応 オフライン環境でプロジェクト開発を続けるための事前作業について、一部手順に誤りがあったため修正
| アプリケーション層の実装 | Spring Framework 5.3.0対応に伴う修正 Spring Framework 5.3.0より`@PathVariable`でバインドされる値に拡張子が含まれるように変更されたことへの対応 Spring Framework 5.3.0より`HandlerInterceptor`のパス指定におけるワイルドカードの使用方法が変更されたことへの対応 Spring Framework 5.3.0より`HandlerInterceptorAdapter`が非推奨となったことへの対応 記載内容の追加 `addAttribute`、`addFlashAttribute`で第一引数を省略した際、`Conventions#getVariableName`の仕様に基づき属性名が決まる説明を追加
| 開発プロジェクトのビルド | 記載内容の修正 Tomcatへデプロイする際にコンテキストXMLファイルを配置するファイルパスを修正
| 入力チェック | 記載内容の修正 Hibernate Validator 6.1.0より日本語メッセージが提供されたことへの対応 共通ライブラリが用意する入力チェックルールの日本語メッセージを提供 `@Compare`がBean Validation 2.0に準拠 相関項目チェックルールのコード例において、エラーメッセージを確認用フィールドに表示するように変更 Bean Validationを利用した相関項目チェックルールのコード例をBean Validation 2.0に準拠するよう変更
| ページネーション | 記載内容の修正 `<t:pagination>`タグに、`anchorClass`属性を追加
| メッセージ管理 | 記載内容の修正 `ResultMessages`の標準メッセージタイプに、`primary`、`secondary`、`light`、`dark`を追加 `ResultMessages`の標準メッセージタイプから、非推奨の`warn`を削除 CSSライブラリBootstrapリンク先を最新化
| 排他制御 | 記載内容の修正 `ObjectOptimisticLockingFailureException`のFQCNの誤りを修正
| システム時刻 | 記載内容の修正 JUnit 4.13より`org.junit.Assert#assertThat`が非推奨となったことへの対応
| 認証 | 記載内容の修正・追加 `UserDetails`実装クラスの`equals`メソッドについての説明を追加 ブランクプロジェクトにおいてSpring Securityのフォーム認証を使用しない場合の注意事項を追加
| OAuth(org.springframework.security.oauth) | 記載内容の修正・追加 Spring Security OAuth 2.5.0より`DefaultUserAuthenticationConverter#getAuthorities`の可視性が変更されたことへの対応 Spring Security OAuthが非推奨となったことへの対応
| 単体テスト概要 | Spring Boot のバージョン更新に伴い利用するOSSのバージョンを更新 Hamcrestを2.2に更新 Mockitoを3.6.28に更新 Spring Testを5.3.2に更新
| レイヤごとのテスト実装 | 記載内容の修正 Spring Framework 5.3.0より`JdbcTemplate`のメソッドのうち一部が非推奨となったことへの対応 JUnit 4.13より`org.junit.Assert#assertThat`が非推奨となったことへの対応
| 単体テストで利用するOSSライブラリの使い方 | 記載内容の修正・追加 Mockito 2より`org.mockito.Matchers`が非推奨となったことへの対応 `MockMultipartHttpServletRequestBuilder`の主なメソッドの説明に`part`メソッドを追加 `MockMultipartHttpServletRequestBuilder`において、リクエストを送信する際に”/”から始まらないパスを指定した場合のエラーの説明を追加
| チュートリアル(Todoアプリケーション REST編) | 記載内容の修正 `MessageConverter`および`ObjectMapper`の定義方法をRESTful Web Serviceに合わせるよう変更
2021-01-07 | - | 1.7.1 RELEASE版公開
| アプリケーション層の実装 | 記載内容の修正 プリプロセッシングの実装例において、本来プリプロセッシングが不要な実装を実装例としていたため修正
| テンプレートエンジン(Thymeleaf) | 記載内容の修正 SpEL評価時におけるnull-safetyの影響についての実装例において、本来プリプロセッシングが不要な実装でプリプロセッシングを使用していたため修正
| セッション管理 | 記載内容の追加 「同一セッション内のリクエストの同期化」の適用範囲についての注意事項を追加
| コードリスト | 記載内容の修正 テンプレートHTMLの実装例において、本来プリプロセッシングが不要な実装でプリプロセッシングを使用していたため修正
| Thymeleafにおける画面レイアウト | 記載内容の修正 テンプレートHTMLの実装例において、本来プリプロセッシングが不要な実装でプリプロセッシングを使用していたため修正
2020-06-29 | - | 1.7.0 RELEASE版公開
| 全般 | ガイドラインの誤記(タイプミスや単純な記述ミスなど)の修正 記載内容の改善 記載内容の修正・追加 利用するミドルウェアのバージョンを更新 Spring Framework 5.1.16よりXMLスキーマ処理が改善されたため、ブランクプロジェクトにおけるBean定義ファイルのXMLスキーマファイル(.xsd)参照を`http`から`https`に変更 Spring Framework 5.1よりログ出力の見直しが行われたため、ブランクプロジェクトにおいてマッピングされたハンドラメソッドのログを出力するよう変更
| ガイドラインの観点別マッピング | 記載内容の追加 CVE-2020-5408を追加
| Macchinetta Server Framework (1.x)のスタック | 利用するOSSのバージョンを更新 Spring Bootを2.2.4に更新 Spring Security OAuthを2.4.0に更新 MyBatisを3.5.3に更新 MyBatis Springを2.0.3に更新 Apache Commons BeanUtilsを1.9.4に更新 Dozerを6.5.0に更新 Apache POIを4.1.1に更新 Spring Boot のバージョン更新に伴い利用するOSSのバージョンを更新 Spring Frameworkを5.2.3に更新 Spring Dataを2.2.4に更新 Spring Securityを5.2.1に更新 AspectJを1.9.5に更新 SLF4Jを1.7.30に更新 Jacksonを2.10.2に更新 thymeleaf-extras-java8time を3.0.4に更新 Hibernate Validatorを6.0.18(Bean Validation 2.0)に更新 Apache Commons Langを3.9に更新 Joda Timeを2.10.5に更新 Apache Commons DBCPを2.7.0に更新 Apache HttpClientを4.5.10に更新 Lombokを1.18.10に更新 単体テストで利用するOSSのバージョンを更新 Hamcrestを2.1に更新 Mockitoを3.1.0に更新 Spring Testを5.2.3に更新 利用するOSSのバージョンの更新による主な変更 Spring Security 5.2で追加された`Argon2PasswordEncoder`の記述を追加 Spring Security 5.2で追加された`LogoutSuccessEvent`および`LogoutSuccessEventPublishingLogoutHandler`の記述を追加 Spring Security 5.2で追加された`ClearSiteDataHeaderWriter`および`HeaderWriterLogoutHandler`の記述を追加 Spring Security 5.2.1において、既存のセキュリティヘッダがある場合の挙動が変更されたこと（spring-projects/spring-security#6454）への対応 Spring Data 2.2において、廃止予定であった非推奨APIが削除されたことへの対応 Spring Boot 2.2.0からJavaMailがJakarta Mailにバージョンアップしたことへの対応 Hamcrest 2.1からHamcrestのモジュールが統合されたため、記載するOSSライブラリを変更 利用するOSSのサポートを終了 JDBC 4.2に対応していないLog4JDBCをサポート対象外として削除 TERASOLUNA Server Framework for Java (5.x)の共通ライブラリの機能改善 共通ライブラリが用意する入力チェックルールのデフォルトエラーメッセージを共通ライブラリで提供 `<t:pagination>`タグに、`innerElementClass`属性を追加 `Argon2PasswordEncoder`のサポートに伴い、`bcprov-jdk15on`への依存関係を共通ライブラリで管理 記載内容の追加 共通ライブラリの構成要素に、TERASOLUNA Server Framework のバージョンについてのNoteを追加
| アプリケーション層の実装 | 記載内容の追加 `@RequestMapping`の値（value属性）を省略した場合の動作についてのNoteを追加 パス設計時の注意点についてのWarningを追加
| 入力チェック | 記載内容の追加 日付時刻の検証（`@Past`、`@Future`、`@PastOrPresent`、`@FutureOrPresent`）に適切な型を使用する必要があることについてのWarningを追加 記載内容の修正 共通ライブラリが用意する入力チェックルールのデフォルトエラーメッセージを共通ライブラリで提供するように変更したことに伴う記載内容の変更
| ページネーション | Spring Data 2.2対応に伴う修正 Spring Data 2.2において、廃止予定であった非推奨APIが削除されたことに伴う実装例の修正 TERASOLUNA Server Framework for Java (5.x)の共通ライブラリの機能改善 `<t:pagination>`タグに、`innerElementClass`属性を追加
| 国際化 | 記載内容の修正 `LocaleChangeInterceptor`の仕様についてのNoteを修正
| コードリスト | 記載内容の修正 `@ExistInCodeList`の入力チェックエラーメッセージについての記述を入力チェックに統合
| 共通ライブラリが提供するJSP Tag Library と EL Functions | TERASOLUNA Server Framework for Java (5.x)の共通ライブラリのバグ改修に伴う修正 共通ライブラリのバグ改修(terasoluna-gfw#846)に伴い、`f:query`の仕様に関する説明を修正
| RESTクライアント（HTTPクライアント） | 記載内容の修正 `AsyncRestTemplate`のスレッドプールをカスタマイズする方法の誤った説明を修正
| データベースアクセス（共通編） | 記載内容の削除 共通ライブラリの変更に伴うlog4jdbcの記載の削除
| Beanマッピング(Dozer) | 記載内容の削除 Dozer 6.5.0よりJSR-310 Date and Time APIで使用できるはずのパターン文字が使用できない不具合が解消されたため、不具合を記述したWarningを削除 記載内容の追加 javax.el標準APIの実装ライブラリが存在しないことにより発生する警告についての説明を追加 記載内容の修正 Dozer 6.5.0より、Mavenを利用してJava SE 9以降でビルドする場合JAXBを利用するための設定が不要になったため、WarningをNoteに変更し説明を修正
| E-mail送信(SMTP) | Spring Boot 2.2.4対応に伴う修正 JavaMailからJakarta Mailにバージョンアップしたことに伴い、説明内容を修正 記載内容の修正 JavaMail 1.4.4よりマルチバイト文字を使用する際にメール本文終端に余計な文字が付与される不具合が修正された旨を追記
| JMS(Jakarta Messaging) | 記載内容の修正・追加 Spring Framework 5.0.0より、Spring JMSの動作にJMS 2.0のAPIが必要になったことによる記載の修正 ActiveMQ Clientにおいて、JMS API 2.0で動作するために必要なライブラリ一覧を追加 リスナークラスを格納するパッケージ配下をcomponent-scan対象とする必要がある旨の説明を追加
| Spring Security概要 | 記載内容の修正 Spring Security 5.0.1, 4.2.4, 4.1.5より、デフォルトで利用される`HttpFirewall`インタフェースの実装クラスが変更されたことに対する記述の修正
| 認証 | Spring Security 5.2.x対応に伴う修正 Spring Security 5.2で追加された`Argon2PasswordEncoder`の記述を追加 Spring Security 5.2で追加された`LogoutSuccessEvent`および`LogoutSuccessEventPublishingLogoutHandler`の記述を追加 Spring Security 5.2で追加された`ClearSiteDataHeaderWriter`および`HeaderWriterLogoutHandler`の記述を追加 TERASOLUNA Server Framework for Java (5.x)の共通ライブラリの機能改善 `Argon2PasswordEncoder`のサポートに伴い、`bcprov-jdk15on`への依存関係を共通ライブラリで管理 記載内容の追加 PasswordEncoderに定義されているメソッドの一覧にSpring Security 5.1で追加された`upgradeEncoding`を追加 記載内容の修正 `@EventListener`が処理する認証イベントの指定方法を改善 `@EventListener`クラスを格納するパッケージの明示および注意点の記載 Spring Securityが提供するクラスをまとめた表の見直し
| 認可 | 記載内容の修正 Spring Securityが提供するクラスをまとめた表の見直し
| セッション管理 | 記載内容の修正 Spring Security 5.0.1, 4.2.4, 4.1.5以降では、デフォルトの設定でURL RewritingによるセッションIDの連携を行えず、設定を変更した場合、脆弱性が発生する可能性がある旨の記述を追加
| ブラウザのセキュリティ対策機能との連携 | Spring Security 5.2.x対応に伴う修正 Spring Security 5.2で追加された`ClearSiteDataHeaderWriter`の記述を追加 Spring Security 5.2で追加されたStrict-Transport-SecurityヘッダのpreloadディレクティブについてのNoteを追加 spring-projects/spring-security#6454により解消されたWarning「個別に付与したセキュリティヘッダがSpring Securityにより上書き（追加）される問題」を削除 記載内容の追加 Content Security Policyヘッダに関するIEがサポートしていないことについてのWarningを追加 Content Security Policyヘッダで混在コンテンツをブロックする方法についてのNoteを追加
| 暗号化 | 記載内容の修正 CVE-2020-5408により`Encryptors#queryableText`メソッドを非推奨とする旨のNoteを追加し、コード例を削除
| 代表的なセキュリティ要件の実装例 | 記載内容の修正 `@EventListener`が処理する認証イベントの指定方法を改善 `@EventListener`クラスを格納するパッケージの変更
| 単体テスト概要 | Spring Boot のバージョン更新に伴い利用するOSSのバージョンを更新 Hamcrestを2.1に更新 Mockitoを3.1.0に更新 Spring Testを5.2.3に更新 記載内容の修正 Hamcrest 2.1から`hamcrest-core`, `hamcrest-library`が`hamcrest`に統合されたため、記載するOSSライブラリを変更
| レイヤごとのテスト実装 | 記載内容の追加 データ定義ファイルにExcel形式（.xlsx）のファイルを使用する場合のApache POIについてWarningを追加
| Java SE 17以降のバージョンを利用するための設定 | 記載内容の追加 「推移的に解決されるJava EE関連モジュールの競合」節の追加
2019-03-26 | - | 1.6.1 RELEASE版公開
| 全般 | Java SE 8および11のサポートに伴う修正 サポート対象外となるJava SE 7を利用する際の記述を削除 サポート対象となるJava SE 11を利用する際の記述を追加 ガイドラインの誤記(タイプミスや単純な記述ミスなど)の修正 記載内容の改善 記載内容の修正・追加 ViewResolverの定義について、Spring 4.0以前からの`<bean>`要素を使用した定義方法を削除し、Spring 4.1以降の`<mvc:view-resolvers>`要素を使用した定義方法のみ解説するよう変更 利用するミドルウェアのバージョンを更新
| Thymeleaf対応 | 以下のThymeleaf対応章を追加 ページネーション 国際化 コードリスト ファイルアップロード ファイルダウンロード Ajax ヘルスチェック 日付操作(JSR-310 Date and Time API) 日付操作(Joda Time) OAuth(org.springframework.security.oauth) 代表的なセキュリティ要件の実装例 チュートリアル(Todoアプリケーション JSP編) チュートリアル(Todoアプリケーション REST編) セッションチュートリアル Spring Securityチュートリアル 記載内容の修正・追加 Decoupled Template Logicの適用方法についての記述を追加 JavaScriptのテンプレート化についての記述を追加 テンプレートHTMLのデバッグについての記述を追加 フレームワークスタックに`thymeleaf-extras-java8time`を追加
| ガイドラインの観点別マッピング | OWASP Top 10 を2013版から2017版へ変更 OWASP(Open Web Application Security Project)による観点の更新
| Macchinetta Server Framework (1.x)のスタック | 利用するOSSの管理方法の変更 利用するライブラリの管理にSpring Bootを利用するよう変更 利用するOSSのバージョンを更新 Spring Boot 2.1.2の適用 Spring Frameworkのバージョンを5.1.4に更新 Spring Securityのバージョンを5.1.3に更新 Spring Dataのバージョンを2.1.4に更新 thymeleafのバージョンを3.0.11に更新 thymeleaf-spring4に代わりthymeleaf-spring5 3.0.11を追加 thymeleaf-extras-springsecurity4に代わりthymeleaf-extras-springsecurity5 3.0.4を追加 thymeleaf-extras-java8time 3.0.2を追加 Hibernate Validatorのバージョンを6.0.14(Bean Validation 2.0)に更新 Joda Timeのバージョンを2.10.1に更新 Jacksonのバージョンを2.9.8に更新 Apache HttpClientを4.5.6に更新 Lombokを1.18.4に更新 Spring Security OAuthを2.2.4に更新 MyBatisのバージョンを3.5.0に更新 MyBatis Springのバージョンを2.0.0に更新 Dozerのバージョンを6.4.1に更新 Apache POIを3.17に更新 iTextが非サポートになったため、OpenPDF 1.0.5を追加 利用するOSSのバージョンの更新による主な変更 Spring Framework 5.0.0よりJasperReportsが非サポートとなったことへの対応 Spring Framework 5.0.3よりiTextが非サポートとなり、代わりにOpenPDFがサポートされたことへの対応 Spring Framework 4.2から非推奨ととなっていた`AbstractExcelView`がSpring Framework 5.0で削除されたことに伴う対応 Spring Framework 5.0.0よりクエリ文字列に対するURLエンコーディングの仕様が変更されたことへの対応 Spring Framework 5.0.0より指定サイズを超えるファイルのアップロードやマルチパートのリクエストが行われた際に発生する例外の仕様が変更されたことに伴う対応 Spring Framework 5.0.0よりSpEL評価時におけるnull-safety機能が追加されたことへの対応 Spring Security 5より非推奨の`PasswordEncoder`のパッケージが廃止になったことへの対応 Spring Security 5.0.2および5.1.2で変更となったセキュリティヘッダの付与タイミングによる、リクエストパスのマッチングにおける注意事項の追加 Spring Security OAuth 2.2.2よりリダイレクトURIのホワイトリストチェックの仕様が変更されたことへの対応 Thymeleaf 3.0.10よりイベントハンドラの式がJavaScriptテンプレートモードで解釈されるようになったことに対する対応 Thymeleaf 3.0.10よりイベントハンドラで従来の記法におけるXSS対策が強化されたことに対する対応
| Macchinetta Server Framework (1.x)のスタック | TERASOLUNA Server Framework for Java (5.x)の共通ライブラリの新機能追加 `terasoluna-gfw-validator` バイト長チェック用Bean Validation制約アノテーション `@ByteSize` TERASOLUNA Server Framework for Java (5.x)の共通ライブラリの機能改善 `terasoluna-gfw-common` `SimpleI18nCodeList`のロケール解決方法の改善 `SimpleReloadableI18nCodeList`の追加 `@ExistInCodeList` で `Number` 型をサポートするよう改善 `ReloadableCodeList` のイミュータブル対応に伴う `CodeListInterceptor`の仕様変更 `@ExistInCodeList` をBean Validation 2.0に準拠するよう仕様変更 `terasoluna-gfw-codepoints` `@ConsistOf` をBean Validation 2.0に準拠するよう仕様変更 `terasoluna-gfw-validator` `@ByteMax` 及び`@ByteMin` をBean Validation 2.0に準拠するよう仕様変更
| アプリケーション層の実装 | 記載内容の追加 Spring Framework 4.3より追加された `@RequestMapping`の合成アノテーションの説明を追加 Thymeleafのプリプロセッシングについて、解決された値により自動的に型が判定されることについての注意事項を追加
| Webアプリケーション向け開発プロジェクトの作成 | 記載内容の追加 大量にコードリストを定義する場合のBean定義方法に関する記載を追加
| アプリケーション層の実装 | 記載内容の追加 Spring Framework 4.3より追加された `@RequestMapping`の合成アノテーションの説明を追加
| テンプレートエンジン(Thymeleaf) | Spring Framework 5.1.4対応に伴う修正 SpEL評価時におけるnull-safetyの影響についての注意事項を追加
| 入力チェック | Bean Validation 2.0(Hibernate Validator 6.0)対応に伴う修正 Bean Validation 2.0及びHibernate Validator 6.0では、コレクション内の各値に対して入力チェックできるようになった旨の説明を追加 Bean Validation 2.0では、一つのフィールドに同じアノテーションを複数指定できる旨の説明を追加 Bean Validation 2.0及びHibernate Validator 6.0で追加されたアノテーションに対する説明を追加 Hibernate Validator 6.0で非推奨となったアノテーションに対する説明を追加 Bean Validation 2.0で提供される`ClockProvider`を実装することで、基準日付の変更が可能である旨の説明を追加
| 例外ハンドリング | Spring Framework 5.1.4対応に伴う修正 `DefaultHandlerExceptionResolver`がハンドリングする例外一覧からSpring Framework 5.0より廃止された`org.springframework.web.servlet.mvc.multiaction.NoSuchRequestHandlingMethodException`を削除 記載内容の修正 `DefaultHandlerExceptionResolver`がハンドリングする例外一覧にSpring Framework 4.2より追加された`org.springframework.web.bind.MissingPathVariableException`を追加 `SystemExceptionResolver#preventResponseCaching`とSpring SecurityのCache-Controlヘッダの併用についての注意を追加
| ページネーション | 構成見直し Overviewを取得データの表示、ページネーションリンクの表示、ページネーション情報の表示の3点について説明するように変更
| メッセージ管理 | 記載内容の修正 `SPRING_SECURITY_LAST_EXCEPTION` が格納されるスコープの誤記を修正
| 国際化 | 記載内容の追加 `AcceptHeaderLocaleResolver`と`LocaleChangeInterceptor`の指定可能な設定についての説明を追加
| コードリスト | 記載内容の修正 独自カスタマイズしたコードリストのBean定義方法を、コンポーネントスキャンからBean定義ファイルによる定義に変更 記載内容の追加 コードリストBeanをJSPから直接参照する方法を追加
| ファイルアップロード | Spring Framework 5.1.4対応に伴う修正 指定サイズを超えるファイルのアップロードやマルチパートのリクエストが行われた際に発生する例外の仕様が変更されたことに伴い、Noteを追加
| ファイルダウンロード | Spring Framework 5.1.4対応に伴う修正 JasperReportsが非サポートとなったため、JasperReportsに言及している記載を修正 iTextの代わりにOpenPDFがサポートされるようになった旨の説明を追加し、実装例を修正 Spring Framework 4.2から非推奨ととなっていた`AbstractExcelView`がSpring Framework 5.0で削除されたことに伴う対応
| 共通ライブラリが提供するJSP Tag Library と EL Functions | Spring Framework 5.1.4対応に伴う修正 Spring Frameworkのクエリ文字列に対するURLエンコーディングの仕様変更に伴うTERASOLUNA Server Framework for Java (5.x)の共通ライブラリ(`f:query()`, `f:u()`)の変更についてWarningを追加
| Ajax | OWASP Top 10 2017対応に伴う修正 A8:2017に関連する、デシリアライズ時のWarningを追加 Macchinetta Server Framework (1.x)ではXXE対策済みのSpring MVCを使用しているため、 XXE対策についてのWarningをNoteへ変更し、spring-oxmによる対策方法の記述を削除
| RESTful Web Service | OWASP Top 10 2017対応に伴う修正 Macchinetta Server Framework (1.x)ではXXE対策済みのSpring MVCを使用しているため、 XXE対策についてのWarningをNoteへ変更し、spring-oxmによる対策方法の記述を削除 記載内容の追加 Spring Framework 4.3より追加された `@RequestMapping`の合成アノテーションの説明を追加 記述内容の修正 Dozerのカスタムコンバーターに関する記述を Beanマッピング(Dozer) に統合
| RESTクライアント（HTTPクライアント） | Spring Framework 5.1.4対応に伴う修正 `AsyncRestTemplate`がSpring Framework 5より非推奨となった旨と、代替となるクラスが非サポートであることの説明を追加
| データベースアクセス（MyBatis3編） | 記載内容の追加 `Pageable` を利用した検索結果のソートについての説明を追加 JSR-310 Date and Time APIを使う場合の設定の記事を削除し、依存ライブラリとして別途`mybatis-typehandlers-jsr310` を追加する必要はなくなった旨のNoteを追加
| ロギング | 記載内容の修正 TERASOLUNA Server Framework for Java (5.x)の共通ライブラリが提供する`TraceLoggingInterceptor`のWARNログ出力に関する閾値の設定例を修正
| Beanマッピング(Dozer) | Dozer 6.4.1対応に伴う修正 Dozer のバージョンアップ対応に伴い、ガイドラインに記載されているコード例を修正 Dozer 6.2.0において、単方向マッピングの挙動が仕様と異なっていたバグが修正されたことの説明を追加 Dozer 6.3.0よりJAXBがデフォルト利用されるようになったため、挙動の変更の注意点をWARNINGに追加 Dozer 6.4.0より一部のJSR-310 Date and Time APIがサポートされた旨の説明を追加 記載内容の削除 現バージョン（Dozer5.5.0以降）ではCollection<T>を使用したBean間のマッピングも可能であるため、マッピングが失敗する旨を記述したTodoを削除
| JMS(Jakarta Messaging) | OWASP Top 10 2017対応に伴う修正 A8:2017に関連する、デシリアライズ時のWarningを追加 記載内容の修正・追加 JMSを利用する際のBean定義の記載場所を再整理 JNDIを使用しない場合の`DynamicDestinationResolver`のBean定義方法に関する記載を追加
| 認証 | OWASP Top 10 2017対応に伴う修正 A10:2017に関連する、ログイン認証時のログについてのTipを追加 記載内容の修正 Spring Security 5より非推奨の`PasswordEncoder`のパッケージが廃止されたことに伴い、`MessageDigestPasswordEncoder`を使用する方法に記載を修正 記載内容の改善 ブランクプロジェクトで定義する`PasswordEncoder`を`BCryptPasswordEncoder`から`DelegatingPasswordEncoder`に変更したことに伴う記載内容の変更 記載内容の追加 `SPRING_SECURITY_LAST_EXCEPTION` が格納されるスコープの説明を追加
| 認可 | Spring Framework 5.1.4対応に伴う修正 SpEL評価時におけるnull-safetyの影響についての注意事項を追加 記載内容の追加 Spring Securityが提供する`AccessDeniedHandler`の実装クラスの一覧に`RequestMatcherDelegatingAccessDeniedHandler`を追加
| CSRF対策 | OWASP Top 10 2017対応に伴う修正 OWASP Top 10 2013版へのリンクをOWASP Cheat Sheetへのリンクへ変更
| XSS対策 | Thymeleaf 3.0.11対応に伴う修正 イベントハンドラの式がJavaScriptテンプレートモードで解釈されるようになったことに対する記載内容及びコード例の変更 イベントハンドラで従来の記法におけるXSS対策が強化され、NumberとBoolean以外を出力する式が使用できなくなったことに対するWarningを追加
| ブラウザのセキュリティ対策機能との連携 | Spring Security 5.1.3対応に伴う修正 Spring Securityが提供する`HeaderWriterFilter`の仕様変更と`DelegatingRequestMatcherHeaderWriter`でのリクエストパスのマッチングにおけるバグについての注意事項を追加 記載内容の追加 Spring Securityがサポートするセキュリティヘッダの一覧にReferrer-Policyヘッダを追加 Spring Securityがサポートするセキュリティヘッダの一覧にFeature-Policyヘッダを追加
| OAuth(org.springframework.security.oauth) | Spring Security OAuth 2.2.2対応に伴う修正 Spring Security OAuthのバージョン更新に伴いリダイレクトURI情報を保持するテーブルへの説明にWarningを追加 記載内容の修正 `alias`属性を用いた`authentication-manager`の定義に関する実装例、説明の修正 記載内容の追加 CVE-2019-3778(オープンリダイレクト脆弱性)に関する注意喚起を追加
| チュートリアル(Todoアプリケーション JSP編) | 記載内容の修正・追加 一覧表示機能作成時に、登録機能の一部を作成していた部分を変更し、一覧表示機能の動作確認できるように、コード例を追加 ガイドライン修正に伴う、サンプルコードの最新化
| チュートリアル(Todoアプリケーション REST編) | 記載内容の修正 spring-mvc-rest.xmlを作成する方法の説明を変更 ガイドライン修正に伴う、サンプルコードの最新化
| セッションチュートリアル | 記載内容の修正 JSPのコードをTiles形式に修正 ガイドライン修正に伴う、サンプルコードの最新化
| Spring Securityチュートリアル | 記載内容の修正 `SPRING_SECURITY_LAST_EXCEPTION` が格納されるスコープの誤記を修正 ガイドライン修正に伴う、サンプルコードの最新化
| Java SE 17以降のバージョンを利用するための設定 | 新規追加 Java SE 8からJava SE 11までの主要な変更点を追加
2018-03-09 | - | 1.5.1 RELEASE版公開
| Macchinetta Server Framework (1.x)のスタック | CVE-2018-1199への対応のため、利用するOSSのバージョンを更新 Spring Frameworkのバージョンを4.3.14に更新 Spring Securityのバージョンを4.2.4に更新
| OAuth(org.springframework.security.oauth) | 記載内容の修正 認可サーバのチェックトークンエンドポイントのURL設定が反映されない不具合へのWarningを削除
2017-12-22 | - | 1.5.0 RELEASE版公開
| 全般 | ガイドラインの誤記(タイプミスや単純な記述ミスなど)の修正 記載内容の改善
| Macchinetta Server Framework (1.x)のスタック | 利用するOSSのバージョンを更新 Spring IO PlatformのバージョンをBrussels-SR5に更新 MyBatisのバージョンを3.4.5に更新 Spring IO Platformのバージョン更新に伴い利用するOSSのバージョンを更新
| ドメイン層の実装 | 記載内容の追加 `@Transactional` アノテーションの`timeout` 属性に関する記載を追加
| 入力チェック | 記載内容の追加 `@Compare` アノテーションの`operator` 属性に新たに追加された`NOT_EQUAL` の説明を追加 `@Email` アノテーションを使用する際の注意事項を追加 ガイドラインのバグ修正 TERASOLUNA Server Framework for Java (5.x)の共通ライブラリのチェックルールの拡張方法の実装例を修正
| 例外ハンドリング | 記載内容の修正 TERASOLUNA Server Framework for Java (5.x)の共通ライブラリ(`ExceptionLoggingFilter` )の変更に伴う修正、及び既存の誤記の修正
| Tilesによる画面レイアウト | 記載内容の修正 `<definition>` タグ(Tiles定義ファイル)の`name` 属性のマッチングに関する説明、及び関連する箇所の誤解を招く表現を修正
| RESTクライアント（HTTPクライアント） | Spring Framework 4.3対応に伴う修正 Basic認証用のリクエストヘッダの設定に関する記載を変更
| SOAP Web Service（サーバ/クライアント） | 記載内容の修正 SOAP Web Serviceの実装に伴うインジェクションで使用するアノテーションを`@Inject` から`@Autowired` に変更 Spring FrameworkのJAX-WS連携機能についての誤記修正と、SOAPサーバがJava EEサーバのJAW-WS実装上で動作することに伴なう注意事項の追記
| JMS(Jakarta Messaging) | 記載内容の修正 非同期送信のトランザクション管理はChainedTransactionManagerではなくDefaultMessageListenerContainerで行うよう記述を修正
| 認証 | 記載内容の修正 パスワードハッシュ化のためのクラス（`Pbkdf2PasswordEncoder`）の説明を追記し、それに伴い`BCryptPasswordEncoder`を推奨する記述を削除
| 認可 | Spring Framework 4.3対応に伴う修正 ブランクプロジェクトから`mvc:path-matching` の定義を削除しSpring MVCのデフォルト設定を使用するよう変更したことに伴う記載内容の修正 記載内容の修正 Spring Securityでパス変数を使用するアクセスポリシーの定義に関する記載内容を修正
| XSS対策 | 記載内容の修正、追加 JavaScript Escapingのサンプルソースを修正 `document.write()` を使用する際の注意事項を追加
| OAuth(org.springframework.security.oauth) | 構成見直し How to useをグラントタイプ毎に説明する章構成に変更 記載内容の追加 Spring Security OAuthで発生する例外の一覧とハンドリング方法の追加 Spring Security OAuthの拡張ポイントについての説明を追加 リソースサーバに対するBasic認証設定方法の追加 インプリシットにおける後処理（アクセストークンクリア）の追加 記載内容の改善 サンプルコードの修正 フロー図およびその説明の改善
| 単体テスト | 新規追加 単体テストを追加
2017-11-10 | - | 1.4.1 RELEASE版公開
| 全般 | ガイドラインの誤記(タイプミスや単純な記述ミスなど)の修正
2017-03-10 | - | 1.4.0 RELEASE版公開