JSf - Messages_PT.properties, como eu faco pra usar ele?{mensagens de erro em portugues}{RESOLVIDO}

Ola pessoal
eu consegui um messages_pt.properties que possue as mensagens do JSF em portugues.
segue uma parte do codigo, so pra confirmar se é isto mesmo

javax.faces.component.UIInput.CONVERSION        = Erro de conversão
javax.faces.component.UIInput.CONVERSION_detail = {0} Ocorreu um erro de conversão.

javax.faces.component.UIInput.REQUIRED        = Erro de validação
# Removi as aspas-duplas e os dois pontos
javax.faces.component.UIInput.REQUIRED_detail = {0} Este campo é requerido.

javax.faces.component.UISelectOne.INVALID        = Erro de validação
javax.faces.component.UISelectOne.INVALID_detail = {0} Este campo não é uma opção válida.

javax.faces.component.UISelectMany.INVALID        = Erro de validação
javax.faces.component.UISelectMany.INVALID_detail = {0} Este campo não é uma opção válida.

javax.faces.validator.NOT_IN_RANGE        = Erro de validação
javax.faces.validator.NOT_IN_RANGE_detail = {2} O atributo especificador não está entre os valores esperados {0} e {1}.

javax.faces.validator.DoubleRangeValidator.LIMIT        = Erro de validação
javax.faces.validator.DoubleRangeValidator.LIMIT_detail = O atributo especificado não pode ser convertido para o tipo apropriado.

javax.faces.validator.DoubleRangeValidator.MAXIMUM        = Erro de validação
javax.faces.validator.DoubleRangeValidator.MAXIMUM_detail = {1} Este campo é maior que o máximo permitido de {0}.

javax.faces.validator.DoubleRangeValidator.MINIMUM        = Erro de validação
javax.faces.validator.DoubleRangeValidator.MINIMUM_detail = {1} Este campo é menor que o mínimo permitido de {0}.

javax.faces.validator.DoubleRangeValidator.TYPE        = Erro de validação
javax.faces.validator.DoubleRangeValidator.TYPE_detail = {0} Este campo não é do tipo correto.

javax.faces.validator.LengthValidator.LIMIT        = Erro de validação
javax.faces.validator.LengthValidator.LIMIT_detail = O atributo especificado não pode ser convertido para o tipo apropriado.

javax.faces.validator.LengthValidator.MAXIMUM        = Erro de validação
javax.faces.validator.LengthValidator.MAXIMUM_detail = {1} Este campo é mais longo do que o máximo permitido de {0} caracteres.

javax.faces.validator.LengthValidator.MINIMUM        = Erro de validação
javax.faces.validator.LengthValidator.MINIMUM_detail = {1} Este campo é mais curto do que o mínimo permitido de {0} caracteres.

javax.faces.validator.LongRangeValidator.LIMIT        = Erro de validação
javax.faces.validator.LongRangeValidator.LIMIT_detail = O atributo especificado não pode ser convertido para o tipo apropriado.

javax.faces.validator.LongRangeValidator.MAXIMUM        = Erro de validação
javax.faces.validator.LongRangeValidator.MAXIMUM_detail = {1} Este campo é maior que o máximo permitido de {0}.

javax.faces.validator.LongRangeValidator.MINIMUM        = Erro de validação
javax.faces.validator.LongRangeValidator.MINIMUM_detail = {1} Este campo é menor que o mínimo permitido de {0}.

javax.faces.validator.LongRangeValidator.TYPE        = Erro de validação
javax.faces.validator.LongRangeValidator.TYPE_detail = {0} Este campo não é do tipo correto.


# additional messages (not specified, but supported by myfaces API converters)

javax.faces.convert.BigDecimalConverter.CONVERSION        = Erro de conversão
javax.faces.convert.BigDecimalConverter.CONVERSION_detail = {0} Este campo especificado não é um número válido.

javax.faces.convert.BigIntegerConverter.CONVERSION        = Erro de conversão
javax.faces.convert.BigIntegerConverter.CONVERSION_detail = {0} Este campo especificado não é um número válido.

javax.faces.convert.BooleanConverter.CONVERSION        = Erro de conversão
javax.faces.convert.BooleanConverter.CONVERSION_detail = {1} Impossível converter '{0}' para Boolean.

javax.faces.convert.ByteConverter.CONVERSION        = Erro de conversão
javax.faces.convert.ByteConverter.CONVERSION_detail = {1} Impossível converter '{0}' para Byte.

javax.faces.convert.CharacterConverter.CONVERSION        = Erro de conversão
javax.faces.convert.CharacterConverter.CONVERSION_detail = Não foi possível converter '{0}' para caracter.

