Hibernate e import.sql (codificação)

Pessoal, tenho uma aplicação que utiliza maven, jsf e hibernate.
Estou usando o hibernate.hbm2ddl, na criação do banco, tenho alguns inserts que devem ser feitos por padrão. Estes inserts estao em um arquivo sql denominado import.sql. O hibernate utiliza este arquivo para ler as sqls de inserção.

O banco de dados é oracle 10g XE.

Problema: A codificação do sistema java em geral está como UTF-8. A codificação do banco no servidor está como

Quano o hibernate le o arquivo e insere no banco, estou tendo problemas com acentuação e caracteres como Ç.

Alguem sabe como resolver isso, configurando o hibernate ou o arquivo de sql? (algum cabeçalho no arquivo, sei lá.)

Já tentei criar o arquivo como ANSI, porem quando eu altero pelo netbeans, ele retorna aos problemas.

Não posso alterar o charset do banco, e talvez mudar a codificação do codigo no netbeans nao ajude e sim cause mais problemas.

Obrigado.

Voce deve deixar todos falando a mesma lingua. Portanto, se a unica coisa que nao pode mudar eh seu banco de dados, entao use ele como o padrao. Imagino que voce esta usando ISO-8859-1, entao, voce pode formatar seu arquivo nesta codificacao (editores de texto “decentes” geralmente tem a opcao “encoding” na hora de “salvar como”). Infelizmente, nao existe uma forma de falar para o Hibernate qual encoding usar[1], entao, voce tem que fazer isso como parametro da JVM, como o “file.encoding”. Por exemplo: java -Dfile.encoding=ENCODING_ESPERADO SeuPrograma . Se esta usando um Application Server, voce deve configura-lo para iniciar com este parametro (por exemplo, no run.conf do JBoss AS).

[1] O Hibernate usa “new InputStreamReader( stream );” diretamente, sem especificar o encoding. Voce pode fazer um patch e mandar para o Hibernate (pontos extras se vc adicionar um test case tambem). Existe este item em aberto, caso se interesse em enviar um patch: http://opensource.atlassian.com/projects/hibernate/browse/HBX-711