ayslanms
Tenta o convertNumber:
<h:inputText value="#{vendaController.formaPagto.valor}">
<rich:jQuery selector="#val"
query="maskMoney({decimal: '.', thousands: '.',symbol: 'R$',precision:2,showSymbol:false})" timing="onload" />
<f:convertNumber maxFractionDigits="2" minFractionDigits="2" />
</h:inputText>
raf4ever
Agora a exceção é outra:
value="#{vendaController.formaPagto.valor}": java.lang.IllegalArgumentException: argument type mismatch
ayslanms
Acho que sua função está inválida, você está setando o separador decimais como “.” e o de milhares como “.” também:
decimal: '.', thousands: '.'
O correto seria:
decimal: ',', thousands: '.'
raf4ever
Mesmo erro.
Achei esse link http://lucamolteni.wordpress.com/2010/07/23/using-bigdecimals-in-jsf/ onde o autor afirma que o f:convertNumber não rola pra BigDecimal,vou tentar escrever meu próprio converter e atualizo aqui.
ayslanms
Cara sempre uso convertNumber no meus projetos. Acho que apenas as versões mais antigas do JSF talvez não suportem isso.
raf4ever
ayslanms
Sim, utilizo com BigDecimal
raf4ever
Coloquei o converter e agora recebo a seguinte mensagem:
'1.669.00' must be a signed decimal number.
Converter:
<h:outputText value="#{row.valor}" >
<f:convertNumber minFractionDigits="2" maxFractionDigits="2" type = "number" />
</h:outputText>