1
Exception in thread "main" org.hibernate.HibernateException: 'hibernate.dialect' must be set when no Connection available
at org.hibernate.dialect.resolver.DialectFactory.buildDialect(DialectFactory.java:106)
at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:152)
at org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2833)
at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2829)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1840)
at Test.main(Test.java:17)
解决:Configuration con = new Configuration();改为:
Configuration con = new Configuration().configure();
因为configure()指定一个cfg.xml文件,从文件中加载hibernate配置
2
Exception in thread "main" org.hibernate.MappingException: Could not instantiate id generator [entity-name=com.hsp.domain.Employee]
at org.hibernate.id.factory.DefaultIdentifierGeneratorFactory.createIdentifierGenerator(DefaultIdentifierGeneratorFactory.java:118)
at org.hibernate.mapping.SimpleValue.createIdentifierGenerator(SimpleValue.java:193)
at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:246)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1842)
at Test.main(Test.java:17)
Caused by: org.hibernate.MappingException: Could not interpret id generator strategy [Increment]
at org.hibernate.id.factory.DefaultIdentifierGeneratorFactory.getIdentifierGeneratorClass(DefaultIdentifierGeneratorFactory.java:137)
at org.hibernate.id.factory.DefaultIdentifierGeneratorFactory.createIdentifierGenerator(DefaultIdentifierGeneratorFactory.java:108)
... 4 more
因为数据库方言不支持Increment这样用,如果在Oracle中使用Sequence即可,MySQL中应该改为 native
3.
xxx is not mapped
说明HQL中写错了,或者hbm.xml中写错了
需要把HQL中from后面的列名改为hbm.xml映射的对象名称
4.
org.hibernate.exception.GenericJDBCException: could not execute query
at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:103)
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:91)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
at org.hibernate.loader.Loader.doList(Loader.java:2223)
at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2104)
at org.hibernate.loader.Loader.list(Loader.java:2099)
at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:378)
at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:338)
at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:172)
at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1121)
at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
at org.ds.dao.SourcedirDAO.getRoot(SourcedirDAO.java:226)
at org.ds.util.XMLHandler.createXMLDocument(XMLHandler.java:72)
at org.ds.util.XMLHandler.createXMLFile(XMLHandler.java:119)
at org.ds.util.GenXMLPlugin.init(GenXMLPlugin.java:48)
at org.apache.struts.action.ActionServlet.initModulePlugIns(ActionServlet.java:869)
at org.apache.struts.action.ActionServlet.init(ActionServlet.java:336)
at javax.servlet.GenericServlet.init(GenericServlet.java:258)
at weblogic.servlet.internal.ServletStubImpl$ServletInitAction.run(ServletStubImpl.java:1099)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.ServletStubImpl.createServlet(ServletStubImpl.java:975)
at weblogic.servlet.internal.ServletStubImpl.createInstances(ServletStubImpl.java:954)
at weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:893)
at weblogic.servlet.internal.ServletStubImpl.reloadServlet(ServletStubImpl.java:804)
at weblogic.servlet.internal.ServletStubImpl.checkForReload(ServletStubImpl.java:762)
at weblogic.servlet.internal.ServletStubImpl.getServlet(ServletStubImpl.java:602)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:406)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:28)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
at org.ds.util.MyFilter.doFilter(MyFilter.java:121)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
at org.ds.util.SysLogFilter.doFilter(SysLogFilter.java:56)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:7053)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3902)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2773)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)
Caused by: java.sql.SQLException: Io 异常: Software caused connection abort: recv failed
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:255)
at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:977)
at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1060)
at oracle.jdbc.driver.T4CPreparedStatement.executeMaybeDescribe(T4CPreparedStatement.java:839)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1132)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3316)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3361)
at weblogic.jdbc.wrapper.PreparedStatement.executeQuery(PreparedStatement.java:131)
at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:186)
at org.hibernate.loader.Loader.getResultSet(Loader.java:1787)
at org.hibernate.loader.Loader.doQuery(Loader.java:674)
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236)
at org.hibernate.loader.Loader.doList(Loader.java:2220)
... 37 more
间隔时间太长了,session关闭了,重新运行程序就可以了
5.
org.hibernate.QueryParameterException: could not locate named parameter [mdfileid]java.lang.NullPointerException
at org.ds.dao.MetadataDAO.findByMdFileId(MetadataDAO.java:233)
at org.ds.directoryView.action.DirectoryContent.buildContent(DirectoryContent.java:84)
at org.ds.directoryView.service.DirectoryQuery.search(DirectoryQuery.java:131)
at org.ds.directoryView.action.DirectoryAction.execute(DirectoryAction.java:55)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
at org.ds.util.MyActionServlet.process(MyActionServlet.java:17)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1077)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:465)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:28)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
at org.ds.util.MyFilter.doFilter(MyFilter.java:121)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
at org.ds.util.SysLogFilter.doFilter(SysLogFilter.java:56)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:7053)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3902)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2773)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)
写错了,应该把mdfiled改为id,因为占位符是id来占位的
String hql = "from Metadata where mdfileid= :id";
Metadata metadata = null;
Session session = getHibernateTemplate().getSessionFactory().openSession();
try {
Query query = session.createQuery(hql);
query.setParameter("mdfileid",id);
6. No CurrentSessionContext configured!
web应用添加:
<property name="current_session_context_class">jta</property>
java应用添加:
<property name="current_session_context_class">thread</property>
7. org.hibernate.InvalidMappingException: Could not parse mapping document from resource
解决:Domain与hbm.xml映射错误!
8.com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
解决:其实这个问题是由于mysql空闲导致断开连接的,netstat -nao查看到果然有占用着mysql的进程
关闭进程,在执行一次程序,成功解决该问题!
分享到:
相关推荐
本文将针对几个常见的Hibernate错误进行深入分析,并提供相应的解决方法。这些错误包括但不限于 `org.springframework.orm.ObjectRetrievalFailureException`、`org.springframework.beans.factory....
标题“Hibernate错误示例一”表明我们将探讨在使用Hibernate这个流行的Java对象关系映射(ORM)框架时可能会遇到的问题。Hibernate允许开发人员将Java对象与关系数据库中的表进行映射,简化了数据操作,但同时也可能...
总之,解决"MyEclipse+hibernate错误:Could not get list of suggested identity strategies from database"问题需要从数据库连接、Hibernate配置、JDBC驱动等多个方面排查,通过仔细分析错误信息和尝试不同的解决...
### Hibernate常见错误及解决办法 #### 一、Nodefaultconstructorforentity 错误 **问题描述**:在使用Hibernate执行查询语句时,系统抛出`Nodefaultconstructorforentity`错误。 **可能原因**:该错误通常是由于...
一、Hibernate错误 Hibernate是Java持久层框架,它简化了数据库操作。常见的错误包括: 1. **配置错误**:如XML配置文件中的实体映射错误、数据源配置错误等,可能导致SessionFactory无法创建。 2. **SQL异常**:...
错误原因:在Hibernate中,当你试图将一个对象属性映射为集合,比如一个用户有多个角色,通常会使用标签来定义。如果在前端页面尝试显示这些角色作为下拉选择时,可能由于集合未正确加载或配置不完整,导致下拉框...
本文将根据提供的文件信息,深入解析几个常见的Hibernate错误及其解决方案,旨在为开发者提供一份排错宝典,帮助他们迅速定位并解决问题。 ### 错误一:`java.lang.NullPointerException` **错误现象**: 在开发...
6. 错误调试:学会识别并解决常见的Hibernate错误,如 LazyInitializationException、StaleObjectStateException 等。 总之,《Hibernate电子版及源码》资源是Java开发者的宝贵学习资料,通过深入学习和实践,...
### Hibernate常见错误解决方案 在开发基于Hibernate框架的应用程序时,我们经常会遇到各种各样的异常情况。这些异常不仅会影响系统的正常运行,还可能增加调试难度。本文将针对几个常见的Hibernate异常进行详细...
《Hibernate配置常见错误详解》 Hibernate,作为Java领域中广泛使用的对象关系映射(ORM)框架,极大地简化了数据库操作。然而,在实际开发过程中,由于配置问题,开发者常常会遇到各种错误,这些错误可能导致程序...
在使用Hibernate进行数据库操作时,可能会遇到各种错误。这些错误通常是由于配置问题、SQL语法错误、类型不匹配或实体属性与数据库映射不一致导致的。以下是对标题和描述中提及的一些常见错误及其解决方法的详细说明...
如果遇到错误,例如配置错误导致browse无法选择正确的项目目录,可能需要手动修改`.project`文件的natures部分,确保包含Hibernate的nature。 总的来说,Hibernate是Java开发中的重要工具,它通过ORM解决了数据库...
如果发生错误,可以调用rollback()回滚事务。 6. 关闭Session:每次操作完毕,记得关闭Session以释放资源。 总结起来,Hibernate3是Java开发中的强大工具,它极大地简化了数据库操作,提高了开发效率。理解并熟练...
9. **错误处理和日志记录**:理解Hibernate常见的错误和异常,如 detached entity passed to persist 等,并配置合适的日志系统,如Log4j或SLF4J,以便追踪应用运行状态。 总的来说,Hibernate AIP涵盖了从项目初始...
5.6版本还提供了更好的类型安全性和错误检查,减少了运行时错误的可能性。对于大数据量的处理,增加了批量操作和流式API的支持,以提高效率。此外,此版本还增强了对NoSQL数据库的支持,反映了现代应用程序多样化的...
Hibernate的事务回滚机制是指在事务执行过程中,遇到错误或异常时,Hibernate可以自动回滚事务,以确保数据库的一致性和完整性。Hibernate的事务回滚机制可以避免数据库的一致性和完整性问题。 六、总结 本文详细...
然而,在使用 Hibernate 进行数据库操作时,经常会遇到 "No Hibernate Session bound to thread" 的错误信息。本文将详细介绍该错误的解决方案。 错误原因 "No Hibernate Session bound to thread" 错误信息通常是...