Pessoal estou com um problema… comecei a mexer com hibernate. .dai fiz o seguinte exemplo
Artigos.java
package cadastro;
public class Artigos {
private int codigo;
private String assunto;
private String conteudo;
private int prioridade;
public String getAssunto() {
return assunto;
}
public int getCodigo() {
return codigo;
}
public String getConteudo() {
return conteudo;
}
public int getPrioridade() {
return prioridade;
}
public void setAssunto(String assunto) {
this.assunto = assunto;
}
public void setCodigo(int codigo) {
this.codigo = codigo;
}
public void setConteudo(String conteudo) {
this.conteudo = conteudo;
}
public void setPrioridade(int prioridade) {
this.prioridade = prioridade;
}
Artigos.hbm.XML
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="cadastro.Artigos" table="ARTIGOS">
<id name="codigo">
<generator class="native"/>
</id>
<property name="assunto"/>
<property name="conteudo"/>
<property name="prioridade"/>
</class>
</hibernate-mapping>
ArtigosDAO.JAVA
package cadastro;
import org.hibernate.Session;
public class ArtigosDAO {
public void insert(Artigos artigo) throws Exception{
Session session = HibernateUtil.getSessionFactory().getCurrentSession();
session.beginTransaction();
session.save(artigo);
session.getTransaction().commit();
}
}
HibernateUtil.java
package cadastro;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
public class HibernateUtil {
private static final SessionFactory sessionFactory;
static {
try {
sessionFactory = new Configuration().configure().buildSessionFactory();
} catch (Throwable ex) {
System.err.println("Initial SessionFactory creation failed." + ex);
throw new ExceptionInInitializerError(ex);
}
}
public static SessionFactory getSessionFactory() {
return sessionFactory;
}
}
Hibernate.properties
# Sample ResourceBundle properties file
hibernate.dialect=net.sf.hibernate.dialect.PostgreSQLDialect
hibernate.connection.driver_class = org.postgresql.Driver
hibernate.connection.url = jdbc:postgresql://10.0.0.111:5432/db_hibernate
hibernate.connection.username = dna
hibernate.connection.password = dna44100
log4j.properties
# Sample ResourceBundle properties file
log4j.rootLogger=DEBUG, dest1
log4j.appender.dest1=org.apache.log4j.ConsoleAppender
log4j.appender.dest1.layout=org.apache.log4j.PatternLayout
log4j.appender.dest1.layout.ConversionPattern=%d %-5p %-5c{3} %x -> %m%n
#log4j.appender.dest2=org.apache.log4j.RollingFileAppender
#log4j.appender.dest2.File=bridge.log
#log4j.appender.dest2.MaxFileSize=100KB
# Keep one backup file
#log4j.appender.dest2.MaxBackupIndex=3
#log4j.appender.dest2.layout=org.apache.log4j.PatternLayout
#log4j.appender.dest2.layout.ConversionPattern=%d [%t] %-5p %-5c{3}(%L) %x -> %m%n
hibernate.cfg.xml
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-configuration>
<session-factory>
<!-- Database connection settings -->
<property name="connection.driver_class">org.postgresql.Driver</property>
<property name="connection.url">jdbc:postgresql://10.0.0.111:5432/db_hibernate</property>
<property name="connection.username">dna</property>
<property name="connection.password">dna44100</property>
<!-- JDBC connection pool (use the built-in) -->
<property name="connection.pool_size">1</property>
<!-- SQL dialect -->
<property name="dialect">org.hibernate.dialect.PostgreSQLDialect</property>
<!-- Enable Hibernate's automatic session context management -->
<property name="current_session_context_class">thread</property>
<!-- Disable the second-level cache -->
<property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>
<!-- Echo all executed SQL to stdout -->
<property name="show_sql">true</property>
<!-- Drop and re-create the database schema on startup -->
<property name="hbm2ddl.auto">create</property>
<mapping resource="cadastro/Artigos.hbm.xml"/>
</session-factory>
</hibernate-configuration>
Main.java
package cadastro;
public class Main {
public static void main(String[] args) {
// TODO code application logic here
ArtigosDAO dao = new ArtigosDAO();
Artigos artigo = new Artigos();
artigo.setAssunto("aeeeee");
artigo.setConteudo("esse eo cara");
artigo.setPrioridade(2);
try {
dao.insert(artigo);
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
utilizo netbeans e a estrutura de diretorio esta assim
dentro do pacote CADASTRO estao todas as classes menos o hibernate.cfg.xml q nao esta em nenhum pacote( esta um diretorio antes )
e recebo o seguinte erro:
<blockquote>log4j:WARN No appenders could be found for logger (org.hibernate.cfg.Environment).
log4j:WARN Please initialize the log4j system properly.
Initial SessionFactory creation failed.org.hibernate.MappingException: invalid configuration
Exception in thread “main” java.lang.ExceptionInInitializerError
at cadastro.HibernateUtil.(HibernateUtil.java:29)
at cadastro.ArtigosDAO.insert(ArtigosDAO.java:22)
at cadastro.Main.main(Main.java:35)
Caused by: org.hibernate.MappingException: invalid configuration
at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1411)
at org.hibernate.cfg.Configuration.configure(Configuration.java:1352)
at org.hibernate.cfg.Configuration.configure(Configuration.java:1338)
at cadastro.HibernateUtil.(HibernateUtil.java:25)
… 2 more
Caused by: org.xml.sax.SAXParseException: Document root element “hibernate-configuration”, must match DOCTYPE root “hibernate-mapping”.
at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source)
at org.apache.xerces.util.ErrorHandlerWrapper.error(Unknown Source)
at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
at org.apache.xerces.impl.dtd.XMLDTDValidator.rootElementSpecified(Unknown Source)
at org.apache.xerces.impl.dtd.XMLDTDValidator.handleStartElement(Unknown Source)
at org.apache.xerces.impl.dtd.XMLDTDValidator.startElement(Unknown Source)
at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
at org.apache.xerces.impl.XMLNSDocumentScannerImpl$NSContentDispatcher.scanRootElementHook(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at org.dom4j.io.SAXReader.read(SAXReader.java:465)
at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1408)
… 5 more
Java Result: 1
debug:
BUILD SUCCESSFUL (total time: 2 seconds)
</blockquote>
alguem sabe me dizer o pq???
obrigado