Erro com Hibernate

Ola pessoa , olha eu mais uma vez enxendo o saco de vocês, bom vamos la, é o Seguinte estou começando com o Hibernate,
TENTANDO fazer um crud(inser,delete,update,read), porem não estou conseguindo.

Primeiramente quero postar meus arquivos e classe(estou tentado fazer um crud na tabela de fornecedor, bem ditático, pois a tabela tem apenas um campo - nome - estou usando mysql)

Tabela Fornecedor

fornecedor
nome - varchar

log4j.properties

### direct log messages to stdout ###
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n

### direct messages to file hibernate.log ###
#log4j.appender.file=org.apache.log4j.FileAppender
#log4j.appender.file.File=hibernate.log
#log4j.appender.file.layout=org.apache.log4j.PatternLayout
#log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n

### set log levels - for more verbose logging change 'info' to 'debug' ###

log4j.rootLogger=warn, stdout

#log4j.logger.org.hibernate=info
log4j.logger.org.hibernate=debug

### log HQL query parser activity
#log4j.logger.org.hibernate.hql.ast.AST=debug

### log just the SQL
#log4j.logger.org.hibernate.SQL=debug

### log JDBC bind parameters ###
log4j.logger.org.hibernate.type=info
#log4j.logger.org.hibernate.type=debug

### log schema export/update ###
log4j.logger.org.hibernate.tool.hbm2ddl=debug

### log HQL parse trees
#log4j.logger.org.hibernate.hql=debug

### log cache activity ###
#log4j.logger.org.hibernate.cache=debug

### log transaction activity
#log4j.logger.org.hibernate.transaction=debug

### log JDBC resource acquisition
#log4j.logger.org.hibernate.jdbc=debug

### enable the following line if you want to track down connection ###
### leakages when using DriverManagerConnectionProvider ###
#log4j.logger.org.hibernate.connection.DriverManagerConnectionProvider=trace

hibernate.properties


hibernate.dialect = org.hibernate.dialect.MySQLDialect
hibernate.connection.driver_class = com.mysql.jdbc.Driver
hibernate.connection.url = jdbc:mysql://localhost:3306/controleestoque
hibernate.connection.username = root
hibernate.connection.password =

hibernate.show_sql = true

hibernate.format_sql = true

Fornecedor.hbm.xml

<hibernate-mapping>   
    <class name="Negocio.Fornecedor" table="fornecedor">   
        <id name="nome" column="nome" type="string">   
            <generator class="assigned"/>   
        </id>   
    </class>   
</hibernate-mapping> 

Fabrica de Conexao

package Persistencia;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;

import Negocio.Fornecedor;

public class FabricaConexao {

	private static SessionFactory factory;
	
	public static Session getSession(){
		AnnotationConfiguration cfg = new AnnotationConfiguration();
		cfg.addAnnotatedClass(Fornecedor.class);
		factory = cfg.buildSessionFactory();
		return factory.openSession();
	}
	
	
}

FornecedorDAO

package Persistencia;

import java.util.List;

import org.hibernate.Session;


import Negocio.Fornecedor;

public class FornecedorDAO implements DAO<Fornecedor> {
	private Session session;
	
	public FornecedorDAO(){
		session = FabricaConexao.getSession();
	}
	
	
	@Override
	public void insert(Fornecedor forn) {
		session.save(forn);
	}
	
	
	@Override
	public void update(Fornecedor obj) {
		session.update(obj);
		session.flush();
	}

	@Override
	public void delete(Fornecedor obj) {
		session.delete(obj);
		session.flush();
	}


	@Override
	public List<Fornecedor> read() {
		return session.createCriteria(Fornecedor.class).list();
	}
}

Fornecedor

package Negocio;

public class Fornecedor {

	private String nome;

	public Fornecedor() {
	}

	public Fornecedor(String nome) {
		this.nome = nome;
	}

	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}
}

E por fim minha classe de teste

package Negocio;

import Persistencia.FornecedorDAO;

public class Teste {

	public static void main(String[] args) {
		Fornecedor f = new Fornecedor();
		f.setNome("Pedro");
		FornecedorDAO fDAO = new FornecedorDAO();
		fDAO.insert(f);
		

		
	}

}

Porem quando dou start no eclipse da o seguinte erro no console

