Mostrar un mensaje de retorno de una action

2170 vistas

En caso de error técnico o de trabajo, o bien para mostrar el buen funcionamiento de un proceso, es posible declarar un mensaje en la Action y registrarlo en el scope request o session para poder mostrarlo en un jsp.

Para hacerlo basta con usar la clase ActionMessage y ActionMessages:

Declaración de la ActionMessage en la Action:


java
  1. ActionMessages messages = new ActionMessages();
  2. messages.add("message1", new ActionMessage("error.message"));
  3. this.saveMessages(request, messages);



El texto del mensaje (correspondiente a la llave error.message en el ejemplo) tiene que estar declarado en el fichero propiedades de internacionalización.

Este mensaje es parametrizable como vemos en [iurl=90&all=0&fs=1269#1272]Mostrar un mensaje de error simple referenciado en el ResourceBundle[/iurl].

La recuperación del mensaje en la página jsp se hace mediante el tag :



html4strict
  1. <html:messages id="idMessage" message="true">
  2.   <bean:write name="idMessage"/>
  3. </html:messages>



idMessage es el nombre de la variable que permite buscar en la lista de mensajes.
message="true" indica que éstos son los mensajes (ActionMessages) y no los errores (ActionErrors) que queremos mostrar.

Para mostrar un mensaje en particular y no la lista de los mensajes como se indica anteriormente, sólo tendremos que precisar el nombre de la variable que contiene el mensaje en el atributo property del tag :



html4strict
  1. <html:messages id="idMessage" message="true">
  2.   <bean:write name="idMessage" property="message1" />
  3. </html:messages>