Hibernate - problemas no configurador

3 respostas
V

BOA TARDE,

Estou tentando criar uma conexao com o banco usando o hibernate. A principio as libs parecem estar ok, porem ao executar a classe conexao, o seguinte erro acontece.

390 [main] WARN org.hibernate.util.DTDEntityResolver - recognized obsolete hibernate namespace http://hibernate.sourceforge.net/. Use namespace http://www.hibernate.org/dtd/ instead. Refer to Hibernate 3.6 Migration Guide!

Este erro se refere a configuração do meu xml:

O erro informa que o namespace está obsoleto, e faz referencia a outro (http://www.hibernate.org/dtd/), porém este outro namespace ao executar continua o erro. Alguém conhece este Hibernate migration Guide, pois pesquisei sobre na internet e não achei muito informação.....Agradeço. Vou postar o código completo tambem.

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-factory>
		<!-- Configuração da conexão com o banco MySQL e dialeto -->
		<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
		<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
		<property name="connection.url">jdbc:mysql://localhost/agenda</property>
		<property name="connection.username">root</property>
		<property name="connection.password">vitor24680</property>

		<!-- Usando as configurações do C3PO para pool de conexões -->
		<property name="c3po.min_size">5</property>
		<property name="c3po.max_size">20</property>
		<property name="c3po.timeout">300</property>
		<property name="c3po.max_statements">50</property>
		<property name="c3po.idle_test_period">3000</property>
		
		<!-- Configurações de debug -->
		
		<property name="show_sql">true</property>
		<property name="format_sql">true</property>
		<property name="generate_statistics">true</property>
		<property name="use_sql_comments">true</property>
			
		
		
	</session-factory>
</hibernate-configuration>
Classe ConectaHibernateMysql
import org.hibernate.Hibernate;
import org.hibernate.Session;



public class ConectaHibernateMysql {
	
	public static void main(String [] args){
		Session sessao = null;
		try{
			sessao = HibernateUtil.getSessionFactory().openSession();
			System.out.println("Conectou");
		}finally{
			sessao.close();
		}
	}

}
Classe HibernateUtil
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;

public class HibernateUtil {
	
	private static final SessionFactory sessionFactory = buildSessionFactory();
	
	private static SessionFactory buildSessionFactory(){
		try{
			Configuration cfg = new Configuration();
			cfg.configure("hibernate.cfg.xml");
			return cfg.buildSessionFactory();
		}catch(Throwable e){
		System.out.println("Criacao inicial do objeto SessionFactory falhou. Erro: " + e.getMessage());
		throw new ExceptionInInitializerError(e);
		}
	}
	
	public static SessionFactory getSessionFactory(){
		return sessionFactory;
	}

}

3 Respostas

D

eu uso essas configurações no meu hibernate no arquivo.xml

<persistence xmlns="http://java.sun.com/xml/ns/persistence"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"
             version="1.0">
    <persistence-unit name="TurmaN40Oracle">
        <provider>org.hibernate.ejb.HibernatePersistence</provider>

         <class>Modelo.Cliente</class>
        
        <properties>
            <property name="hibernate.show_sql" value="true"/>
            <property name="hibernate.hbm2ddl.auto" value="update"/>
            <property name="hibernate.dialect" value="org.hibernate.dialect.Oracle9Dialect"/>
            <property name="hibernate.connection.driver_class" value="oracle.jdbc.OracleDriver"/>
            <property name="hibernate.connection.username" value="SYSTEM"/>
            <property name="hibernate.connection.password" value="postgres"/>
            <property name="hibernate.connection.url" value="jdbc:oracle:thin:@127.0.0.1:1521"/>
            <property name="hibernate.max_fetch_depth" value="3"/>
            <property name="hibernate.jdbc.use_scrollable_resultset" value="true"/>
        </properties>
    </persistence-unit>
    
    <persistence-unit name="TurmaN40PostgreSQL">
        <provider>org.hibernate.ejb.HibernatePersistence</provider>

         <class>Modelo.Cliente</class>
        
        <properties>
            <property name="hibernate.show_sql" value="true"/>
            <property name="hibernate.hbm2ddl.auto" value="update"/>
            <property name="hibernate.dialect" value="org.hibernate.dialect.PostgreSQLDialect"/>
            <property name="hibernate.connection.driver_class" value="org.postgresql.Driver"/>
            <property name="hibernate.connection.username" value="postgres"/>
            <property name="hibernate.connection.password" value="postgres"/>
            <property name="hibernate.connection.url" value="jdbc:postgresql:TurmaN40"/>
            <property name="hibernate.max_fetch_depth" value="3"/>
            <property name="hibernate.jdbc.use_scrollable_resultset" value="true"/>
        </properties>
    </persistence-unit>
    
</persistence>
ViniGodoy

Por favor, evite postar tópicos com títulos só em letras maiúsculas e cheios de exclamações. Não tem pq tentar chamar mais atenção do que os outros no fórum.

V

foi mals vini…
:slight_smile:

Criado 2 de agosto de 2011
Ultima resposta 2 de ago. de 2011
Respostas 3
Participantes 3