Hibernate

1 resposta
E

Pessoal estou com o seguinte problema.

Estou usando hibernate, quando vou rodar aparece a seuinte mensagem.

2007-08-04 19:22:26,177 INFO hibernate.cfg.Environment -> Hibernate 3.2.5

2007-08-04 19:22:26,217 INFO hibernate.cfg.Environment -> loaded properties from resource hibernate.properties: {hibernate.connection.username=root, hibernate.connection.password=****, hibernate.dialect=org.hibernate.dialect.DB2Dialect, hibernate.connection.url=jdbc:db2:SAMPLE, hibernate.bytecode.use_reflection_optimizer=false, hibernate.connection.driver_class=COM.ibm.db2.jdbc.app.DB2Driver}

2007-08-04 19:22:26,227 INFO hibernate.cfg.Environment -> Bytecode provider name : cglib

2007-08-04 19:22:26,247 INFO hibernate.cfg.Environment -> using JDK 1.4 java.sql.Timestamp handling

2007-08-04 19:22:26,558 INFO hibernate.cfg.Configuration -> Reading mappings from resource: Cliente.hbm.xml

2007-08-04 19:22:26,558 INFO hibernate.cfg.Configuration -> Reading mappings from resource: Cliente.hbm.xml

2007-08-04 19:22:27,489 DEBUG hibernate.util.DTDEntityResolver -> trying to resolve system-id [<a href="http://hibernate.sourceforge.net/hibernate-mapping.dtd">http://hibernate.sourceforge.net/hibernate-mapping.dtd</a>]

2007-08-04 19:22:27,489 DEBUG hibernate.util.DTDEntityResolver -> recognized hibernate namespace; attempting to resolve on classpath under org/hibernate/

2007-08-04 19:22:27,499 DEBUG hibernate.util.DTDEntityResolver -> unable to locate [<a href="http://hibernate.sourceforge.net/hibernate-mapping.dtd">http://hibernate.sourceforge.net/hibernate-mapping.dtd</a>] on classpath

2007-08-04 19:22:34,249 INFO hibernate.cfg.HbmBinder -> Mapping class: Cliente -> cliente

2007-08-04 19:22:34,289 DEBUG hibernate.cfg.HbmBinder -> Mapped property: codigo -> codigo

2007-08-04 19:22:34,379 DEBUG hibernate.cfg.HbmBinder -> Mapped property: nome -> nome

2007-08-04 19:22:34,379 DEBUG hibernate.cfg.HbmBinder -> Mapped property: email -> email

2007-08-04 19:22:34,379 DEBUG hibernate.cfg.Configuration -> Preparing to build session factory with filters : {}

2007-08-04 19:22:34,379 DEBUG hibernate.cfg.Configuration -> processing extends queue

2007-08-04 19:22:34,399 DEBUG hibernate.cfg.Configuration -> processing collection mappings

2007-08-04 19:22:34,399 DEBUG hibernate.cfg.Configuration -> processing native query and ResultSetMapping mappings

2007-08-04 19:22:34,399 DEBUG hibernate.cfg.Configuration -> processing association property references

2007-08-04 19:22:34,399 DEBUG hibernate.cfg.Configuration -> processing foreign key constraints

2007-08-04 19:22:34,870 INFO hibernate.connection.DriverManagerConnectionProvider -> Using Hibernate built-in connection pool (not for production use!)

2007-08-04 19:22:34,880 INFO hibernate.connection.DriverManagerConnectionProvider -> Hibernate connection pool size: 20

2007-08-04 19:22:34,880 INFO hibernate.connection.DriverManagerConnectionProvider -> autocommit mode: false

2007-08-04 19:22:35,150 FATAL hibernate.connection.DriverManagerConnectionProvider -> JDBC Driver class not found: COM.ibm.db2.jdbc.app.DB2Driver

java.lang.ClassNotFoundException: COM.ibm.db2.jdbc.app.DB2Driver

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 java.lang.Class.forName0(Native Method)

at java.lang.Class.forName(Unknown Source)

at org.hibernate.util.ReflectHelper.classForName(ReflectHelper.java:100)

at org.hibernate.connection.DriverManagerConnectionProvider.configure(DriverManagerConnectionProvider.java:61)

at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:124)

at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:56)

at org.hibernate.cfg.SettingsFactory.createConnectionProvider(SettingsFactory.java:414)

at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:62)

at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2009)

at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1292)

at ClienteDAO.<init>(ClienteDAO.java:12)

at TesteCliente.main(TesteCliente.java:11)

org.hibernate.HibernateException: JDBC Driver class not found: COM.ibm.db2.jdbc.app.DB2Driver

at org.hibernate.connection.DriverManagerConnectionProvider.configure(DriverManagerConnectionProvider.java:66)

at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:124)

at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:56)

at org.hibernate.cfg.SettingsFactory.createConnectionProvider(SettingsFactory.java:414)

at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:62)

at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2009)

at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1292)

at ClienteDAO.<init>(ClienteDAO.java:12)

at TesteCliente.main(TesteCliente.java:11)

Caused by: java.lang.ClassNotFoundException: COM.ibm.db2.jdbc.app.DB2Driver

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 java.lang.Class.forName0(Native Method)

at java.lang.Class.forName(Unknown Source)

at org.hibernate.util.ReflectHelper.classForName(ReflectHelper.java:100)

at org.hibernate.connection.DriverManagerConnectionProvider.configure(DriverManagerConnectionProvider.java:61)

 8 more
O erro acontece na minha classe chamanda ClienteDAO, exatamente em seu construtor.

public ClienteDAO() throws Exception{

actory = new Configuration().addClass(Cliente.class).buildSessionFactory();

}
Vi em alguns sites a solução desta maneira,

public ClienteDAO() throws Exception{

Datastore datastore = Hibernate.createDatastore();

datastore.storeClass(Cliente.class);

factory = datastore.buildSessionFactory();

}

Minha classe não importa o Datastore.

O que eu faço?

Obrigado a todos.

1 Resposta

M

Olá,

Está faltando o driver do seu banco de dados. Pelo que vejo o IBM DB2. Vá até o site deles e baixe o jar e coloque-o no seu classpath.

:okok:

Criado 4 de agosto de 2007
Ultima resposta 6 de ago. de 2007
Respostas 1
Participantes 2