Most spring tutorials and examples show how to get a message from a resource file and how to show it in your view (jsp), but not how you should handle these messages in your controller and between views.
Here is an example of how I am doing this now when I have a view / controller that handles forgotten passwords. When the password is sent, I am redirected back to the login screen with the message that "your password has been sent ..."
@RequestMapping(value="/forgottenpassword") public String forgottenpassword(@RequestParam String email) { ....something something if(email != null){ return "redirect:/login?forgottenpassword=ok"; } } @RequestMapping(value="/login") public String login(HttpServletRequest request) { if(request.getParameter("forgottenpassword") != null && request.getParameter("forgottenpassword").equals("ok")) { data.put("ok_forgottenpassword", "forgottenpassword.ok"); } return "login"; }
Finally, I show the message in my opinion, in this case the freemarker template
<#if (ok_forgottenpassword?exists)> <div class="alert alert-success"><@spring.message "${ok_forgottenpassword}" /></div> </#if>
Is this the best way to do this as part of spring? It's just with one type of message, but what if I need 5?
java spring spring-mvc resourcebundle
Tommy
source share