javax.faces.convert.DateTimeConverter.CONVERSION        = Erro de conversão
javax.faces.convert.DateTimeConverter.CONVERSION_detail = {1} Este campo especificado não é uma data/hora válida.

javax.faces.convert.DoubleConverter.CONVERSION        = Erro de conversão
javax.faces.convert.DoubleConverter.CONVERSION_detail = {0} Este campo especificado não é um número válido.

javax.faces.convert.FloatConverter.CONVERSION        = Erro de conversão
javax.faces.convert.FloatConverter.CONVERSION_detail = {0} Este campo especificado não é um número válido.

javax.faces.convert.IntegerConverter.CONVERSION        = Erro de conversão
javax.faces.convert.IntegerConverter.CONVERSION_detail = {0} Este campo especificado não é um número válido.

javax.faces.convert.LongConverter.CONVERSION        = Erro de conversão
javax.faces.convert.LongConverter.CONVERSION_detail = {0} Este campo especificado não é um número válido.

javax.faces.convert.NumberConverter.CONVERSION        = Erro de conversão
javax.faces.convert.NumberConverter.CONVERSION_detail = {0} Este campo especificado não é um número válido.

javax.faces.convert.ShortConverter.CONVERSION        = Erro de conversão
javax.faces.convert.ShortConverter.CONVERSION_detail = {0} Este campo especificado não é um número válido.

porem, como eu uso ele?
como faco referencia a ele pro JSF o utilizar?

e outra pergunta, existe algum lugar “confiavel” onde exista para download todas as mensagens?
pois nao sei se esta lista esta completa ou nao

abs
T+

Olá

você tem que setar o default locale lá no faces-config.xml

Diica: Dentro do jar do myfaces já possui um message-bundle pra pt_BR, ou seja, tu pode pegar ele e colocar na tua aplicação =D. Desconheço de alguma implementação do JSF que possua tal message-bundle.

Primeiro vc tem que criar um pacote com um arquivo properties.

br.com.algo.mensagens
=> mensagens.properties

nele vc copia todas suas mensagens para dentro.

Depois vc tem configurar teu faces-config para utilizar as mensagens personalizadas em português.

<!-- Mensagens de validação --> <application> <locale-config> <supported-locale>pt_BR</supported-locale> </locale-config> <message-bundle> br.com.jampasoftwaredevelopment.messages.mensagens </message-bundle> </application>

Em seguida na tua página vc informa as mensagens para cada campo.
Exemplo para login e senha:

<h:message for="login"></h:message> <h:message for="senha"></h:message>

Assim para cada campo.

No seu formulário vc tem que adicionar junto a tag <h:inputText… required=“true”/>
Caso queira usar tamanhos mínimos ou máximo de caracteres use:

<h:inputText value="" id="telefone" required="true"> <f:validateLength minimum="8"/> // AKI PARA DETERMINAR TAMANHOS </h:inputText>

E pronto é só testar.

Para mensagens padrões em inglês utilize:

<h:messages/>

blz anderson

funcionou aqui
pra quem precisar saber como ficou o codigo

pacote

br.com.krusst.precadastro.mensagem

faces-config.xml

...
mensagens.properties
...

pagina.jsp

...
<h:inputText value="#{pessoaFisicaMB.pessoaFisicaDB.pessoaFisica.nome}" id="nome" maxlength="50" size="50" required="true"  styleClass="FormCampo" label="Nome ">
...
<rich:messages layout="table" ajaxRendered="true" errorClass="MsgErr" tooltip="true" showDetail="true" showSummary="true" passedLabel="No Errors"></rich:messages>
...

desta forma funcionou blz

porem, qdo eu utilize o nome “Messages_pt_BR.properties” ele me gerou erro, falando que nao o encontrava?

eu fiz os teste tanto como o jeito que esta escrito ai, como em minuscula, e me retornou o mesmo erro!
so uma curiosidade, eu nao posso utilizar “_” pra especificar os nomes?

bem, fora isso, funcionou perfeitamente.

Leozin, eu vou dar uma olhada dentro do myfaces e ver se tem mais coisas que o arquivo que eu tenho.

obrigado aos 2

T+

Aproveitando as perguntas, gostaria de saber uma coisa sobre as mensagens do jsf.

Estou com a seguinte situação.

Tenho um formulario de cadastro, faço a validação pelo jsf.
Mas to precisando mostrar o erro pelo <h:messages>,
mas no local que deve aparecer essa msg, tem uma div com um cod html que está com display:none,
preciso fazer o seguinte:
quando der a msg de erro tenho q colocar pra div aparecer!

nao sei se preciso chamar um js pra mudar o display…mas…

nao sei se deu pra entender! hehe

exemplo:
Preciso mostrar essa div:

MSG DE ERRO AQUI !

Mensagem do Sistema

vlw!