Trabajamos no solo para producir, sino para dar valor al tiempo.
Eugène Delacroix

Archivos del día 29 de October del 2007

[Struts Validator] – Mensajes con argumentos

Cuando una validación no pasa, Struts Validator pinta un mensaje que le puedes acompañar con los argumentos que quieras.

En una validación validwhen, yo quería que me saltase el mensaje típico cuando no pase la validación. Pero el nombre del campo era variable, tenía cuatro campos de justificación de distintos campos:

 

bioseguridad.justificacion.respuesta=Justifique su Respuesta al apartado {0}

Y el argumento que le pasas diferencia los campos justificación entre sí.

Pero en el validation.xml, tenía un mensaje (errors.required) que tenía un argumento (bioseguridad.justificación.respuesta) que tenía también un argumento (el campo justificación al que correspondía)… y no sabía cómo implementarlo.

Gracias a José Daniel (en la guía del Struts Validator también viene), encontré la respuesta.

Al fallar una validación, se presenta un mensaje. Por defecto, cada tipo de validación tiene un mensaje asociado, pero lo puedes cambiar:

 

<field property="bioseguridad.justificacionH" depends="validwhen, maxlength">

      <msg name="validwhen" key="bioseguridad.justificacion.respuesta" />

      <arg0 key="bioseguridad.liberacionOMGs"/>

      <var>

            <var-name>test</var-name>

            <var-value>((bioseguridad.liberacionOMGs != "1") or (*this* != null))</var-value>

      </var>

      <arg2 name="maxlength" key="${var:maxlength}" resource="false"/>

      <var><var-name>maxlength</var-name><var-value>3500</var-value></var>

</field>

[tags]struts, struts validator[/tags]

Chiste de Dilbert

No me gusta escribir post que sólo son enlaces a otros sitios, pero… un chiste que me parece muy acertado, causa de un alto porcentaje de mi encabronamiento laboral.

Comenta