Struts2: actionError e actionMessage, esempio di utilizzo

Gli actionMessage e le actionError (chissè perchè nella mia testa i messaggi sono maschili e gli errori femminili) non sono altro che messaggi che possono essere agganciati ad una action e visualizzati sulla pagina di arrivo.

Inserimento in una action

All’interno di una action è sufficiente utilizzare i metodi:

  • addActionError
  • addActionMessage

come in questo esempio:

public class EsempioMessaggi extends ActionSupport {
 
	private static final long serialVersionUID = 1L;
 
	public String execute() throws Exception {
 
		addActionError("Si è verifica un errore imprevisto... peccato.");
		addActionError("Si è verificato un errore... prova a riavviare il computer.");
		addActionError("Non sono riuscito a fare quello che dovevo fare. E' sicuramente <strong>colpa del programmatore</strong>.");		
 
		addActionMessage("Quello che doveva essere fatto è stato fatto.... però...");
		addActionMessage("Tranquillo, è tutto a posto");
		addActionMessage("Una pagina html comincia con <html> e finisce con </html>");
 
		return "success";
	}
 
}

Visualizzazione in una pagina

La loro visualizzazione è delegata agli struts-tags, come in questo esempio:

<s:if test="hasActionErrors()">
   <div class="errori">
      <s:actionerror escape="false"/>
   </div>
</s:if>
 
<s:if test="hasActionMessages()">
   <div class="messaggi">
      <s:actionmessage/>
   </div>
</s:if>

Il risultato finale di questo fantastico esempio è:

Struts2: actionError e actionMessage, esempio di utilizzo
Struts2: actionError e actionMessage, esempio di utilizzo

Da notare che di default l’attributo escape dei due tag e è impostato a true, il che significa che l’html non viene tradotto.

Tutto qua.

Leave a Reply

Your email address will not be published.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>