Double sendo salvo errado no BD ( Oracle Toplink )

0 respostas
P

Opa :smiley:

Utilizamos o toplink para realizar o mapeamento com o BD e quando vou salvar um valor, ele está arredondanto para cima o valor. No meu pojo, tenho a seguinte conversão:

public void save(ProdutoVO produtoVO){
		if(produtoVO.getVlNovo() != null){
			pojo.setVlNovoInformado(new Double(produtoVO.getVlNovo().setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()));
		}
		unitOfWork.assignSequenceNumber(pojo);
		unitOfWork.registerObject(pojo);
}

No momento que eu envio o unitOfWork.registerObject(pojo), o meu vlCustoNovo continua com o valor correto ( Ex.: 1.9 ) e no momento q eu dou um Select no BD, ele me retorna 2. Não sei pq ele está fazendo este arredondamento.

Alguém já passou por isso? Existe a possibilidade do Banco de Dados estar fazendo isso?

[]'s

Criado 26 de dezembro de 2008
Respostas 0
Participantes 1