44032


SpringではValidationやServiceで発生したエラーの情報をBindingResultにセットさせ、  
JSPで`<form:errors>`で内容を表示できると思うのですが

Strutsでは`<html:message>`でメッセージを出力していたのですが、エラーメッセージ以外のメッセージを表示しようとしたらどのようにすればいいのでしょうか？

[What is the equivalent of Struts ActionMessages in Spring
MVC?](https://stackoverflow.com/q/2536723/2322778)

※リンク先を見る限りエラー以外のメッセージを出力するには自身で仕組みを作る必要があるのかなぁ・・・と思うのですがそうなのでしょうか？


CC BY-SA 4.0
2018-05-15T08:02:08.657
44002
2018-05-17T04:37:02.303
2018-05-17T04:37:02.303
3060
27196
question
spring
SpringMVC で エラー以外のメッセージを表示する方法について


> エラーメッセージ以外のメッセージを表示しようとしたらどのようにすればいいのでしょうか？

[SPR-2657](https://jira.spring.io/browse/SPR-2657)の最初のコメントにあるように、`ModelAndView`を使用するのが一般的なのではないでしょうか。

例えば、登録後の成功メッセージであれば、次のように`Controller`で`ModelAndView`にメッセージを追加(`addObject`)して、

[code]

    mav.addObject("success_message", msg.getMessage("registration.successfully.completed", null, locale));
    
[/code]

テンプレートで、それらしいスタイルを付けて表示する、とか（※ちなみに以下は、ThymeleafとBootstrapを使用した例です）。

[code]

    <div class="alert alert-success" role="alert"><p th:text="${success_message}" /></div>
    
[/code]

[SPR-2657](https://jira.spring.io/browse/SPR-2657)の詳細を見ると、ResolutionがDuplicateで、StatusがClosedになっています。  
Duplicate(重複)した問題というのは、[SPR-6464](https://jira.spring.io/browse/SPR-6464)のようなので、Springの開発者はこれが解決策となると考えて、この問題をクローズしたのだと思います。[SPR-6464](https://jira.spring.io/browse/SPR-6464)の「フラッシュスコープ」で要件を満たせるかも、検討してみて下さい。


CC BY-SA 4.0
2018-05-17T04:11:15.933
44032
2018-05-17T04:11:15.933
21092
44002
answer