Aprendendo Hibernate

19 respostas
gmantovani2005

Olá pessoal.
Não sei se é aqui que tenho que postar isto, mas vai lá…

Estou aprendendo java e hibernate usando uma apostila que encontrei na própria página da GUJ sobre Hibernate 3. Mas quando tento executar o teste está dando o seguinte erro:

Exception in thread main java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory

at org.hibernate.cfg.Configuration.(Configuration.java:128)

at Hibernacao.HibernateUtility.(HibernateUtility.java:15)

at Hibernacao.Teste.main(Teste.java:9)

Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory

at java.net.URLClassLoader$1.run(Unknown Source)

at java.security.AccessController.doPrivileged(Native Method)

at java.net.URLClassLoader.findClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

at java.lang.ClassLoader.loadClassInternal(Unknown Source)

 3 more

Não estou conseguindo encontrar o que é, se alguém conseguir me ajudar.
Tentei conectar direto pelo java e funcionou, mas com o hibernate não.

19 Respostas

gmantovani2005

se ajudar, este é meu arquivo hibernate.cfg.xml:

<session-factory>

	<property name="hibernate.dialect">
		org.hibernate.dialect.MySQLDialect
	</property>
	<property name="hibernate.connection.driver_class">
		com.mysql.jdbc.Driver
	</property>
	<property name="hibernate.connection.url">
		jdbc:mysql://localhost/hibernacao?autoReconnect=true
	</property>
	<property name="hibernate.connection.username">
		root
	</property>
	<property name="hibernate.connection.password">
		1
	</property>
	
	<!-- Configuração do c3p0 -->

	<property name="hibernate.c3p0.max_size">10</property>
	<property name="hibernate.c3p0.min_size">2</property>
	<property name="hibernate.c3p0.timeout">5000</property>
	<property name="hibernate.c3p0.max_statements">10</property>
	<property name="hibernate.c3p0.idle_teste_period">3000</property>
	<property name="hibernate.c3p0.acquire_increment">2</property>
	
	<!-- Configurações de debug -->
	
	<property name="show_sql">true</property>
	<property name="hibernate.generate_statistics">true</property>
	<property name="hibernate.use_sql_comments">true</property>
	
	<mapping resource="Endereco.hbm.xml"/>
	<mapping resource="Pessoa.hbm.xml"/>
	
</session-factory>
_Renatu

Esta classe “org/slf4j/LoggerFactory” deveria estar no seu classpath, e provavelmente não está, pois o erro reclama disso.

Verifique se ela pertence a algum .jar e coloque esse jar no seu classpath (a pasta lib do seu projeto, por exemplo).

gmantovani2005

O problema estava que dentro do Hibernate eu tenho lib/required e la tem alguns .jar que preciso.
Mas mesmo colocando todos, ainda está dando o seguinte erro:

SLF4J: Failed to load class “org.slf4j.impl.StaticLoggerBinder”.

SLF4J: See <a href="http://www.slf4j.org/codes.html#StaticLoggerBinder">http://www.slf4j.org/codes.html#StaticLoggerBinder</a> for further details.

Exception in thread “main” java.lang.NoClassDefFoundError: org/slf4j/impl/StaticLoggerBinder

at org.slf4j.LoggerFactory.(LoggerFactory.java:60)

at org.hibernate.cfg.Configuration.(Configuration.java:128)

at Hibernacao.HibernateUtility.(HibernateUtility.java:15)

at Hibernacao.Teste.main(Teste.java:9)

Caused by: java.lang.ClassNotFoundException: org.slf4j.impl.StaticLoggerBinder

at java.net.URLClassLoader$1.run(Unknown Source)

at java.security.AccessController.doPrivileged(Native Method)

at java.net.URLClassLoader.findClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

at java.lang.ClassLoader.loadClassInternal(Unknown Source)

… 4 more
maquiavelbona

Link que estava na mensagem de erro que deverias ter lido - http://www.slf4j.org/codes.html#StaticLoggerBinder:
Failed to load class org.slf4j.impl.StaticLoggerBinder

