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.