validation - validate - Cómo personalizar el mensaje de error de validación JSF
validate email jsf (3)
¿Cómo puedo personalizar el mensaje de validación que aparece cuando falla la validación?
Aquí está el código que tengo:
<h:form>
<p><h:inputText
id="userNo"
title="Type a number from 0 to 10:">
<f:validateLongRange
minimum="3"
maximum="6"/>
</h:inputText>
<h:commandButton id="submit" value="Submit"
action="response"/>
</p>
<h:message showSummary="true" showDetail="false"
id="errors1"
for="userNo"/>
</h:form>
Actualmente el mensaje se ve así:
j_idt10:userNo: Validation Error: Specified attribute is not between the expected values of 3 and 6.
Que no es particularmente fácil de usar.
Además de la respuesta de Daniel, siempre podría usar el atributo de label
para sus componentes de entrada para eliminar la identificación del cliente ( j_idt10:userNo:
del mensaje de error.
Por ejemplo con
<h:inputText id="userNo" title="Type a number from 0 to 10:"
label="User number">
<f:validateLongRange
minimum="3"
maximum="6"/>
</h:inputText>
Producirá:
Número de usuario: Error de validación: El atributo especificado no se encuentra entre los valores esperados de 3 y 6.
El atributo de etiqueta puede ser una expresión el también para cambiar esta parte del mensaje de error dinámicamente.
La forma más sencilla sería establecer el atributo validatorMessage="my custom message"
en la etiqueta <h:inputText>
.
Para obtener una forma más avanzada, lea este artículo Personalice el mensaje de error de validación en JSF 2.0
Y aquí una referencia completa a todos los mensajes disponibles que puede anular en JSF 2.0.x
Puede utilizar la propiedad validatorMessage del texto de entrada. Utilice la propiedad requiredMessage para el mensaje requerido, es diferente del mensaje del validador.
<h:input text required ="true" validatorMessage="Enter user friendly message">
<f:validateLongRange
minimum="3"
maximum="6"/>
</h:inputText>