14:19:09,281 INFO Version:15 - Hibernate Annotations 3.4.0.GA
14:19:09,343 INFO Environment:543 - Hibernate 3.3.0.SP1
14:19:09,343 INFO Environment:561 - loaded properties from resource hibernate.properties: {hibernate.connection.username=root, hibernate.connection.password=****, hibernate.dialect=org.hibernate.dialect.MySQLDialect, hibernate.show_sql=true, hibernate.connection.url=jdbc:mysql://localhost:3306/controleestoque, hibernate.bytecode.use_reflection_optimizer=false, hibernate.connection.driver_class=com.mysql.jdbc.Driver, hibernate.format_sql=true}
14:19:09,375 INFO Environment:709 - Bytecode provider name : javassist
14:19:09,390 INFO Environment:627 - using JDK 1.4 java.sql.Timestamp handling
14:19:09,765 INFO Version:14 - Hibernate Commons Annotations 3.1.0.GA
14:19:10,078 DEBUG AnnotationConfiguration:806 - Validator not present in classpath, ignoring event listener registration
14:19:10,093 DEBUG HibernateSearchEventListenerRegister:209 - Search not present in classpath, ignoring event listener registration.
14:19:10,093 INFO HibernateSearchEventListenerRegister:53 - Unable to find org.hibernate.search.event.FullTextIndexEventListener on the classpath. Hibernate Search is not enabled.
14:19:10,093 DEBUG Configuration:1318 - Preparing to build session factory with filters : {}
14:19:10,093 DEBUG AnnotationConfiguration:258 - Execute first pass mapping processing
14:19:10,281 DEBUG AnnotationConfiguration:529 - Process hbm files
14:19:10,281 DEBUG AnnotationConfiguration:537 - Process annotated classes
14:19:10,296 DEBUG AnnotationConfiguration:401 - processing fk mappings (*ToOne and JoinedSubclass)
14:19:10,312 DEBUG Configuration:1153 - processing extends queue
14:19:10,312 DEBUG Configuration:1157 - processing collection mappings
14:19:10,312 DEBUG Configuration:1168 - processing native query and ResultSetMapping mappings
14:19:10,312 DEBUG Configuration:1176 - processing association property references
14:19:10,312 DEBUG Configuration:1198 - processing foreign key constraints
14:19:10,343 INFO AnnotationConfiguration:369 - Hibernate Validator not found: ignoring
14:19:10,390 INFO DriverManagerConnectionProvider:64 - Using Hibernate built-in connection pool (not for production use!)
14:19:10,406 INFO DriverManagerConnectionProvider:65 - Hibernate connection pool size: 20
14:19:10,406 INFO DriverManagerConnectionProvider:68 - autocommit mode: false
14:19:10,546 INFO DriverManagerConnectionProvider:103 - using driver: com.mysql.jdbc.Driver at URL: jdbc:mysql://localhost:3306/controleestoque
14:19:10,546 INFO DriverManagerConnectionProvider:106 - connection properties: {user=root, password=}
14:19:10,546 DEBUG DriverManagerConnectionProvider:132 - opening new JDBC connection
14:19:11,343 DEBUG DriverManagerConnectionProvider:138 - created connection to: jdbc:mysql://localhost:3306/controleestoque, Isolation Level: 4
14:19:11,343 INFO SettingsFactory:116 - RDBMS: MySQL, version: 5.1.44-community
14:19:11,343 INFO SettingsFactory:117 - JDBC driver: MySQL-AB JDBC Driver, version: mysql-connector-java-5.1.12 ( Revision: ${bzr.revision-id} )
14:19:11,406 INFO Dialect:175 - Using dialect: org.hibernate.dialect.MySQLDialect
14:19:11,562 INFO TransactionFactoryFactory:59 - Using default transaction strategy (direct JDBC transactions)
14:19:11,578 INFO TransactionManagerLookupFactory:80 - No TransactionManagerLookup configured (in JTA environment, use of read-write or transactional second-level cache is not recommended)
14:19:11,578 INFO SettingsFactory:170 - Automatic flush during beforeCompletion(): disabled
14:19:11,578 INFO SettingsFactory:174 - Automatic session close at end of transaction: disabled
14:19:11,578 INFO SettingsFactory:181 - JDBC batch size: 15
14:19:11,578 INFO SettingsFactory:184 - JDBC batch updates for versioned data: disabled
14:19:11,593 INFO SettingsFactory:189 - Scrollable result sets: enabled
14:19:11,593 DEBUG SettingsFactory:193 - Wrap result sets: disabled
14:19:11,593 INFO SettingsFactory:197 - JDBC3 getGeneratedKeys(): enabled
14:19:11,593 INFO SettingsFactory:205 - Connection release mode: auto
14:19:11,593 INFO SettingsFactory:229 - Maximum outer join fetch depth: 2
14:19:11,593 INFO SettingsFactory:232 - Default batch fetch size: 1
14:19:11,593 INFO SettingsFactory:236 - Generate SQL with comments: disabled
14:19:11,593 INFO SettingsFactory:240 - Order SQL updates by primary key: disabled
14:19:11,593 INFO SettingsFactory:244 - Order SQL inserts for batching: disabled
14:19:11,609 INFO SettingsFactory:420 - Query translator: org.hibernate.hql.ast.ASTQueryTranslatorFactory
14:19:11,609 INFO ASTQueryTranslatorFactory:47 - Using ASTQueryTranslatorFactory
14:19:11,609 INFO SettingsFactory:252 - Query language substitutions: {}
14:19:11,609 INFO SettingsFactory:257 - JPA-QL strict compliance: disabled
14:19:11,609 INFO SettingsFactory:262 - Second-level cache: enabled
14:19:11,625 INFO SettingsFactory:266 - Query cache: disabled
14:19:11,625 INFO SettingsFactory:405 - Cache region factory : org.hibernate.cache.impl.NoCachingRegionFactory
14:19:11,625 INFO SettingsFactory:276 - Optimize cache for minimal puts: disabled
14:19:11,625 INFO SettingsFactory:285 - Structured second-level cache entries: disabled
14:19:11,640 INFO SettingsFactory:305 - Echoing all SQL to stdout
14:19:11,656 INFO SettingsFactory:314 - Statistics: disabled
14:19:11,656 INFO SettingsFactory:318 - Deleted entity synthetic identifier rollback: disabled
14:19:11,656 INFO SettingsFactory:333 - Default entity-mode: pojo
14:19:11,656 INFO SettingsFactory:337 - Named query checking : enabled
14:19:11,828 INFO SessionFactoryImpl:187 - building session factory
14:19:11,843 DEBUG SessionFactoryImpl:205 - Session factory constructed with filter configurations : {}
14:19:11,843 DEBUG SessionFactoryImpl:209 - instantiating session factory with properties: {java.runtime.name=Java™ SE Runtime Environment, hibernate.connection.password=, sun.boot.library.path=C:\Arquivos de programas\Java\jre6\bin, java.vm.version=14.3-b01, hibernate.connection.username=root, java.vm.vendor=Sun Microsystems Inc., java.vendor.url=http://java.sun.com/, path.separator=;, java.vm.name=Java HotSpot™ Client VM, file.encoding.pkg=sun.io, user.country=BR, sun.java.launcher=SUN_STANDARD, sun.os.patch.level=Service Pack 3, java.vm.specification.name=Java Virtual Machine Specification, user.dir=C:\Documents and Settings\Administrador\workspace\Servlet, java.runtime.version=1.6.0_17-b04, java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment, java.endorsed.dirs=C:\Arquivos de programas\Java\jre6\lib\endorsed, os.arch=x86, java.io.tmpdir=C:\DOCUME~1\ADMINI~1\CONFIG~1\Temp, line.separator=
, java.vm.specification.vendor=Sun Microsystems Inc., user.variant=, os.name=Windows XP, sun.jnu.encoding=Cp1252, java.library.path=C:\Arquivos de programas\Java\jre6\bin;.;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:/Arquivos de programas/Java/jre6/bin/client;C:/Arquivos de programas/Java/jre6/bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;, java.specification.name=Java Platform API Specification, java.class.version=50.0, sun.management.compiler=HotSpot Client Compiler, os.version=5.1, user.home=C:\Documents and Settings\Administrador, user.timezone=America/Sao_Paulo, java.awt.printerjob=sun.awt.windows.WPrinterJob, file.encoding=Cp1252, java.specification.version=1.6, hibernate.format_sql=true, hibernate.connection.driver_class=com.mysql.jdbc.Driver, user.name=Administrador, java.class.path=C:\Documents and Settings\Administrador\workspace\Servlet\build\classes;C:\Arquivos de programas\Apache Software Foundation\Tomcat 5.5\common\lib\commons-el.jar;C:\Arquivos de programas\Apache Software Foundation\Tomcat 5.5\common\lib\jasper-compiler-jdt.jar;C:\Arquivos de programas\Apache Software Foundation\Tomcat 5.5\common\lib\jasper-compiler.jar;C:\Arquivos de programas\Apache Software Foundation\Tomcat 5.5\common\lib\jasper-runtime.jar;C:\Arquivos de programas\Apache Software Foundation\Tomcat 5.5\common\lib\jsp-api.jar;C:\Arquivos de programas\Apache Software Foundation\Tomcat 5.5\common\lib\naming-factory-dbcp.jar;C:\Arquivos de programas\Apache Software Foundation\Tomcat 5.5\common\lib\naming-factory.jar;C:\Arquivos de programas\Apache Software Foundation\Tomcat 5.5\common\lib\naming-resources.jar;C:\Arquivos de programas\Apache Software Foundation\Tomcat 5.5\common\lib\servlet-api.jar;C:\Documents and Settings\Administrador\Meus documentos\Java\Ultilitarios\hibernate-entitymanager-3.4.0.GA\lib\test\slf4j-log4j12.jar;C:\Documents and Settings\Administrador\Meus documentos\Java\Ultilitarios\hibernate-entitymanager-3.4.0.GA\lib\test\antlr.jar;C:\Documents and Settings\Administrador\Meus documentos\Java\Ultilitarios\hibernate-entitymanager-3.4.0.GA\lib\test\asm.jar;C:\Documents and Settings\Administrador\Meus documentos\Java\Ultilitarios\hibernate-entitymanager-3.4.0.GA\lib\test\asm-attrs.jar;C:\Documents and Settings\Administrador\Meus documentos\Java\Ultilitarios\hibernate-entitymanager-3.4.0.GA\lib\test\cglib.jar;C:\Documents and Settings\Administrador\Meus documentos\Java\Ultilitarios\hibernate-entitymanager-3.4.0.GA\lib\test\commons-collections.jar;C:\Documents and Settings\Administrador\Meus documentos\Java\Ultilitarios\hibernate-entitymanager-3.4.0.GA\lib\test\junit.jar;C:\Documents and Settings\Administrador\Meus documentos\Java\Ultilitarios\hibernate-entitymanager-3.4.0.GA\lib\test\log4j.jar;C:\Documents and Settings\Administrador\Meus documentos\Java\Ultilitarios\hibernate-entitymanager-3.4.0.GA\lib\slf4j-api.jar;C:\Documents and Settings\Administrador\Meus documentos\Java\Ultilitarios\hibernate-entitymanager-3.4.0.GA\lib\dom4j.jar;C:\Documents and Settings\Administrador\Meus documentos\Java\Ultilitarios\hibernate-entitymanager-3.4.0.GA\lib\ejb3-persistence.jar;C:\Documents and Settings\Administrador\Meus documentos\Java\Ultilitarios\hibernate-entitymanager-3.4.0.GA\lib\hibernate-annotations.jar;C:\Documents and Settings\Administrador\Meus documentos\Java\Ultilitarios\hibernate-entitymanager-3.4.0.GA\lib\hibernate-commons-annotations.jar;C:\Documents and Settings\Administrador\Meus documentos\Java\Ultilitarios\hibernate-entitymanager-3.4.0.GA\lib\hibernate-core.jar;C:\Documents and Settings\Administrador\Meus documentos\Java\Ultilitarios\hibernate-entitymanager-3.4.0.GA\lib\javassist.jar;C:\Documents and Settings\Administrador\Meus documentos\Java\Ultilitarios\hibernate-entitymanager-3.4.0.GA\lib\jta.jar, hibernate.bytecode.use_reflection_optimizer=false, hibernate.show_sql=true, java.vm.specification.version=1.0, sun.arch.data.model=32, java.home=C:\Arquivos de programas\Java\jre6, hibernate.connection.url=jdbc:mysql://localhost:3306/controleestoque, hibernate.dialect=org.hibernate.dialect.MySQLDialect, java.specification.vendor=Sun Microsystems Inc., user.language=pt, awt.toolkit=sun.awt.windows.WToolkit, java.vm.info=mixed mode, sharing, java.version=1.6.0_17, java.ext.dirs=C:\Arquivos de programas\Java\jre6\lib\ext;C:\WINDOWS\Sun\Java\lib\ext, sun.boot.class.path=C:\Arquivos de programas\Java\jre6\lib\resources.jar;C:\Arquivos de programas\Java\jre6\lib\rt.jar;C:\Arquivos de programas\Java\jre6\lib\sunrsasign.jar;C:\Arquivos de programas\Java\jre6\lib\jsse.jar;C:\Arquivos de programas\Java\jre6\lib\jce.jar;C:\Arquivos de programas\Java\jre6\lib\charsets.jar;C:\Arquivos de programas\Java\jre6\classes, java.vendor=Sun Microsystems Inc., file.separator=, java.vendor.url.bug=http://java.sun.com/cgi-bin/bugreport.cgi, sun.cpu.endian=little, sun.io.unicode.encoding=UnicodeLittle, sun.desktop=windows, sun.cpu.isalist=}
14:19:11,859 DEBUG SessionFactoryObjectFactory:62 - initializing class SessionFactoryObjectFactory
14:19:11,859 DEBUG SessionFactoryObjectFactory:99 - registered: 402882e42762d61d012762d61de30000 (unnamed)
14:19:11,859 INFO SessionFactoryObjectFactory:105 - Not binding factory to JNDI, no JNDI name configured
14:19:11,875 DEBUG SessionFactoryImpl:340 - instantiated session factory
14:19:11,875 DEBUG SessionFactoryImpl:426 - Checking 0 named HQL queries
14:19:11,875 DEBUG SessionFactoryImpl:446 - Checking 0 named SQL queries
14:19:12,109 DEBUG SessionImpl:247 - opened session at timestamp: 12686735519
Exception in thread “main” org.hibernate.MappingException: Unknown entity: Negocio.Fornecedor
at org.hibernate.impl.SessionFactoryImpl.getEntityPersister(SessionFactoryImpl.java:580)
at org.hibernate.impl.SessionImpl.getEntityPersister(SessionImpl.java:1365)
at org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:121)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:210)
at org.hibernate.event.def.DefaultSaveEventListener.saveWithGeneratedOrRequestedId(DefaultSaveEventListener.java:56)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:195)
at org.hibernate.event.def.DefaultSaveEventListener.performSaveOrUpdate(DefaultSaveEventListener.java:50)
at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:93)
at org.hibernate.impl.SessionImpl.fireSave(SessionImpl.java:562)
at org.hibernate.impl.SessionImpl.save(SessionImpl.java:550)
at org.hibernate.impl.SessionImpl.save(SessionImpl.java:546)
at Persistencia.FornecedorDAO.insert(FornecedorDAO.java:20)
at Negocio.Teste.main(Teste.java:11)

