Olá pessoal,
eu preciso acrescentar a seguinte linha no meu DialectFactory do hibernate:
MAPPERS.put( "DB2/NT64", new VersionInsensitiveMapper( "org.hibernate.dialect.DB2Dialect" ) );
Pois ao utilizar o DB2 num servidor 64 bits dá o seguinte erro: "Hibernate Dialect must be explicitly set for database: DB2/NT64"
Mas eu não queria alterar os fontes do Hibernate. Alguém sabe se tem como mandar utilizar outro dialectFatory(já pesquisei e não rolou…) ou contornar esse problema de alguma outra forma?
Obrigado.
Olá @lekoloku, como está?
Post a sua configuração aqui por favor!
Mas tem um link aqui que pode te ajudar: http://bit.ly/g991JJ
Abraço!
[quote=narciso.benigno]Olá @lekoloku, como está?
Post a sua configuração aqui por favor!
Mas tem um link aqui que pode te ajudar: http://bit.ly/g991JJ
Abraço![/quote]
Na verdade o erro não é do dialeto (ele eu estou setando corretamente), mas não sei pq mesmo sentando ele, o hibernate tenta achá-lo no mappers com a key “DB2/NT64”… como não existe, a classe lança uma exceção.
Eu seto as propriedade do hibernate programaticamente, pois é um mbean que é executado pelo jboss e minhas classes ficam num jar dentro da pasta lib.
Segue abaixo o código:
Configuration conf = new Configuration();
Properties prop = conf.getProperties();
//no hibernateProperties vem todas as propriedades que eu setei para meu mbean
for (String chave : hibernateProperties.keySet()) {
String property = hibernateProperties.get(chave);
prop.setProperty(chave, property);
}
//Aqui não sei pq ele vai no mappers da classe dialectFactory mesmo eu tendo setado o dialeto que eu quero e gera o erro...
return conf.buildSessionFactory();
[]´s
Resolvido… mesmo faltando a linha DB2/NT64 se eu setar o dialeto ele nunca vai ler o mappers…
No meu caso tinha um erro no nome da propriedade hibernate.dialect, que acabava impedindo setar o dialeto que eu estava usando e…