package com.mossle.core.spring; import java.util.ArrayList; import java.util.List; import javax.annotation.Resource; import org.springframework.context.MessageSource; import org.springframework.context.support.MessageSourceAccessor; import org.springframework.ui.Model; import org.springframework.web.servlet.mvc.support.RedirectAttributes; public class MessageHelper { private MessageSourceAccessor messages; public void addFlashMessage(RedirectAttributes redirectAttributes, String code, String text) { addFlashMessage(redirectAttributes, messages.getMessage(code, text)); } public void addFlashMessage(RedirectAttributes redirectAttributes, String text) { List<String> flashMessages = (List<String>) redirectAttributes .getFlashAttributes().get("flashMessages"); if (flashMessages == null) { flashMessages = new ArrayList<String>(); redirectAttributes .addFlashAttribute("flashMessages", flashMessages); } flashMessages.add(text); } public void addMessage(Model model, String text) { List<String> flashMessages = (List<String>) model.asMap().get( "flashMessages"); if (flashMessages == null) { flashMessages = new ArrayList<String>(); model.addAttribute("flashMessages", flashMessages); } flashMessages.add(text); } @Resource public void setMessageSource(MessageSource messageSource) { this.messages = new MessageSourceAccessor(messageSource); } }