This error is reported when the org.slf4j.impl.StaticLoggerBinder class could not be loaded into memory. This happens when no appropriate SLF4J binding could be found on the class path. Placing one (and only one) of slf4j-nop.jar, slf4j-simple.jar, slf4j-log4j12.jar, slf4j-jdk14.jar or logback-classic.jar on the class path should solve the problem.

Até!

gmantovani2005

Coloquei todos os jars como especificado em:
http://www.slf4j.org/codes.html#StaticLoggerBinder
e ainda está dando o seguinte erro:

Exception in thread main java.lang.NoClassDefFoundError: ch/qos/logback/core/ContextBase

at java.lang.ClassLoader.defineClass1(Native Method)

at java.lang.ClassLoader.defineClass(Unknown Source)

at java.security.SecureClassLoader.defineClass(Unknown Source)

at java.net.URLClassLoader.defineClass(Unknown Source)

at java.net.URLClassLoader.access$000(Unknown Source)

at java.net.URLClassLoader$1.run(Unknown Source)

at java.security.AccessController.doPrivileged(Native Method)

at java.net.URLClassLoader.findClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

at java.lang.ClassLoader.loadClassInternal(Unknown Source)

at org.slf4j.impl.StaticLoggerBinder.(StaticLoggerBinder.java:30)

at org.slf4j.impl.StaticLoggerBinder.(StaticLoggerBinder.java:21)

at org.slf4j.LoggerFactory.(LoggerFactory.java:60)

at org.hibernate.cfg.Configuration.(Configuration.java:128)

at Hibernacao.HibernateUtility.(HibernateUtility.java:15)

at Hibernacao.Teste.main(Teste.java:9)

Caused by: java.lang.ClassNotFoundException: ch.qos.logback.core.ContextBase

at java.net.URLClassLoader$1.run(Unknown Source)

at java.security.AccessController.doPrivileged(Native Method)

at java.net.URLClassLoader.findClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

at java.lang.ClassLoader.loadClassInternal(Unknown Source)

 18 more
gmantovani2005

Deixei apenas alguns .jar da lista agora e dando este erro:

29/06/2008 18:45:31 org.hibernate.cfg.Environment 

INFO: Hibernate 3.3.0.CR1

29/06/2008 18:45:32 org.hibernate.cfg.Environment 

INFO: hibernate.properties not found

29/06/2008 18:45:32 org.hibernate.cfg.Environment buildBytecodeProvider

INFO: Bytecode provider name : cglib

29/06/2008 18:45:32 org.hibernate.cfg.Environment 

INFO: using JDK 1.4 java.sql.Timestamp handling

29/06/2008 18:45:32 org.hibernate.cfg.Configuration configure

INFO: configuring from resource: /hibernate.cfg.xml

29/06/2008 18:45:32 org.hibernate.cfg.Configuration getConfigurationInputStream

INFO: Configuration resource: /hibernate.cfg.xml

org.hibernate.HibernateException: /hibernate.cfg.xml not found

at org.hibernate.util.ConfigHelper.getResourceAsStream(ConfigHelper.java:147)

at org.hibernate.cfg.Configuration.getConfigurationInputStream(Configuration.java:1416)

at org.hibernate.cfg.Configuration.configure(Configuration.java:1438)

at org.hibernate.cfg.Configuration.configure(Configuration.java:1425)

at Hibernacao.HibernateUtility.(HibernateUtility.java:15)

at Hibernacao.Teste.main(Teste.java:9)

Exception in thread main java.lang.NullPointerException

at Hibernacao.HibernateUtility.getSession(HibernateUtility.java:28)

at Hibernacao.Teste.main(Teste.java:9)
maquiavelbona

Agora o problema é o caminho do seu hibernate.xml. Verifique onde ele está e vá tentando. Leia a exceção.

Até!

gmantovani2005

Olá. estou usando o Eclipse. O arquivo está dentro do pacote que estou utilizando, tanto no src quanto no bin.
Eu tentei colocar ele também na raiz do projeto, mas não está funcionando. Vi que tem várias discusões de pessoas pedindo ajuda da mesma coisa, mas tudo que falaram parece que não está funcionando. O arquivo foi criado dentro do pacote.
Tem algum procedimento que posso fazer para verificar onde estou errando ?

