| 2017-03-17 | - | 5.2.1 RELEASE版公開 | 
|  | 全般 | ガイドラインの誤記(タイプミスや単純な記述ミスなど)の修正 記載内容の改善 以下のプロジェクト作成時に使用する maven-archetype-pluginのバージョンを2.4に固定するように変更(guideline#2523) | 
|  | ガイドラインの観点別マッピング | 記載内容の追加 | 
|  | ドメイン層の実装 | 記載内容の改善 | 
|  | 入力チェック | 記載内容の改善 | 
|  | セッション管理 | 記載内容の追加 
セッションスコープに格納しているオブジェクトを受け取る際にリクエストパラメータのバインドを防止する方法について追記(guideline#1293) | 
|  | 国際化 | 記載内容の追加 | 
|  | データベースアクセス(MyBatis3編) | 記載内容の追加 | 
|  | データベースアクセス(JPA編) | 記載内容の追加 | 
|  | E-mail送信(SMTP) | 記載内容の追加 | 
|  | 認証 | 記載内容の追加 記載内容の修正 | 
|  | 認可 | 記載内容の追加 | 
| 2016-08-31 | - | 5.2.0 RELEASE版公開 | 
|  | 全般 | ガイドラインの誤記(タイプミスや単純な記述ミスなど)の修正 記載内容の改善 章立てを全面見直し 共通ライブラリのバージョンを5.2.0.RELEASEに更新 記載内容の改善 | 
|  | TERASOLUNA Server Framework for Java (5.x)のスタック | 記載内容の追加 利用するOSSのバージョン(Spring IO Platformのバージョン)を更新 
Spring IO Platformのバージョンを2.0.6.RELEASEに更新Spring Frameworkのバージョンを4.2.7.RELEASEに更新Spring Securityのバージョンを4.0.4.RELEASEに更新 Spring IO Platformのバージョン更新に伴い利用するOSSのバージョンを更新 | 
|  | ドメイン層の実装 | 記載内容の追加 
MyBatis 3.3 + MyBatis-Spring 1.2 において、 @Transactinal  の  timeout  属性に指定した値は使用されない旨を追加(guideline#1777) | 
|  | アプリケーション層の実装 | 記載内容の追加 | 
|  | 入力チェック | 記載内容の改善 記載内容の追加 | 
|  | 例外ハンドリング | Spring Framework 4.2.7対応に伴う修正 | 
|  | 二重送信防止 | 記載内容の追加 
@TransactionTokenCheckアノテーションのtype属性に新たに追加されたTransactionTokenType.CHECKの仕様、利用方法に関する記載の追加
(guideline#2071) 「How To Extend プログラマティックにトランザクショントークンのライフサイクルを管理する方法について」を削除。 
TransactionTokenContextが提供していたアプリケーション向けAPIを使用した場合、TransactionTokenを正しい状態に維持できなくなるなど、フレームワーク内部の挙動に影響を及ぼすような作り込みができてしまうことから、
当該APIの非推奨化がなされた。非推奨化にあわせて該当機能の利用方法の記述を削除した。 | 
|  | 国際化 | 記載内容の改善 | 
|  | ファイルアップロード | 記載内容の追加 | 
|  | ヘルスチェック | 新規追加 | 
|  | RESTful Web Service | 記載内容の変更、追加 | 
|  | RESTクライアント(HTTPクライアント) | 記載内容の改善 | 
|  | SOAP Web Service(サーバ/クライアント) | 記載内容の追加 | 
|  | データベースアクセス(MyBatis3編) | 記載内容の追加 | 
|  | 排他制御 | 記載内容の追加 | 
|  | ロギング | 記載内容の追加 | 
|  | 文字列処理 | 記載内容の追加 | 
|  | Beanマッピング(Dozer) | 記載内容の追加 | 
|  | JMS(Java Message Service) | 新規追加 | 
|  | 認証 | Spring Security 4.0.4対応に伴う修正 
Spring 4.0.4にて authentication-failure-url の仕様が改善されたことによるコード例の修正とNoteの削除 (guideline#1963) | 
|  | 認可 | 記載内容の追加 | 
|  | 代表的なセキュリティ要件の実装例 | 記載内容の追加 
「セキュリティ観点での入力値チェック」を追加「監査ログ出力」を追加 | 
|  | 参考書籍 | 記載内容の追加 | 
| 2016-02-24 | - | 5.1.0 RELEASE版公開 | 
|  | 全般 | ガイドラインの誤記(タイプミスや単純な記述ミスなど)の修正 記載内容の改善 | 
|  | はじめに | 記載内容の追加 
ガイドラインに記載している内容の動作検証環境に関する記載を追加 | 
|  | TERASOLUNA Server Framework for Java (5.x)のスタック | 利用するOSSのバージョン(Spring IO Platformのバージョン)を更新 
Spring IO Platformのバージョンを2.0.1.RELEASEに更新Spring Frameworkのバージョンを4.2.4.RELEASEに更新Spring Securityのバージョンを4.0.3.RELEASEに更新 Spring IO Platformのバージョン更新に伴い利用するOSSのバージョンを更新 新規プロジェクト追加 
terasoluna-gfw-string、terasoluna-gfw-codepoints、terasoluna-gfw-validator、terasoluna-gfw-web-jspプロジェクトの説明を追加。 共通ライブラリの新機能追加 
terasoluna-gfw-string
terasoluna-gfw-codepoints
コードポイントチェックコードポイントチェック用Bean Validation制約アノテーションterasoluna-gfw-validator
バイト長チェック用Bean Validation制約アノテーションフィールド値比較相関チェック用Bean Validation制約アノテーション | 
|  | はじめてのSpring MVCアプリケーション | 記述内容の改善 
AuthenticationPrincipalArgumentResolverのパッケージ変更 | 
|  | チュートリアル(Todoアプリケーション) | Spring Security 4 対応に伴う修正 
AuthenticationPrincipalArgumentResolverのパッケージ変更デフォルトでtrueになる仕様のため、サンプルソースから<use-expressions="true">を削除 | 
|  | Webアプリケーション向け開発プロジェクトの作成 | 記述内容の改善 | 
|  | アプリケーション層の実装 | 記述内容の改善 | 
|  | データベースアクセス(共通編) | 記載内容の追加 | 
|  | データベースアクセス(MyBatis3編) | MyBatis 3.3 対応に伴う記載内容の追加 | 
|  | データベースアクセス(JPA編) | ガイドラインのバグ修正 記載内容の改善 | 
|  | 入力チェック | 記述内容の改善 | 
|  | ロギング | 記述内容の改善 
デフォルトでtrueになる仕様のため、サンプルソースから<use-expressions="true">を削除 | 
|  | セッション管理 | 記述内容の改善 | 
|  | 国際化 | 記述内容の改善 | 
|  | コードリスト | 記載内容の追加 | 
|  | RESTful Web Service | 記述内容の改善 | 
|  | RESTクライアント(HTTPクライアント) | 新規追加 | 
|  | SOAP Web Service(サーバ/クライアント) | 新規追加 | 
|  | ファイルアップロード | 記述内容の改善 
アップロード処理の基本フロー、及びその説明をSpringのMultipartFilterを用いた記述に修正 (guideline#193)セキュリティ上の問題や、APサーバによって動作が異なる等の課題があるため、「クエリパラメータでCSRFトークンを送る方法」を削除。
ファイルアップロードの許容サイズを超過した場合、一部APサーバでCSRFトークンチェックが正しく行われない注意点を追加(guideline#1602) | 
|  | ファイルダウンロード | Spring Framework4.2 対応に伴う記載内容の追加 記述内容の改善 
iTextの仕様変更のため、com.lowagie:itext:4.2.1を利用したソース例をcom.lowagie:itext:2.1.7を利用する形に修正 | 
|  | E-mail送信(SMTP) | 新規追加 | 
|  | 日付操作(JSR-310 Date and Time API) | 新規追加 | 
|  | 日付操作(Joda Time) | 記載内容の改善・追加 | 
|  | 文字列処理 | 新規追加 | 
|  | セキュリティ対策 | 構成見直し | 
|  | Spring Security概要 | Spring Security 4 対応に伴う修正 
spring-security-testの紹介デフォルトでtrueになる仕様のため、サンプルソースから<use-expressions="true">を削除RedirectAuthenticationHandler非推奨化に伴う説明の削除 | 
|  | Spring Securityチュートリアル | Spring Security 4 対応に伴う修正 | 
|  | 認証 | Spring Security 4 対応に伴う修正 (guideline#1519) 
auto-config="true"の削除認証イベントリスナを@org.springframework.context.event.EventListenerに修正AuthenticationPrincipalのパッケージを修正デフォルトでプレフィックスが付与されるため、サンプルソースからROLE_プレフィックスの削除 | 
|  | 認可 | Spring Security 4 対応に伴う修正 (guideline#1519) 
デフォルトでプレフィックスが付与されるため、サンプルソースからROLE_プレフィックスの削除デフォルトでtrueになる仕様のため、サンプルソースから<use-expressions="true">を削除@PreAuthorizeの定義例追加 | 
|  | CSRF対策 | Spring Security 4 対応に伴う修正 
CSRF無効化の設定を修正<sec:csrf disabled="true"/> 
 | 
|  | 暗号化 | 新規追加 | 
|  | 代表的なセキュリティ要件の実装例 | 新規追加 | 
|  | セッションチュートリアル | 新規追加 | 
|  | チュートリアル(Todoアプリケーション REST編) | Spring Security 4 対応に伴う修正 
CSRF無効化の設定を修正<sec:csrf disabled="true"/>デフォルトでtrueになる仕様のため、サンプルソースから<use-expressions="true">を削除 | 
| 2015-08-05 | - | 5.0.1 RELEASE版公開 | 
|  | 全般 | ガイドラインの誤記(タイプミスや単純な記述ミスなど)の修正 記載内容の改善 アプリケーションサーバに関する記載内容の修正 
Resinに関する記載を削除リファレンスページへのリンクを最新化 | 
|  | はじめに | 記載内容の追加 
ガイドラインに記載している内容の動作検証環境に関する記載を追加 | 
|  | TERASOLUNA Server Framework for Java (5.x)のスタック | セキュリティ脆弱性対応に伴い利用するOSSのバージョン(Spring IO Platformのバージョン)を更新 
Spring IO Platformのバージョンを1.1.3.RELEASEに更新Spring Frameworkのバージョンを4.1.7.RELEASEに更新 (CVE-2015-3192)JSTLのバージョンを1.2.5に更新 (CVE-2015-0254) Spring IO Platformのバージョン更新に伴い利用するOSSのバージョンを更新 記載内容の改善 (guideline#1148) 
terasoluna-gfw-recommended-dependencies、terasoluna-gfw-recommended-web-dependencies、terasoluna-gfw-parentプロジェクトの説明を追加。プロジェクトの説明を修正。プロジェクト間の依存関係を示す図を追加。 | 
|  | Webアプリケーション向け開発プロジェクトの作成 | 記載内容の追加 | 
|  | データベースアクセス(共通編) | 記載内容の追加 | 
|  | データベースアクセス(MyBatis3編) | ガイドラインのバグ修正 | 
|  | ロギング | 記載内容の改善 | 
|  | セッション管理 | 記載内容の改善 | 
|  | 二重送信防止 | 記載内容の追加 | 
|  | コードリスト | 記載内容の追加 | 
|  |  | CVE-2015-3192(XMLの脆弱性)に関する注意喚起を追加 | 
|  |  | 共通ライブラリのバグ改修に伴う修正 | 
|  | 認証 | 記載内容の改善 
ExceptionMappingAuthenticationFailureHandlerの親クラスのプロパティの扱いに関する注意点を追加 (guideline#812)AbstractAuthenticationProcessingFilterのrequiresAuthenticationRequestMatcherプロパティの設定例を修正 (guideline#1110) | 
|  | 認可 | ガイドラインのバグ修正 | 
|  | 環境依存性の排除 | 記載内容の追加 
Tomcat8使用時の外部クラスパス(Tomcat7のVirtualWebappLoaderの代替機能)の適用方法を追加 (guideline#1081) | 
| 2015-06-12 | 全般 | 5.0.0 RELEASE英語版公開 | 
| 2015-03-06 | RESTful Web Service | ガイドラインのバグ修正 
例外ハンドリング用のサンプルコード(NullPointerExceptionが発生するコードが含まれている問題)を修正。
修正内容の詳細は、guideline#918のIssueを参照されたい。 | 
|  | チュートリアル(Todoアプリケーション REST編) | ガイドラインのバグ修正 | 
| 2015-02-23 | - | 5.0.0 RELEASE版公開 | 
|  | 全般 | ガイドラインの誤記(タイプミスや単純な記述ミスなど)の修正 記載内容の改善 新規追加 version 5.0.0対応に伴う更新 | 
|  | TERASOLUNA Server Framework for Java (5.x)のスタック | Spring IO Platform対応 
一部のライブラリを除き、推奨ライブラリの管理をSpring IO Platformに委譲する構成に変更した旨を追加。 OSSバージョンの更新 | 
|  | はじめてのSpring MVCアプリケーション | version 5.0.0対応に伴う更新 
Spring Framework 4.1の適用。ドキュメント上の構成の見直し。 | 
|  | アプリケーションのレイヤ化 | 英語翻訳のバグ修正 | 
|  | チュートリアル(Todoアプリケーション) | version 5.0.0対応に伴う更新 
Spring Framework 4.1の適用。インフラストラクチャ層としてMyBatis3をサポート。ドキュメント上の構成の見直し。 | 
|  | Webアプリケーション向け開発プロジェクトの作成 | 新規追加 
マルチプロジェクト構成のプロジェクト作成方法を追加。 | 
|  | ドメイン層の実装 | Spring Framework 4.1対応に伴う修正 
JTA 1.2の@Transactionalの扱いに関する記載を追加。
修正内容の詳細は、guideline#562のIssueを参照されたい。JPA(Hibernate実装)使用時の@Transactional(readOnly = true)の扱い関する説明を修正。
SPR-8959(Spring Framework 4.1以降)の対応により、
JDBCドライバに対して「読み取り専用のトランザクション」として扱うように指示できるように改善された。 記載内容の追加 | 
|  | インフラストラクチャ層の実装 | MyBatis3対応に伴う修正 
RepositoryImplの実装としてMyBatis3の仕組みを利用する方法を追加。 | 
|  | アプリケーション層の実装 | Spring Framework 4.1対応に伴う修正 | 
|  | データベースアクセス(共通編) | 共通ライブラリのバグ改修に伴う修正 Spring Framework 4.1対応に伴う修正 
JPA(Hibernate実装)の悲観ロックエラーがSpring FrameworkのPessimisticLockingFailureExceptionに変換されない問題に関する記載を削除。
この問題は、SPR-10815(Spring Framework 4.0以降)で解決済みである。 Apache Commons DBCP 2.0対応に伴う修正 
Apache Commons DBCP 2.0用のコンポーネントを使用するようにサンプルコード及び説明を変更。 | 
|  | データベースアクセス(MyBatis3編) | 新規追加 
O/R MapperとしてMyBatis3を使用してインフラストラクチャ層を実装する方法を追加。 | 
|  | 排他制御 | ガイドラインのバグ修正 Spring Framework 4.1対応に伴う修正 
JPA(Hibernate実装)の悲観ロックエラーがSpring FrameworkのPessimisticLockingFailureExceptionに変換されない問題に関する記載を削除。
この問題は、SPR-10815(Spring Framework 4.0以降)で解決済みである。 MyBatis3対応に伴う修正 
MyBatis3使用時の排他制御の実装方法を追加。 | 
|  | 入力チェック | ガイドラインのバグ修正 共通ライブラリのバグ改修に伴う修正 記載内容の追加 
Spring Validatorを使用した相関項目チェック時に、Bean ValidationのGroup Validationの仕組みと連携する方法を追加。
追加内容の詳細は、guideline#320のIssueを参照されたい。 Bean Validation 1.1(Hibernate Validator 5.1)対応に伴う修正 
@DecimalMinと@DecimalMaxのinclusive属性の説明を追加。Expression Languageに関する記載を追加。Bean Validation 1.1から非推奨になったAPIについて記載。Hibernate Validator 5.1.xのValidationMessages.propertiesに関するバグ(HV-881)に関する記載と回避方法を追加。 | 
|  | 例外ハンドリング | 記載内容の追加 
513バイトより小さいサイズのエラーをレスポンスするとInternet Explorerで簡易エラーページが表示される可能性がある旨の説明を追加。
追加内容の詳細は、guideline#189のIssueを参照されたい。 Spring Framework 4.1対応に伴う修正 
JPA(Hibernate実装)の悲観ロックエラーがSpring FrameworkのPessimisticLockingFailureExceptionに変換されない問題に関する記載を削除。
この問題は、SPR-10815(Spring Framework 4.0以降)で解決済みである。 | 
|  | セッション管理 | Spring Security 3.2対応に伴う修正 
POSTリクエスト時にセッションタイムアウトではなくCSRFトークンエラーが発生する問題(SEC-2422)に関する記載を削除。
Spring Security 3.2の正式版ではセッションタイムアウトを検知できる仕組みが組み込まれており、問題が解消されている。 | 
|  | メッセージ管理 | 共通ライブラリの変更内容の反映 | 
|  | ページネーション | 共通ライブラリの変更内容の反映 Spring Data Common 1.9対応に伴う修正 
バージョンアップに伴い、API仕様が変更されているクラス(Pageインタフェースなど)に対する注意点を追加。 | 
|  | コードリスト | 共通ライブラリのバグ改修に伴う修正 共通ライブラリの変更内容の反映 | 
|  | Ajax | Spring Security 3.2対応に伴う修正 
CSRF対策のサンプルコード(CSRF対策用の<meta>タグの生成方法)を変更。 Jackson 2.4対応に伴う修正 
Jackson 2.4用のコンポーネントを使用するようにサンプルコード及び説明を変更。 | 
|  | RESTful Web Service | 記載内容の改善 Spring Framework 4.1対応に伴う修正 
@RestControllerに関する説明を追加。
修正内容の詳細は、guideline#560のIssueを参照されたい。ビルダースタイルのAPIを使用してResponseEntityを生成するようにサンプルコードを変更。 Jackson 2.4対応に伴う修正 
Jackson 2.4用のコンポーネントを使用するようにサンプルコード及び説明を変更。 Spring Data Common 1.9対応に伴う修正 
バージョンアップに伴い、API仕様が変更されているクラス(Pageインタフェースなど)に対する注意点を追加。 | 
|  | ファイルアップロード | ガイドラインのバグ修正 記載内容の追加 
一部のアプリケーションサーバでServlet 3のファイルアップロード機能が文字化けする問題があるため、この事象の回避策としてApache Commons FileUploadを使用する方法を追加。
追加内容の詳細は、guideline#778のIssueを参照されたい。 | 
|  | システム時刻 | 共通ライブラリの変更内容の反映 | 
|  | Tilesによる画面レイアウト | Tiles 3.0対応に伴う修正 
Tiles 3.0用のコンポーネントを使用するように設定例及び説明を変更。 Spring Framework 4.1対応に伴う修正 
<mvc:view-resolvers>、<mvc:tiles>、<mvc:definitions>に関する説明を追加。
修正内容の詳細は、guideline#609のIssueを参照されたい。 | 
|  | 日付操作(Joda Time) | 記載内容の追加 Joda Time 2.5対応に伴う修正 
バージョンアップに伴いDateMidnightクラスが非推奨になったため、指定日の開始時刻(0:00:00.000)の取得方法を変更。 | 
|  | Spring Security概要 | Spring Security 3.2対応に伴う修正 
Appendixに「セキュアなHTTPヘッダー付与の設定」を追加。 | 
|  | Spring Securityチュートリアル | version 5.0.0対応に伴う更新 
インフラストラクチャ層としてMyBatis3を使用するように変更。Spring Framework 4.1対応の適用。Spring Security 3.2対応の適用。ドキュメント上の構成の見直し。 | 
|  | 認証 | ガイドラインのバグ修正 
<form-login>、<logout>、<session-management>タグの説明不備や説明不足の修正。
修正内容の詳細は、guideline#754のIssueを参照されたい。AuthenticationFilterの拡張方法を示すサンプルコードの修正(セッション・フィクセーション攻撃対策やCSRF対策を有効にするための設定を追加)。
修正内容の詳細は、guideline#765のIssueを参照されたい。 Spring Security 3.2対応に伴う修正 
CSRF対策を有効にしている際のログアウト方法に関する注意点を追加。ControllerからUserDetails(認証ユーザ情報クラス)にアクセスする方法として、@AuthenticationPrincipalの説明を追加。<sec:session-management>のsession-fixation-protection属性のパラメータとして、changeSessionIdの説明を追加。セッションタイムアウトの検出方法と注意点を追加。同一ユーザの同時セッション数制御(Concurrent Session Control)を有効にするための設定方法を変更(<sec:concurrency-control>を使用するように変更)。同一ユーザの同時セッション数制御関連のクラスが非推奨になり別のクラスが提供されている旨を追加。 | 
|  | CSRF対策 | Spring Security 3.2対応に伴う修正 
version 1.0.xの共通ライブラリに同封していたSpring Security 3.2.0(正式リリース前の暫定バージョン)のCSRF対策用コンポーネントに関する記載を削除。CSRF対策を有効にするための設定方法をSpring Security 3.2の正式な作法(<sec:csrf>を使用する方法)に変更。CSRF対策用のJSPタグライブラリ(<sec:csrfInput>と<sec:csrfMetaTags>)に関する記載を追加。CSRF対策を有効にしている時のセッションタイムアウトの検出方法と注意点を追加。 Spring Framework 4.1対応に伴う修正 
<form:form>を使用した際に、CSRFトークンがhiddenとして出力される条件に関する記載を変更。 | 
|  | チュートリアル(Todoアプリケーション REST編) | 記載内容の改善 version 5.0.0対応に伴う更新 
Spring Framework 4.1対応の適用。Spring Security 3.2対応の適用。Jackson 2.4対応の適用。 | 
|  | ブランクプロジェクトから新規プロジェクトの作成 | 記載内容の改善 
マルチプロジェクト構成のプロジェクト作成方法をサポート。シングルプロジェクト構成のプロジェクト作成方法を最新化。 | 
|  | 共通ライブラリが提供するJSP Tag Library と EL Functions | 新規追加 
共通ライブラリから提供しているJSPタグライブラリとEL関数の説明を追加。 | 
|  | ボイラープレートコードの排除(Lombok) | 新規追加 
Lombokを使用したボイラープレートコードの排除方法の説明を追加。 | 
|  | 英語版 | 以下の英語版を追加 | 
| 2014-08-27 | - | 1.0.1 RELEASE版公開 更新内容の詳細は、1.0.1のIssue一覧を参照されたい。 | 
|  | 全般 | ガイドラインのバグ(タイプミスや記述ミスなど)を修正 更新内容の詳細は、1.0.1のIssue一覧(bug & clerical error)を参照されたい。 | 
|  | 日本語版 | 以下の日本語版を追加 | 
|  | 英語版 | 以下の英語版を追加 | 
|  | TERASOLUNA Server Framework for Java (5.x)のスタック | バグ改修に伴い利用するOSSのバージョンを更新 
GroupId「org.springframework」のバージョンを3.2.4.RELEASEから3.2.10.RELEASEに更新GroupId「org.springframework.data」ArtifactId「spring-data-commons」のバージョンを1.6.1.RELEASEから1.6.4.RELEASEに更新GroupId「org.springframework.data」ArtifactId「spring-data-jpa」のバージョンを1.4.1.RELEASEから1.4.3.RELEASEに更新GroupId「org.aspectj」のバージョンを1.7.3から1.7.4に更新GroupId「javax.transaction」ArtifactId「jta」を削除 | 
|  | アプリケーション層の実装 | CVE-2014-1904( <form:form>タグのaction属性のXSS脆弱性)に関する注意喚起を追加 | 
|  | 日本語版 メッセージ管理 | バグ改修に関する記載を追加 | 
|  | 日本語版 ページネーション | バグ改修に関する記載を更新 | 
|  | 日本語版 Ajax | XXE Injection対策に関する記載を更新 | 
|  | 日本語版 ファイルアップロード | CVE-2014-0050(File Uploadの脆弱性)に関する注意喚起を追加 ガイドラインのバグを修正 
MultipartFilterを設定した場合、SystemExceptionResolverを使用してMultipartExceptionをハンドリングする事が出来ないため、サーブレットコンテナのerror-page機能を使用してハンドリングする方法を追加。修正内容の詳細は、guideline#59のIssueを参照されたい。 | 
|  | 日本語版 | 以下のプロジェクト作成方法をmvn archetype:generateから行うように変更 | 
|  | 日本語版 | 以下のMavenアーキタイプ作成方法を微修正 | 
| 2013-12-17 | 日本語版 | 1.0.0 Public Review版公開 |