Estou seguindo um exemplo simples usando hibernate, para saber como funcionara, porém está apresentando o seguinte erro:
[color=red]Erro: ‘hibernate.dialect’ must be set when no Connection avalable [/color]
E não estou achando nada a respeito.
hibernate.cfg.xml
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN""http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"><hibernate-configuration><session-factoryname="java:comp/env/hibernate/SessionFactory"><propertyname="connection.driver_class">oracle.jdbc.OracleDriver</property><propertyname="connection.url">url</property><propertyname="connection.username">usuario</property><propertyname="connection.password">senha</property><propertyname="show_sql">true</property><propertyname="dialect">org.hibernate.dialect.Oracle9iDialect</property><propertyname="connection.pool_size">10</property><mappingresource="exemplo/Usuario.hbm.xml"/></session-factory></hibernate-configuration>
No caso do que o Thiago falou, em vez de PostgreSQLDialect, troca para o dialect que você vai usar no seu banco (se não for PostGre, claro).
J
jessicabnu
No caso, só deixar assim:
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN""http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"><hibernate-configuration><propertyname="hibernate.connection.driver_class">oracle.jdbc.OracleDriver</property><propertyname="hibernate.connection.url">url</property><propertyname="hibernate.connection.username">usuario</property><propertyname="hibernate.connection.password">senha</property><propertyname="hibernate.dialect">org.hibernate.dialect.Oracle9iDialect</property><propertyname="show_sql">true</property><propertyname="connection.pool_size">10</property><mappingresource="exemploSimples/Usuario.hbm.xml"/></hibernate-configuration>
Mesmo assim continua gerando o erro.
C
Carnevalli
Voltei a mexer com Hibernate depois de um tempo e vejo que algumas coisas estão diferentes.
Estou fazendo um exemplo para relembrar, usando MySQL e obtendo este mesmo erro.
Parece que o Hibernate não encontra o arquivo de configuração, pois experimentei tirar o arquivo do projeto e continuou com o mesmo erro:
Exception in thread "main" org.hibernate.HibernateException: 'hibernate.dialect' must be set when no Connection avalable
at org.hibernate.dialect.resolver.DialectFactory.buildDialect(DialectFactory.java:107)
at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:138)
at org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2119)
at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2115)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1339)
Alguém poderia colaborar com suas sugestões?
Obrigado!
C
Carnevalli
Prezados,
Coloquei os arquivos XML de configuração do Hibernate no diretório C:\Arquivos de programas\Java\jdk1.6.0_14\jre\lib\ext\data e eles foram reconhecidos.
Agora o problema é apenas fazer com que a classe seja encontrada.
Segue o novo erro:
Exception in thread "main" org.hibernate.MappingException: entity class not found: Pessoa
at org.hibernate.mapping.PersistentClass.getMappedClass(PersistentClass.java:122)
at org.hibernate.tuple.PropertyFactory.getGetter(PropertyFactory.java:191)
divorak
Olá jessicabnu, eu estou tendo o mesmo problema de não reconhecimento das configurações do Hibernate, como que você fez para solucionar? Você jogou o arquivo dentro da lib da JDK ou criou um arquivo data, pergunto pq não existe a pasta chamada data e este caminho provavelmente deve estar em seu $JAVAHOME seria jogar o arquivo de propriedade ou XML de configurações em lugar definido nas variáveis?