maquiavelbona

O hibernate.xml tem que estar acessível ao PATH da aplicação ( talvez na pasta src, talvez numa outra pasta ) e de preferencia fora de qualquer pacote.
Esse problema é comum e chato de resolver, o mais fácil é no braço mesmo e ir mudando o arquivo de pasta.

Até!

gmantovani2005

Funcionou.
tirei do pacote e deixei dentro do src e funcionou.
Agora está dando erro no Endereco.hbm.xml, mas isto eu vou tentar resolver.

gmantovani2005

Obrigado por enquanto pessoal. T+.

gmantovani2005

Continuando com os erros do hibernate, agora está aparecendo o seguinte:

29/06/2008 22:20:48 org.hibernate.cfg.Environment 

INFO: Hibernate 3.3.0.CR1

29/06/2008 22:20:48 org.hibernate.cfg.Environment 

INFO: hibernate.properties not found

29/06/2008 22:20:48 org.hibernate.cfg.Environment buildBytecodeProvider

INFO: Bytecode provider name : cglib

29/06/2008 22:20:48 org.hibernate.cfg.Environment 

INFO: using JDK 1.4 java.sql.Timestamp handling

29/06/2008 22:20:49 org.hibernate.cfg.Configuration configure

INFO: configuring from resource: /hibernate.cfg.xml

29/06/2008 22:20:49 org.hibernate.cfg.Configuration getConfigurationInputStream

INFO: Configuration resource: /hibernate.cfg.xml

29/06/2008 22:20:49 org.hibernate.cfg.Configuration addResource

INFO: Reading mappings from resource : Pessoa.hbm.xml

org.hibernate.InvalidMappingException: Could not parse mapping document from resource Pessoa.hbm.xml

at org.hibernate.cfg.Configuration.addResource(Configuration.java:579)

at org.hibernate.cfg.Configuration.parseMappingElement(Configuration.java:1598)

at org.hibernate.cfg.Configuration.parseSessionFactory(Configuration.java:1566)

at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1545)

at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1519)

at org.hibernate.cfg.Configuration.configure(Configuration.java:1439)

at org.hibernate.cfg.Configuration.configure(Configuration.java:1425)

at Hibernacao.HibernateUtility.(HibernateUtility.java:16)

at Hibernacao.Teste.main(Teste.java:13)

Caused by: org.hibernate.InvalidMappingException: Could not parse mapping document from input stream

at org.hibernate.cfg.Configuration.addInputStream(Configuration.java:518)

at org.hibernate.cfg.Configuration.addResource(Configuration.java:576)

 8 more

Caused by: org.dom4j.DocumentException: Connection timed out: connect Nested exception: Connection timed out: connect

at org.dom4j.io.SAXReader.read(SAXReader.java:484)

at org.hibernate.cfg.Configuration.addInputStream(Configuration.java:509)

 9 more

Exception in thread main java.lang.NullPointerException

at Hibernacao.HibernateUtility.getSession(HibernateUtility.java:29)

at Hibernacao.Teste.main(Teste.java:13)

alguem consegue me ajudar ?

gmantovani2005

Acho que deve estar errando em algum passo que estou fazendo. Pois não consegui ainda fazer funcionar o Hibernate.
Estou usando o eclipse.
Primeiro eu criei uma Classe Cliente.

public class Cliente {

private int id;
private String nome;
private String telefone;
private String email;

public int getId() {
	return id;
}
public void setId(int id) {
	this.id = id;
}
public String getNome() {
	return nome;
}
public void setNome(String nome) {
	this.nome = nome;
}
public String getTelefone() {
	return telefone;
}
public void setTelefone(String telefone) {
	this.telefone = telefone;
}
public String getEmail() {
	return email;
}
public void setEmail(String email) {
	this.email = email;
}

}

Depois eu criei o banco de dados no MySql.

CREATE TABLE Cliente (
id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
nome VARCHAR(255) NULL,
email VARCHAR(255) NULL,
telefone VARCHAR(255) NULL,
PRIMARY KEY(id)
)

