I created a form with an which is mapped to MyBean.beansField. I used the javax.validation.NotNull anotation to make sure it has to be entered. Everything works fine so far but the error message looks like:
beansField: can not be null.
Whatever I tried so far I couldn't remove the "beansField: " in front of the message.
Can anyone please tell me where this prefix comes from and how I can get rid of it?
If you want to check if user entered data, you could alternatively use the required
attribute of an input field in combination with the requiredMessage
field, e.g. for an inputField:
<h:inputText value="#{myBean.beansField}" required="true" requiredMessage="Can not be null"/>
If you want to overwrite messages in general you have to edit or overwrite the messages.properties file:
<locale-config><default-locale>en</default-locale></locale-config> <message-bundle>/resources/messages</message-bundle>
Add messages you want to overwrite in this manner:
javax.faces.component.UIInput.REQUIRED=Field ''{0}'' cannot be empty.
add ValidationMessages.properties
in your classpath (WEB-INF/classes
or resources
if using maven structue)
add
myapp.custommessage.notNull=your custom message
and annotate like
@NotNull(message="{myapp.custommessage.notNull}")
Hello this is a long list of messages that you rewrite
# ***** JSR 303 validation messages *****
javax.validation.constraints.NotNull.message=El campo es obligatorio
javax.validation.constraints.Size.message=El campo admite de {min} a {max} caracteres
javax.validation.constraints.Min.message=El valor debe ser mayor o igual a {value}
javax.validation.constraints.Max.message=El valor debe ser menor o igual a {value}
javax.validation.constraints.Pattern.message=Solo caracteres válidos
# ==============================================================================
# Component Errors
# ==============================================================================
javax.faces.component.UIInput.CONVERSION=Se ha producido un error de conversión.
javax.faces.component.UIInput.REQUIRED=El campo es obligatorio.
javax.faces.component.UIInput.UPDATE=Se ha producido un error al procesar la información enviada.
javax.faces.component.UISelectOne.INVALID=Error de validación: el valor no es válido
javax.faces.component.UISelectMany.INVALID=Error de validación: el valor no es válido
# ==============================================================================
# Converter Errors
# ==============================================================================
javax.faces.converter.BigDecimalConverter.DECIMAL=''{0}'' debe ser un número decimal positivo o negativo.
javax.faces.converter.BigDecimalConverter.DECIMAL_detail=''{0}'' debe ser un número decimal positivo o negativo formado por cero o más dígitos, que pueden incluir a continuación una coma decimal y una fracción. Ejemplo: {1}
javax.faces.converter.BigIntegerConverter.BIGINTEGER=''{0}'' debe ser un número formado por uno o varios dígitos.
javax.faces.converter.BigIntegerConverter.BIGINTEGER_detail=''{0}'' debe ser un número formado por uno o varios dígitos. Ejemplo: {1}
javax.faces.converter.BooleanConverter.BOOLEAN=''{0}'' debe ser 'true' o 'false'.
javax.faces.converter.BooleanConverter.BOOLEAN_detail=''{0}'' debe ser 'true' o 'false'. Cualquier valor diferente a ''true'', se evaluará como ''false''.
javax.faces.converter.ByteConverter.BYTE=''{0}'' debe ser un número entre -128 y 127.
javax.faces.converter.ByteConverter.BYTE_detail=''{0}'' debe ser un número entre -128 y 127. Ejemplo: {1}
javax.faces.converter.CharacterConverter.CHARACTER=''{0}'' debe ser un carácter válido.
javax.faces.converter.CharacterConverter.CHARACTER_detail=''{0}'' debe ser un carácter ASCII válido.
javax.faces.converter.DateTimeConverter.DATE=''{0}'' no se ha podido reconocer como fecha.
javax.faces.converter.DateTimeConverter.DATE_detail=''{0}'' no se ha podido reconocer como fecha. Ejemplo: {1}
javax.faces.converter.DateTimeConverter.TIME=''{0}'' no se ha podido reconocer como hora.
javax.faces.converter.DateTimeConverter.TIME_detail=''{0}'' no se ha podido reconocer como hora. Ejemplo: {1}
javax.faces.converter.DateTimeConverter.DATETIME=''{0}'' no se ha podido reconocer como fecha y hora.
javax.faces.converter.DateTimeConverter.DATETIME_detail=''{0}'' no se ha podido reconocer como fecha y hora. Ejemplo: {1}
javax.faces.converter.DateTimeConverter.PATTERN_TYPE=Debe especificarse el atributo ''pattern'' o ''type'' para convertir el valor ''{0}''.
javax.faces.converter.DoubleConverter.DOUBLE=''{0}'' debe ser un número formado por uno o varios dígitos.
javax.faces.converter.DoubleConverter.DOUBLE_detail=''{0}'' debe ser un número entre 4.9E-324 y 1.7976931348623157E308 Ejemplo: {1}
javax.faces.converter.EnumConverter.ENUM=''{0}'' debe poder convertirse en una enumeración.
javax.faces.converter.EnumConverter.ENUM_detail=''{0}'' debe poder convertirse en una enumeración a partir de la enumeración que contiene la constante ''{1}''.
javax.faces.converter.EnumConverter.ENUM_NO_CLASS=''{0}'' debe poder convertirse en una enumeración a partir de la enumeración, pero no se ha especificado ninguna clase de enumeración.
javax.faces.converter.EnumConverter.ENUM_NO_CLASS_detail=''{0}'' debe poder convertirse en una enumeración a partir de la enumeración, pero no se ha especificado ninguna clase de enumeración.
javax.faces.converter.FloatConverter.FLOAT=''{0}'' debe ser un número formado por uno o varios dígitos.
javax.faces.converter.FloatConverter.FLOAT_detail=''{0}'' debe ser un número entre 1.4E-45 y 3.4028235E38 Ejemplo: {1}
javax.faces.converter.IntegerConverter.INTEGER=''{0}'' debe ser un número formado por uno o varios dígitos.
javax.faces.converter.IntegerConverter.INTEGER_detail=''{0}'' debe ser un número entre -2147483648 y 2147483647. Ejemplo: {1}
javax.faces.converter.LongConverter.LONG=''{0}'' debe ser un número formado por uno o varios dígitos.
javax.faces.converter.LongConverter.LONG_detail=''{0}'' debe ser un número entre -9223372036854775808 y 9223372036854775807. Ejemplo: {1}
javax.faces.converter.NumberConverter.CURRENCY=''{0}'' no se ha podido reconocer como un valor de divisa.
javax.faces.converter.NumberConverter.CURRENCY_detail=''{0}'' no se ha podido reconocer como un valor de divisa. Ejemplo: {1}
javax.faces.converter.NumberConverter.PERCENT=''{0}'' no se ha podido reconocer como porcentaje.
javax.faces.converter.NumberConverter.PERCENT_detail=''{0}'' no se ha podido reconocer como porcentaje. Ejemplo: {1}
javax.faces.converter.NumberConverter.NUMBER=''{0}'' no es un número.
javax.faces.converter.NumberConverter.NUMBER_detail=''{0}'' no es un número. Ejemplo: {1}
javax.faces.converter.NumberConverter.PATTERN=''{0}'' no es un modelo de número.
javax.faces.converter.NumberConverter.PATTERN_detail=''{0}'' no es un modelo de número. Ejemplo: {1}
javax.faces.converter.ShortConverter.SHORT=''{0}'' debe ser un número formado por uno o varios dígitos.
javax.faces.converter.ShortConverter.SHORT_detail=''{0}'' debe ser un número entre -32768 y 32767. Ejemplo: {1}
javax.faces.converter.STRING=No se ha podido convertir ''{0}'' en una cadena.
# ==============================================================================
# Validator Errors
# ==============================================================================
javax.faces.validator.DoubleRangeValidator.MAXIMUM=Error de validación: el valor es mayor que el máximo permitido de "{0}"
javax.faces.validator.DoubleRangeValidator.MINIMUM=Error de validación: el valor es inferior que el mínimo permitido de ''{0}''
javax.faces.validator.DoubleRangeValidator.NOT_IN_RANGE=Error de validación: el atributo especificado no está entre los valores esperados: {0} y {1}.
javax.faces.validator.DoubleRangeValidator.TYPE=Error de validación: el valor no tiene el tipo correcto
javax.faces.validator.LengthValidator.MAXIMUM=Error de validación: el largo es mayor que el máximo permitido de ''{0}''
javax.faces.validator.LengthValidator.MINIMUM=Error de validación: el largo es inferior que el mínimo permitido de ''{0}''
javax.faces.validator.LongRangeValidator.MAXIMUM=Error de validación: el valor es mayor que el máximo permitido de ''{0}''
javax.faces.validator.LongRangeValidator.MINIMUM=Error de validación: el valor es inferior que el mínimo permitido de ''{0}''
javax.faces.validator.LongRangeValidator.NOT_IN_RANGE=Error de validación: el atributo especificado no está entre los valores esperados: {0} y {1}.
javax.faces.validator.LongRangeValidator.TYPE=Error de validación: el valor no tiene el tipo correcto.
javax.faces.validator.NOT_IN_RANGE=Error de validación: el atributo especificado no está entre los valores esperados: {0} y {1}.
javax.faces.validator.RegexValidator.PATTERN_NOT_SET=Debe definirse el modelo Regex.
javax.faces.validator.RegexValidator.PATTERN_NOT_SET_detail=El modelo Regex debe estar definido como un valor no vacío.
javax.faces.validator.RegexValidator.NOT_MATCHED=El modelo Regex no coincide
javax.faces.validator.RegexValidator.NOT_MATCHED_detail=El modelo Regex ''{0}'' no coincide
javax.faces.validator.RegexValidator.MATCH_EXCEPTION=Error en expresión regular
javax.faces.validator.RegexValidator.MATCH_EXCEPTION_detail=Error en expresión regular, ''{0}''
javax.faces.validator.BeanValidator.MESSAGE={0}