Interessante. Ho trovato questo in un vecchio mio progetto .:
(questo era un controller di base, ma potrebbe essere un metodo di utilità)
protected void addMessage(String key, boolean isError,
HttpServletRequest request, Object... args) {
List<Message> msgs = (List<Message>) request.getAttribute(MESSAGES_KEY);
if (msgs == null) {
msgs = new LinkedList<Message>();
}
Message msg = new Message();
msg.setMessage(msg(key, args));
msg.setError(isError);
msgs.add(msg);
request.setAttribute(MESSAGES_KEY, msgs);
}
e poi in una messages.jsp
che è stata inclusa in tutte le pagine che ho avuto :
<c:forEach items="${messages}" var="message">
//display messages here
</c:forEach>
MESSAGES_KEY
è una costante dei miei con un valore di "messaggi" (in modo che sia più avanti accessibile nel ciclo foreach).
La classe Message
è un semplice POJO con queste due proprietà. L'ho usato per i messaggi info e per gli errori di non convalida personalizzati.
Questa è una soluzione piuttosto personalizzata, ma forse non avevo ancora trovato una soluzione integrata. Google un po 'di più prima di utilizzare una soluzione del genere.
Grazie per l'anwersd. Come vedo, non esiste una matrice standard come esiste ad esempio in Struts. Avevo già preso in considerazione l'opzione che entrambi avevi proposto, anche se avevo il dubbio che esistesse qualche caratteristica speciale in primavera che potesse gestirlo. – Javi