Depois eu inseri os .jar.
Depois eu criei o Cliente.hbm.xml clicando em novo arquivo em branco e salvando.

<?xml version="1.0" encoding="UTF-8"?>
<class name="Cliente">

	<!-- Identificador da Classe -->
	
	<id name="id">
		<generator class="increment"/>
	</id>
	
	<!-- Propriedades da Classe -->
	
	<property name="nome"/>
	<property name="telefone"/>
	<property name="email"/>
	
</class>

Logo após eu criei um arquivo Hibernate.cfg.xml da mesma forma que criei cliente.

<session-factory>

	<property name="hibernate.dialect">
		org.hibernate.dialect.MySQLDialect
	</property>
	<property name="hibernate.connection.driver_class">
		com.mysql.jdbc.Driver
	</property>
	<property name="hibernate.connection.url">
		jdbc:mysql://localhost/hibernacao?autoReconnect=true
	</property>
	<property name="hibernate.connection.username">
		root
	</property>
	<property name="hibernate.connection.password">
		1
	</property>
	
	<!-- Configuração do c3p0 -->

	<property name="hibernate.c3p0.max_size">10</property>
	<property name="hibernate.c3p0.min_size">2</property>
	<property name="hibernate.c3p0.timeout">5000</property>
	<property name="hibernate.c3p0.max_statements">10</property>
	<property name="hibernate.c3p0.idle_teste_period">3000</property>
	<property name="hibernate.c3p0.acquire_increment">2</property>
	
	<!-- Configurações de debug -->
	
	<property name="show_sql">true</property>
	<property name="hibernate.generate_statistics">true</property>
	<property name="hibernate.use_sql_comments">true</property>
	
	<mapping resource="Cliente.hbm.xml"/>
	
</session-factory>

Depois eu criei a classe HibernateUtility.java.

import org.hibernate.*;
import org.hibernate.cfg.Configuration;

public class HibernateUtility {

private static SessionFactory factory;

static {
	
	try {
		
		factory = new Configuration().configure().buildSessionFactory();
		
	} catch (Exception e) {
		
		e.printStackTrace();
		factory = null;
		
	}
	
}

public static Session getSession() {
	
	return factory.openSession();
	
}

}

Para finalizar criei a classe Teste.

import org.hibernate.*;

public class Teste {

public static void main(String[] args) {
	
	Session sessao = HibernateUtility.getSession(); // abrindo secao
	Transaction transaction = sessao.beginTransaction(); // iniciando uma transacao
	
	Cliente cliente = new Cliente();
	cliente.setNome("Gustavo Mantovani");
	cliente.setTelefone("[telefone removido]");
	cliente.setEmail("[email removido]");
	
	sessao.save(cliente);
	
	transaction.commit(); // finalizando a transacao
	sessao.close(); // fechando a sessao

}

}

Quando mandei rodar, apareceu o seguinte erro:

02/07/2008 23:03:11 org.hibernate.cfg.Environment 

INFO: Hibernate 3.3.0.CR1

02/07/2008 23:03:11 org.hibernate.cfg.Environment 

INFO: hibernate.properties not found

02/07/2008 23:03:11 org.hibernate.cfg.Environment buildBytecodeProvider

INFO: Bytecode provider name : cglib

02/07/2008 23:03:11 org.hibernate.cfg.Environment 

INFO: using JDK 1.4 java.sql.Timestamp handling

02/07/2008 23:03:11 org.hibernate.cfg.Configuration configure

INFO: configuring from resource: /hibernate.cfg.xml

02/07/2008 23:03:11 org.hibernate.cfg.Configuration getConfigurationInputStream

INFO: Configuration resource: /hibernate.cfg.xml

02/07/2008 23:03:11 org.hibernate.cfg.Configuration addResource

INFO: Reading mappings from resource : Cliente.hbm.xml

02/07/2008 23:03:16 org.hibernate.util.XMLHelper$ErrorLogger error

SEVERE: Error parsing XML: XML InputStream(1) The markup declarations contained or pointed to by the document type declaration must be well-formed.

