EntityBean nao grava decimais no Oracle com JBoss em pt_BR

1 resposta
wbsouza

Estou com problemas para gravar as casas decimais de float/double usando EntityBean no JBoss. O Locale do servidor está em pt_BR.

Monitorei os SQLs que o Oracle estava recebendo via P6Spy e percebí que o SQL que o EntityBean está gerando está usando ponto ao invés de virgula, e o JBDC driver espera receber virgula pq o Locale está para pt_BR. Daí o JDBC driver só grava a parte inteira do número e despresa a mantissa :frowning:

Imaginei que se tiver uma forma de mandar um “ALTER SESSION” para o Oracle apos ele pegar a conexão este problema estaria resolvido, mas o EntityBean faz tudo sozinho, via JNDI e tal, de maneira que eu não tenho nem como enxergar a conexão que está sendo usada.

Também não posso mudar a sessão default do Oracle pq é um banco de produção e tem outras aplicações executando sob a mesma instance.

[]s, Welington B. Souza

1 Resposta

wbsouza

Resolvido!

Pensei que o Locale pt_BR era o responsável, mas bastou mudar o EntityBean. Alterei o tipo do dado do entity de Float para Double e funcionou perfeitamente.

[]s, Welington B. Souza

Criado 7 de abril de 2005
Ultima resposta 7 de abr. de 2005
Respostas 1
Participantes 1