[Resolvido] Formatar campo no view do JSF

olá

Como posso formatar o campo para númerico (valor) no view(JSP) do JSF

estou tentando assim

<h:outputText value="#{contratacao.fornecedor.valorTotal}">
	<f:convertNumber pattern="#.###,##" />
</h:outputText>

mas ele não muda nada, alguém pode ajudar?

porém nesse mesmo número eu posso ter até bilhão, ou seja, pattern ###.###.###.###,##

abraço

provavelmente você está tentando formatar em tempo de excecução … em JSF isso acho não é possivel. Eu utilizo em meus projeto o jquery para formatar determinados campo como dinheiro, cep, etc… se você quer formatar para valor monetario usa o jqueryMoney da uma procurada.

abraço

essa extensão do JQuery eu conheço, uso ela para formatar as entradas.

eu vi em algum site isso sendo feito em JSF, mas não lembro qual

mas acho que farei com JQuery mesmo

abraço

Fiz da seguinte forma

<h:outputText value="#{contratacao.fornecedor.valorTotalS}" />  

no bean fornecedor eu adicionei um parametro

private String valorTotalS;

e criei um get para ele fazendo da seguinte forma

NumberFormat nf = new DecimalFormat("###,##0.00");  
valorTotalS = nf.format(this.valorTotal); 

abraço

Amigo sua formacao deu certo comigo, mais tenho a necessidade
e efetuar calculos com os valores, por isso coloquei minha variavel
como double mais inves de gravar no banco 10.50 ele grava 10.5
voce pode me ajudar

Agradeco a Todos

[quote=sauron_fight]Amigo sua formacao deu certo comigo, mais tenho a necessidade
e efetuar calculos com os valores, por isso coloquei minha variavel
como double mais inves de gravar no banco 10.50 ele grava 10.5
voce pode me ajudar

Agradeco a Todos[/quote]

sauron_fight tecnicamente 10.50 é a mesma coisa que 10.5

o que você pode fazer é configurar no banco de dados para sempre ele completar o valor com duas casas decimais

outra coisa, é quando ele for exibir na tela, ele converte esse numero para String e substitui o ponto por virgula e completa com as casas decimais desejadas

Abraço

Fiz o seguinte coloquei meu atributos String fiz um Double.parseDouble fiz os calculos
monetarios e depois utilizei a classe DecimalFormat deu tudo certo.