org.hibernate.InvalidMappingException: Could not parse mapping document from resource Cliente.hbm.xml

at org.hibernate.cfg.Configuration.addResource(Configuration.java:579)

at org.hibernate.cfg.Configuration.parseMappingElement(Configuration.java:1598)

at org.hibernate.cfg.Configuration.parseSessionFactory(Configuration.java:1566)

at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1545)

at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1519)

at org.hibernate.cfg.Configuration.configure(Configuration.java:1439)

at org.hibernate.cfg.Configuration.configure(Configuration.java:1425)

at HibernateUtility.(HibernateUtility.java:16)

at Teste.main(Teste.java:10)

Caused by: org.hibernate.InvalidMappingException: Could not parse mapping document from input stream

at org.hibernate.cfg.Configuration.addInputStream(Configuration.java:518)

at org.hibernate.cfg.Configuration.addResource(Configuration.java:576)

 8 more

Caused by: org.dom4j.DocumentException: Error on line 1 of document <a href="http://hibernate.sourcefource.net/hibernate-mapping-3.0.dtd">http://hibernate.sourcefource.net/hibernate-mapping-3.0.dtd</a> : The markup declarations contained or pointed to by the document type declaration must be well-formed. Nested exception: The markup declarations contained or pointed to by the document type declaration must be well-formed.

at org.dom4j.io.SAXReader.read(SAXReader.java:482)

at org.hibernate.cfg.Configuration.addInputStream(Configuration.java:509)

 9 more

Exception in thread main java.lang.NullPointerException

at HibernateUtility.getSession(HibernateUtility.java:29)

at Teste.main(Teste.java:10)
gmantovani2005
10:15:40.697 [main] INFO  org.hibernate.cfg.Environment - Hibernate 3.3.0.CR1

10:15:40.775 [main] INFO  org.hibernate.cfg.Environment - hibernate.properties not found

10:15:40.822 [main] INFO  org.hibernate.cfg.Environment - Bytecode provider name : cglib

10:15:40.931 [main] INFO  org.hibernate.cfg.Environment - using JDK 1.4 java.sql.Timestamp handling

10:15:41.135 [main] INFO  org.hibernate.cfg.Configuration - configuring from resource: /hibernate.cfg.xml

10:15:41.135 [main] INFO  org.hibernate.cfg.Configuration - Configuration resource: /hibernate.cfg.xml

Warning: Caught exception attempting to use SAX to load a SAX XMLReader

Warning: Exception was: java.lang.ClassNotFoundException: org.apache.xerces.parsers.SAXParser

Warning: I will print the stack trace then carry on using the default SAX parser

java.lang.ClassNotFoundException: org.apache.xerces.parsers.SAXParser

at org.xml.sax.helpers.XMLReaderFactory.loadClass(Unknown Source)

at org.xml.sax.helpers.XMLReaderFactory.createXMLReader(Unknown Source)

at org.dom4j.io.SAXHelper.createXMLReader(SAXHelper.java:83)

at org.dom4j.io.SAXReader.createXMLReader(SAXReader.java:894)

at org.dom4j.io.SAXReader.getXMLReader(SAXReader.java:715)

at org.dom4j.io.SAXReader.read(SAXReader.java:435)

at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1495)

at org.hibernate.cfg.Configuration.configure(Configuration.java:1439)

at org.hibernate.cfg.Configuration.configure(Configuration.java:1425)

at Hibernacao.HibernateUtility.(HibernateUtility.java:16)

at Hibernacao.Teste.main(Teste.java:10)

org.hibernate.HibernateException: Could not parse configuration: /hibernate.cfg.xml

at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1505)

at org.hibernate.cfg.Configuration.configure(Configuration.java:1439)

at org.hibernate.cfg.Configuration.configure(Configuration.java:1425)

at Hibernacao.HibernateUtility.(HibernateUtility.java:16)

at Hibernacao.Teste.main(Teste.java:10)

Caused by: org.dom4j.DocumentException: SAX2 driver class org.apache.xerces.parsers.SAXParser not found Nested exception: SAX2 driver class org.apache.xerces.parsers.SAXParser not found

