【发布时间】:2021-08-10 12:21:08
【问题描述】:
我的应用程序中有一个简单的创建查询。(Spring 5.2.10 + Hibernate 5.4.3.1 + Weblogic 12c)
它在我的本地 weblogic 服务器上运行良好,但刷新时在另一个 weblogic 服务器上出错。他们使用相同的数据源。
org.hibernate.exception.SQLGrammarException: could not execute statementjavax.persistence.PersistenceException: org.hibernate.exception.SQLGrammarException: could not execute statement
at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:154)
at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:181)
at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:188)
at org.hibernate.internal.SessionImpl.doFlush(SessionImpl.java:1366)
at org.hibernate.internal.SessionImpl.flush(SessionImpl.java:1349)
at com.thy.dao.impl.BaseDAOImpl.create(BaseDAOImpl.java:46)
我尝试配置 weblogic.xml 首选应用程序包,如下所示,仍然无法正常工作。
<wls:prefer-application-packages>
<wls:package-name>javax.persistence.*</wls:package-name>
<wls:package-name>org.hibernate.*</wls:package-name>
</wls:prefer-application-packages>
</wls:container-descriptor>
【问题讨论】:
-
当您不显示使用失败的 SQL 查询时,我们如何帮助您?另外,您在这两种情况下都使用相同的数据库吗?
-
我不能共享查询,因为公司限制,它只是 session.persist(entity); session.flush();
-
我假设您不使用相同的数据库架构
-
在 SQLGrammarException 的堆栈跟踪中应该有原因。如果您无法共享查询和异常,您能否更改名称以保持一致性并告诉我们类似的查询?
标签: java hibernate weblogic12c