[quote]Boa Tarde, Galera !
Sou iniciante em Hibernate, comprei o livro javaparaweb, porém mesmo seguindo a risco
o projeto estou tendo alguns problemas..
Segue abaixo o erro :
[code]
3 [main] INFO org.hibernate.cfg.annotations.Version - Hibernate Annotations 3.5.2-Final
26 [main] INFO org.hibernate.cfg.Environment - Hibernate 3.5.2-Final
28 [main] INFO org.hibernate.cfg.Environment - hibernate.properties not found
33 [main] INFO org.hibernate.cfg.Environment - Bytecode provider name : javassist
38 [main] INFO org.hibernate.cfg.Environment - using JDK 1.4 java.sql.Timestamp handling
194 [main] INFO org.hibernate.annotations.common.Version - Hibernate Commons Annotations 3.2.0.Final
202 [main] INFO org.hibernate.cfg.Configuration - configuring from resource: hibernate.cfg.xml
202 [main] INFO org.hibernate.cfg.Configuration - Configuration resource: hibernate.cfg.xml
323 [main] INFO org.hibernate.cfg.Configuration - Configured SessionFactory: null
331 [main] INFO org.hibernate.cfg.search.HibernateSearchEventListenerRegister - Unable to find org.hibernate.search.event.FullTextIndexEventListener on the classpath. Hibernate Search is not enabled.
406 [main] INFO org.hibernate.cfg.AnnotationConfiguration - Hibernate Validator not found: ignoring
412 [main] INFO org.hibernate.connection.DriverManagerConnectionProvider - Using Hibernate built-in connection pool (not for production use!)
413 [main] INFO org.hibernate.connection.DriverManagerConnectionProvider - Hibernate connection pool size: 20
413 [main] INFO org.hibernate.connection.DriverManagerConnectionProvider - autocommit mode: false
420 [main] INFO org.hibernate.connection.DriverManagerConnectionProvider - using driver: com.mysql.jdbc.Driver at URL: jdbc:mysql://localhost/agenda
421 [main] INFO org.hibernate.connection.DriverManagerConnectionProvider - connection properties: {user=root, password=****}
713 [main] INFO org.hibernate.cfg.SettingsFactory - RDBMS: MySQL, version: 5.1.51-community
713 [main] INFO org.hibernate.cfg.SettingsFactory - JDBC driver: MySQL-AB JDBC Driver, version: mysql-connector-java-5.1.6 ( Revision: ${svn.Revision} )
752 [main] INFO org.hibernate.dialect.Dialect - Using dialect: org.hibernate.dialect.MySQL5InnoDBDialect
802 [main] INFO org.hibernate.engine.jdbc.JdbcSupportLoader - Disabling contextual LOB creation as JDBC driver reported JDBC version [3] less than 4
804 [main] INFO org.hibernate.transaction.TransactionFactoryFactory - Using default transaction strategy (direct JDBC transactions)
806 [main] INFO org.hibernate.transaction.TransactionManagerLookupFactory - No TransactionManagerLookup configured (in JTA environment, use of read-write or transactional second-level cache is not recommended)
806 [main] INFO org.hibernate.cfg.SettingsFactory - Automatic flush during beforeCompletion(): disabled
806 [main] INFO org.hibernate.cfg.SettingsFactory - Automatic session close at end of transaction: disabled
806 [main] INFO org.hibernate.cfg.SettingsFactory - JDBC batch size: 15
806 [main] INFO org.hibernate.cfg.SettingsFactory - JDBC batch updates for versioned data: disabled
807 [main] INFO org.hibernate.cfg.SettingsFactory - Scrollable result sets: enabled
807 [main] INFO org.hibernate.cfg.SettingsFactory - JDBC3 getGeneratedKeys(): enabled
807 [main] INFO org.hibernate.cfg.SettingsFactory - Connection release mode: auto
808 [main] INFO org.hibernate.cfg.SettingsFactory - Maximum outer join fetch depth: 2
808 [main] INFO org.hibernate.cfg.SettingsFactory - Default batch fetch size: 1
808 [main] INFO org.hibernate.cfg.SettingsFactory - Generate SQL with comments: enabled
808 [main] INFO org.hibernate.cfg.SettingsFactory - Order SQL updates by primary key: disabled
808 [main] INFO org.hibernate.cfg.SettingsFactory - Order SQL inserts for batching: disabled
808 [main] INFO org.hibernate.cfg.SettingsFactory - Query translator: org.hibernate.hql.ast.ASTQueryTranslatorFactory
811 [main] INFO org.hibernate.hql.ast.ASTQueryTranslatorFactory - Using ASTQueryTranslatorFactory
811 [main] INFO org.hibernate.cfg.SettingsFactory - Query language substitutions: {}
811 [main] INFO org.hibernate.cfg.SettingsFactory - JPA-QL strict compliance: disabled
811 [main] INFO org.hibernate.cfg.SettingsFactory - Second-level cache: enabled
811 [main] INFO org.hibernate.cfg.SettingsFactory - Query cache: disabled
811 [main] INFO org.hibernate.cfg.SettingsFactory - Cache region factory : org.hibernate.cache.impl.NoCachingRegionFactory
811 [main] INFO org.hibernate.cfg.SettingsFactory - Optimize cache for minimal puts: disabled
812 [main] INFO org.hibernate.cfg.SettingsFactory - Structured second-level cache entries: disabled
819 [main] INFO org.hibernate.cfg.SettingsFactory - Echoing all SQL to stdout
820 [main] INFO org.hibernate.cfg.SettingsFactory - Statistics: enabled
820 [main] INFO org.hibernate.cfg.SettingsFactory - Deleted entity synthetic identifier rollback: disabled
820 [main] INFO org.hibernate.cfg.SettingsFactory - Default entity-mode: pojo
820 [main] INFO org.hibernate.cfg.SettingsFactory - Named query checking : enabled
820 [main] INFO org.hibernate.cfg.SettingsFactory - Check Nullability in Core (should be disabled when Bean Validation is on): enabled
866 [main] INFO org.hibernate.impl.SessionFactoryImpl - building session factory
878 [main] INFO org.hibernate.impl.SessionFactoryObjectFactory - Not binding factory to JNDI, no JNDI name configured
Não foi possivel inserir o contato. Erro Unknown entity: com.livro.capitulo3.crudannotations.ContatoAnnotations
Não foi possivel inserir o contato. Erro Unknown entity: com.livro.capitulo3.crudannotations.ContatoAnnotations
Não foi possivel inserir o contato. Erro Unknown entity: com.livro.capitulo3.crudannotations.ContatoAnnotations
Não foi possível listar contatos. Erro: contato is not mapped [from contato]
Exception in thread "main" org.hibernate.HibernateException: org.hibernate.hql.ast.QuerySyntaxException: contato is not mapped [from contato]
at com.livro.capitulo3.crudannotations.ContatoCrudAnnotations.listar(ContatoCrudAnnotations.java:101)
at com.livro.capitulo3.crudannotations.ContatoCrudAnnotations.main(ContatoCrudAnnotations.java:156)
Caused by: org.hibernate.hql.ast.QuerySyntaxException: contato is not mapped [from contato]
at org.hibernate.hql.ast.util.SessionFactoryHelper.requireClassPersister(SessionFactoryHelper.java:181)
at org.hibernate.hql.ast.tree.FromElementFactory.addFromElement(FromElementFactory.java:111)
at org.hibernate.hql.ast.tree.FromClause.addFromElement(FromClause.java:93)
at org.hibernate.hql.ast.HqlSqlWalker.createFromElement(HqlSqlWalker.java:314)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.fromElement(HqlSqlBaseWalker.java:3355)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.fromElementList(HqlSqlBaseWalker.java:3239)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.fromClause(HqlSqlBaseWalker.java:726)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.query(HqlSqlBaseWalker.java:577)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.selectStatement(HqlSqlBaseWalker.java:294)
at org.hibernate.hql.antlr.HqlSqlBaseWalker.statement(HqlSqlBaseWalker.java:237)
at org.hibernate.hql.ast.QueryTranslatorImpl.analyze(QueryTranslatorImpl.java:254)
at org.hibernate.hql.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:185)
at org.hibernate.hql.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:136)
at org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:101)
at org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:80)
at org.hibernate.engine.query.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:98)
at org.hibernate.impl.AbstractSessionImpl.getHQLQueryPlan(AbstractSessionImpl.java:156)
at org.hibernate.impl.AbstractSessionImpl.createQuery(AbstractSessionImpl.java:135)
at org.hibernate.impl.SessionImpl.createQuery(SessionImpl.java:1760)
at com.livro.capitulo3.crudannotations.ContatoCrudAnnotations.listar(ContatoCrudAnnotations.java:96)
... 1 more
Pelo o que eu observei de erro, tenho um erro de conversão de List, no trecho :
public List<ContatoAnnotations> listar(){
Session sessao = null;
Transaction transacao = null;
Query consulta = null;
List<ContatoAnnotations> resultado = null;
try{
sessao = HibernateUtil.getSessionFactory().openSession();
transacao = sessao.beginTransaction();
consulta = sessao.createQuery("from contato");
resultado = consulta.list();
transacao.commit();
return resultado;
}catch (HibernateException e){
System.out.println("Não foi possível listar contatos. Erro: " + e.getMessage());
throw new HibernateException(e);
}finally{
try{
sessao.close();
}catch (Throwable e) {
System.out.println("Erro ao fechar operacao de consulta. Mensagem: " + e.getMessage());
}
}
Problema este que sinceramente nao consigo resolver..
Outro erro estranho é este :
Exception in thread "main" org.hibernate.HibernateException: org.hibernate.hql.ast.QuerySyntaxException: contato is not mapped [from contato]
Sendo que mapeio a classe da seguinte forma xml do hibernate :
<mapping class="com.livro.capitulo3.crudannotations.ContatoAnnotations"/>
</session-factory>
Se alguem poder me auxiliar..
Obrigado