at org.dom4j.io.SAXReader.read(SAXReader.java:484)

at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1495)

 4 more

Exception in thread main java.lang.NullPointerException

at Hibernacao.HibernateUtility.getSession(HibernateUtility.java:29)

at Hibernacao.Teste.main(Teste.java:10)
gmantovani2005
org.hibernate.dialect.MySQLDialect com.mysql.jdbc.Driver jdbc:mysql://localhost/hibernacao?autoReconnect=true root 1 10 2 5000 10 3000 2 true true true
gmantovani2005

O meu problema eu acho que seria a versão errado do Hibernate.
Agora baixei a core, mas parece que esta faltando alguma coisa nos codigos que fiz.

Segue abaixo o erro:

log4j:WARN No appenders could be found for logger (org.hibernate.cfg.Environment).

log4j:WARN Please initialize the log4j system properly.

org.hibernate.InvalidMappingException: Could not parse mapping document from resource Cliente.hbm.xml

at org.hibernate.cfg.Configuration.addResource(Configuration.java:575)

at org.hibernate.cfg.Configuration.parseMappingElement(Configuration.java:1593)

at org.hibernate.cfg.Configuration.parseSessionFactory(Configuration.java:1561)

at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1540)

at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1514)

at org.hibernate.cfg.Configuration.configure(Configuration.java:1434)

at org.hibernate.cfg.Configuration.configure(Configuration.java:1420)

at Hibernacao.HibernateUtility.(HibernateUtility.java:16)

at Hibernacao.Teste.main(Teste.java:10)

Caused by: org.hibernate.InvalidMappingException: Could not parse mapping document from input stream

at org.hibernate.cfg.Configuration.addInputStream(Configuration.java:514)

at org.hibernate.cfg.Configuration.addResource(Configuration.java:572)

 8 more

Caused by: org.dom4j.DocumentException: Error on line 1 of document <a href="http://hibernate.sourcefource.net/hibernate-mapping-3.0.dtd">http://hibernate.sourcefource.net/hibernate-mapping-3.0.dtd</a> : The markup declarations contained or pointed to by the document type declaration must be well-formed. Nested exception: The markup declarations contained or pointed to by the document type declaration must be well-formed.

at org.dom4j.io.SAXReader.read(SAXReader.java:482)

at org.hibernate.cfg.Configuration.addInputStream(Configuration.java:505)

 9 more

Exception in thread main java.lang.NullPointerException

at Hibernacao.HibernateUtility.getSession(HibernateUtility.java:29)

at Hibernacao.Teste.main(Teste.java:10)

Será que alguem comsegue me ajudar ?

gmantovani2005

Mudei o HibernateUtility.java para:

package Hibernacao;

import org.hibernate.*;
import org.hibernate.cfg.Configuration;

public class HibernateUtility {

private static SessionFactory factory;

static {
	
	try {
		
		factory = new Configuration().configure().buildSessionFactory();
		
	} catch (Exception e) {
		
		e.printStackTrace();
		throw new ExceptionInInitializerError(e);
		
	}
	
}

public static Session getSession() {
	
	return factory.openSession();
	
}

}

Mas está dando o erro:

log4j:WARN No appenders could be found for logger (org.hibernate.cfg.Environment).

log4j:WARN Please initialize the log4j system properly.

org.hibernate.InvalidMappingException: Could not parse mapping document from resource Cliente.hbm.xml

at org.hibernate.cfg.Configuration.addResource(Configuration.java:575)

at org.hibernate.cfg.Configuration.parseMappingElement(Configuration.java:1593)

at org.hibernate.cfg.Configuration.parseSessionFactory(Configuration.java:1561)

at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1540)

at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1514)

at org.hibernate.cfg.Configuration.configure(Configuration.java:1434)

at org.hibernate.cfg.Configuration.configure(Configuration.java:1420)

at Hibernacao.HibernateUtility.(HibernateUtility.java:16)

at Hibernacao.Teste.main(Teste.java:10)

Caused by: org.hibernate.InvalidMappingException: Could not parse mapping document from input stream