Cara não deu tempo de fazer uma análise completa, mas o erro é que ele não está encontrando o mapeamento da classe Negocio.Fornecedor, pelo visto você está usando o hibernate annotations, mas não criou as anotações na classe Negocio.Fornecedor.
Essa classe deve implementar Serializable e pelo menos o mapeamento de @Entity e @Id.

veja:http://docs.jboss.org/hibernate/stable/annotations/reference/en/html/entity.html#entity-mapping

Meu ingles é pessimo mais obrigado pela ajuda, é pelo que eu vi eu tabem axei que era erro no mapeamento porem não sei resolver
Então pessoal, alguem pode resolver meu problema ou postar um exmplo usando hibernate?

Certo, suponho que o atributo “nome” seja a chave primária de sua tabela fornecedor, uma dica é quando usar annotations em hibernate procure usar sempre o mesmo nome, ou seja os atributos da classe com o mesmo nome dos campos da tabela, pois economizará trabalho, da mesma forma que voce fez nesse exemplo.

Então ficaria assim:

[code]package Negocio;

@Entity
public class Fornecedor implements Serializable {

@Id
private String nome;

public Fornecedor() {
}

public Fornecedor(String nome) {
	this.nome = nome;
}

public String getNome() {
	return nome;
}

public void setNome(String nome) {
	this.nome = nome;
}

}[/code]

