2011-06-06 29 views
8

Creé un campo de entrada simple para una variable int. Quiero agregarle validación, pero no veo la necesidad de crear mi propio validador, ya que lo único que necesito es evitar los valores negativos y los caracteres que no sean números. Así que esto es lo que hice:¿Cómo establecer un mensaje personalizado para un validador estándar en JSF?

<h:inputText id="price" value="#{placeAddControler.price}"> 
      <f:validateLongRange minimum="0"/> 
</h:inputText>   
<h:outputText value="€" /> 
<br/> 
<span style="color: red;"><b><h:message for="price" 
showDetail="true" /></b></span> 

Cuando intento cómo funciona este es el resultado para los valores negativos: enter image description here

Y este es el resultado de caracteres:

enter image description here

¿En qué parte de mi proyecto puedo personalizar el texto de esos mensajes de validación?

Respuesta

18

Para cambiar estos valores, básicamente tiene que definir su propio archivo de recursos, anular las propiedades para las que desea mensajes personalizados y registrarlo en web.xml. This link parece explicarlo bien, así que lo he incluido en lugar de intentar reescribir el contenido.

Para una solución más simple y como eres JSF 2 también puede utilizar estos atributos del componente inputText:

requiredMessage="I am a custom message" 
converterMessage="I am a custom message" 
validatorMessage="I am a custom message" 

Esto anulará cualquier mensaje que el validador escupe.

Pero prefiero el paquete de recursos, ya que promueve la coherencia de los mensajes de error visibles del usuario en toda la aplicación.

+0

Gracias! eso funciona perfecto – sfrj

Cuestiones relacionadas