at org.hibernate.cfg.Configuration.addInputStream(Configuration.java:514)

at org.hibernate.cfg.Configuration.addResource(Configuration.java:572)

 8 more

Caused by: org.dom4j.DocumentException: Error on line 1 of document <a href="http://hibernate.sourcefource.net/hibernate-mapping-3.2.dtd">http://hibernate.sourcefource.net/hibernate-mapping-3.2.dtd</a> : The markup declarations contained or pointed to by the document type declaration must be well-formed. Nested exception: The markup declarations contained or pointed to by the document type declaration must be well-formed.

at org.dom4j.io.SAXReader.read(SAXReader.java:482)

at org.hibernate.cfg.Configuration.addInputStream(Configuration.java:505)

 9 more

Exception in thread main java.lang.ExceptionInInitializerError

at Hibernacao.HibernateUtility.(HibernateUtility.java:21)

at Hibernacao.Teste.main(Teste.java:10)

Caused by: org.hibernate.InvalidMappingException: Could not parse mapping document from resource Cliente.hbm.xml

at org.hibernate.cfg.Configuration.addResource(Configuration.java:575)

at org.hibernate.cfg.Configuration.parseMappingElement(Configuration.java:1593)

at org.hibernate.cfg.Configuration.parseSessionFactory(Configuration.java:1561)

at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1540)

at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1514)

at org.hibernate.cfg.Configuration.configure(Configuration.java:1434)

at org.hibernate.cfg.Configuration.configure(Configuration.java:1420)

at Hibernacao.HibernateUtility.(HibernateUtility.java:16)

 1 more

Caused by: org.hibernate.InvalidMappingException: Could not parse mapping document from input stream

at org.hibernate.cfg.Configuration.addInputStream(Configuration.java:514)

at org.hibernate.cfg.Configuration.addResource(Configuration.java:572)

 8 more

Caused by: org.dom4j.DocumentException: Error on line 1 of document <a href="http://hibernate.sourcefource.net/hibernate-mapping-3.2.dtd">http://hibernate.sourcefource.net/hibernate-mapping-3.2.dtd</a> : The markup declarations contained or pointed to by the document type declaration must be well-formed. Nested exception: The markup declarations contained or pointed to by the document type declaration must be well-formed.

at org.dom4j.io.SAXReader.read(SAXReader.java:482)

at org.hibernate.cfg.Configuration.addInputStream(Configuration.java:505)

 9 more
gmantovani2005

Só queria dizer que consegui usar o Hibernate com auxílio do eclipse.
Ficou assim o Cliente.hbm.xml

<?xml version="1.0"?>

e o hibernate.cfg.xml

<?xml version="1.0" encoding="UTF-8"?> org.gjt.mm.mysql.Driver 1 jdbc:mysql://localhost/Hibernacao root org.hibernate.dialect.MySQLInnoDBDialect

Obrigado a todos pela ajuda.

Ainda está dando um WARN, mas já consegui fazer funcionar…
log4j:WARN No appenders could be found for logger (org.hibernate.cfg.Environment).
log4j:WARN Please initialize the log4j system properly.

Sefo

Olá GMantovani2005,

eu tive esse mesmo problema semana passada e consegui resolve-lo. Vc pode dar uma olhada aqui:
http://www.guj.com.br/posts/list/95161.java

Depois de baixar o jar do LogBack para resolver o seu problema inicial, eu ainda tive que baixar outros jars:

Primeiro eu fiz o download de uma biblioteca chamada cglib que vc encontra facilmente pesquisando no google.

Posteriormente, foi necessario procurar a biblioteca jta.jar. Essa eu não encontrei no google, mas no site do Hibernate, vc pode baixar o Hibernate EntityManager e dentro de suas libs vc encontra essa biblioteca.

Doravante todos os exemplos da apostila eu consegui executar com sucesso. Também estou aprendendo agora a usar esse framework, mas qualquer duvida ou resultado positivo/negativo não deixe de posta-la.

Auf Wiedersehen!!!

Criado 29 de junho de 2008
Ultima resposta 30 de jun. de 2008
Respostas 19
Participantes 4