Também estou interessado em Hibernate, se alguem tiver
um projeto bem básicao de CRUD para deixar para galera estudar…

Seria bem legal ^^

Att. Jonas

Endenti, mais no caso de não usar anotação usar XML para fazer o relacionamento dos campos como ficaria?

MUITO OBRIGADO

Pessoal mudei minha fabrica de conexao

package Persistencia;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;



public class FabricaConexao {

	private static SessionFactory factory;
	
	public static Session getSession(){
		Configuration  cfg = new Configuration();
		cfg.addClass(Negocio.Fornecedor.class);
		factory = cfg.buildSessionFactory();
		return factory.openSession();
	}
	
	
}

meu mapeamento Fornecedor.hbm.xml

<hibernate-mapping>   
    <class name="Negocio.Fornecedor" table="fornecedor">   
        <id name="nome" column="nome" type="string">   
        </id>   
    </class>   
</hibernate-mapping> 

eu axo que o erro esta nesse mapeamento

SEGUE A MENSAGEM DE ERRO

16:09:54,671 INFO Environment:543 - Hibernate 3.3.0.SP1
16:09:54,703 INFO Environment:561 - loaded properties from resource hibernate.properties: {hibernate.connection.username=root, hibernate.connection.password=****, hibernate.dialect=org.hibernate.dialect.MySQLDialect, hibernate.show_sql=true, hibernate.connection.url=jdbc:mysql://localhost:3306/controleestoque, hibernate.bytecode.use_reflection_optimizer=false, hibernate.connection.driver_class=com.mysql.jdbc.Driver, hibernate.format_sql=true}
16:09:54,703 INFO Environment:709 - Bytecode provider name : javassist
16:09:54,750 INFO Environment:627 - using JDK 1.4 java.sql.Timestamp handling
16:09:55,000 INFO Configuration:618 - Reading mappings from resource: Negocio/Fornecedor.hbm.xml
16:09:55,000 INFO Configuration:563 - Reading mappings from resource: Negocio/Fornecedor.hbm.xml
Exception in thread “main” org.hibernate.MappingNotFoundException: resource: Negocio/Fornecedor.hbm.xml not found
at org.hibernate.cfg.Configuration.addResource(Configuration.java:566)
at org.hibernate.cfg.Configuration.addClass(Configuration.java:619)
at Persistencia.FabricaConexao.getSession(FabricaConexao.java:15)
at Persistencia.FornecedorDAO.(FornecedorDAO.java:14)
at Negocio.Teste.main(Teste.java:10)

Por favor pessoal me ajude

Obrigado

Se você está começando agora, sugiro que vá de annotations, que é mais limpo, e mais fácil de encontrar problemas, quando aprendi annotations tirei o xml de minha cabeça, mas o mapeamento da classe fornecedor em xml é do jeito que você postou.
Não recomendo usar a String nome como chave primária, pois um fornecedor poderá mudar seu nome e te criar um problemão, sugiro usar um número.

Ola mrrbigu , primeiramente quero agradecer pela atenção.

Então eu quero configurar via html , para eu entender por didatica mesmo, e tbm estou usando uma string copm chave primaria somente porque é para teste ou seja quero ver como funciona, mais da o seguinte erro que postei,

Por favor alguem mais para ajudar?

OBRIGADO

Certo, esse erro diz especificamente que ele não está encontrando o arquivo Fornecedor.hbm.xml, poste seu arquivo hibernate.cfg.xml para vermos como está.

mrrbigu

Olha eu tenho o arquivo hibernate properties

hibernate.dialect = org.hibernate.dialect.MySQLDialect
hibernate.connection.driver_class = com.mysql.jdbc.Driver
hibernate.connection.url = jdbc:mysql://localhost:3306/controleestoque
hibernate.connection.username = root
hibernate.connection.password =

hibernate.show_sql = true

hibernate.format_sql = true

e a fabrica de conexao

package Persistencia;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;



public class FabricaConexao {

	private static SessionFactory factory;
	
	public static Session getSession(){
		Configuration  cfg = new Configuration();
		cfg.addClass(Negocio.Fornecedor.class);
		factory = cfg.buildSessionFactory();
		return factory.openSession();
	}
	
	
}

e a classe DAO

package Persistencia;

import java.util.List;

import org.hibernate.Session;


import Negocio.Fornecedor;

public class FornecedorDAO implements DAO<Fornecedor> {
	private Session session;
	
	public FornecedorDAO(){
		session = FabricaConexao.getSession();
	}
	
	
	@Override
	public void insert(Fornecedor forn) {
		session.save(forn);
	}
	
	
	@Override
	public void update(Fornecedor obj) {
		session.update(obj);
		session.flush();
	}

	@Override
	public void delete(Fornecedor obj) {
		session.delete(obj);
		session.flush();
	}


	@Override
	public List<Fornecedor> read() {
		return session.createCriteria(Fornecedor.class).list();
	}
}

ESSE ARQUIVO QUE VC FALOU EU NÃO TENHO, NAO SERIA O MSM DA CLASSE QUE FABRICA CONEXAO? SE NÃO FOR

PRA QUE SERVE ESSE ARQUIVO

MUITO OBRIGADOOO

AH O MEU Fornecedor.hbm.xml fica com aquele exclamação (aviso)

a seguinte mensagem “No grammar constraints (DTD or XML schema) detected for the document.”

e tbm

esses que está sublinhado fica riscado no eclipse , tipo um erro de portugues do word

Parece estar tudo certo, apesar da mensagem informando que ele não encontrou o Fornecedor.hbm.xml na pasta Negocio, você já verificou se ele está lá? Se estiver, tente usar o arquivo hibernate.cfg.xml que fiz abaixo, colocando ele na sua pasta src.

<?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>
        <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
        <property name="hibernate.connection.password"></property>
        <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/controleestoque</property>
        <property name="hibernate.connection.username">root</property>
        <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
        <mapping resource="Negocio/Fornecedor.hbm.xml"/>
    </session-factory>
</hibernate-configuration>

Então está sim dentro do pacote Negocio, ah colequei o arquivo que vc me pediu.

Uma pergunta este arquivo substitui qual?
o hiberante.properties?

finalizando adicionando o arquivo continua dando o mesmo erro

10:12:46,218 INFO Environment:543 - Hibernate 3.3.0.SP1
10:12:46,250 INFO Environment:561 - loaded properties from resource hibernate.properties: {hibernate.connection.username=root, hibernate.connection.password=****, hibernate.dialect=org.hibernate.dialect.MySQLDialect, hibernate.show_sql=true, hibernate.connection.url=jdbc:mysql://localhost:3306/controleestoque, hibernate.bytecode.use_reflection_optimizer=false, hibernate.connection.driver_class=com.mysql.jdbc.Driver, hibernate.format_sql=true}
10:12:46,265 INFO Environment:709 - Bytecode provider name : javassist
10:12:46,312 INFO Environment:627 - using JDK 1.4 java.sql.Timestamp handling
10:12:47,468 INFO Configuration:618 - Reading mappings from resource: Negocio/Fornecedor.hbm.xml
10:12:47,468 INFO Configuration:563 - Reading mappings from resource: Negocio/Fornecedor.hbm.xml
Exception in thread “main” org.hibernate.MappingNotFoundException: resource: Negocio/Fornecedor.hbm.xml not found
at org.hibernate.cfg.Configuration.addResource(Configuration.java:566)
at org.hibernate.cfg.Configuration.addClass(Configuration.java:619)
at Persistencia.FabricaConexao.getSession(FabricaConexao.java:15)
at Persistencia.FornecedorDAO.(FornecedorDAO.java:14)
at Negocio.Teste.main(Teste.java:10)

Ele substitui o hibernate properties, mas nele eu informei a localização do seu arquivo Fornecedor.hbm.xml.
É por isso que eu prefiro annotations, às vezes um problema nos xml é difícil de descobrir, no site do hibernate você pode baixa o hibernate tools e pedir para ele criar seu arquivo .hbm.xml, pode ser um problema nesse arquivo.

então pessoal . por favor mais alguem para ajudar?

Obrigado

PESSOAL, ALGUEM PODE ME AJUDAR?

ESTOU PRECISANDO URGENTE POIS PRECISO ENTREGAR ISSO PRONTO PRA FACULDADE

Pessoal, preciso até sexta por favor alguem me ajude?