2015-04-22 3 views
0

Я пытаюсь развернуть .war на WebLogic 12c, и я получаю следующее сообщение об ошибке: WebLogic ошибка консоли:Hibernate, ошибка развертывания WebLogic 12c

An error occurred during activation of changes, please see the log for details. 
Error org.hibernate.HibernateException: Errors in named queries: 
getAuditTaskById, getAllAuditTasksByUser, getAllAuditTasks 
Error Substituted for missing class org.hibernate.HibernateException - 
Errors in named queries: getAuditTaskById, getAllAuditTasksByUser, getAllAuditTasks 

Я пытался фильтровать путь к классу, изменяя WebLogic. XML:

<container-descriptor> 
     <!-- prefer-web-inf-classes>true</prefer-web-inf-classes--> 
     <prefer-web-inf-classes>false</prefer-web-inf-classes> 
    <prefer-application-packages> 
     <package-name>org.hibernate.*</package-name> 
     <package-name>org.apache.*</package-name> 
     <package-name>antlr.*</package-name> 
    </prefer-application-packages> 

    </container-descriptor> 

Я использую hinernate-Викисклад аннотации-4.0.2.Final.jar, зимует-ядро-4.2.12.Final.jar, зимует-entitymanaget-4.2.12.Final.jar. Любое предложение будет оценено по достоинству. Вот полный лог ошибок:

<Apr 22, 2015 3:29:19 PM IRDT> <Warning> <Deployer> <BEA-149004> <Failures were 
detected while initiating deploy task for application "benefits40".> 
<Apr 22, 2015 3:29:19 PM IRDT> <Warning> <Deployer> <BEA-149078> <Stack trace fo 
r message 149004 
weblogic.application.ModuleException: org.hibernate.HibernateException: Errors i 
n named queries: getAuditTaskById, getAllAuditTasksByUser, getAllAuditTasks 
     at weblogic.application.internal.ExtensibleModuleWrapper.prepare(Extensi 
bleModuleWrapper.java:114) 
     at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(Modu 
leListenerInvoker.java:100) 
     at weblogic.application.internal.flow.ModuleStateDriver$1.next(ModuleSta 
teDriver.java:175) 
     at weblogic.application.internal.flow.ModuleStateDriver$1.next(ModuleSta 
teDriver.java:170) 
     at weblogic.application.utils.StateMachineDriver$ParallelChange.run(Stat 
eMachineDriver.java:80) 
     Truncated. see log file for complete stacktrace 
Caused By: org.hibernate.HibernateException: Errors in named queries: getAuditTa 
skById, getAllAuditTasksByUser, getAllAuditTasks 
     at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.j 
ava:532) 
     at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.jav 
a:1797) 
     at org.hibernate.ejb.EntityManagerFactoryImpl.<init>(EntityManagerFactor 
yImpl.java:96) 
     at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Con 
figuration.java:914) 
     at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Con 
figuration.java:899) 
     Truncated. see log file for complete stacktrace 
> 
<Apr 22, 2015 3:29:19 PM IRDT> <Error> <Console> <BEA-240003> <Administration Co 
nsole encountered the following error: weblogic.application.ModuleException: org 
.hibernate.HibernateException: Errors in named queries: getAuditTaskById, getAll 
AuditTasksByUser, getAllAuditTasks 
     at weblogic.application.internal.ExtensibleModuleWrapper.prepare(Extensi 
bleModuleWrapper.java:114) 
     at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(Modu 
leListenerInvoker.java:100) 
     at weblogic.application.internal.flow.ModuleStateDriver$1.next(ModuleSta 
teDriver.java:175) 
     at weblogic.application.internal.flow.ModuleStateDriver$1.next(ModuleSta 
teDriver.java:170) 
     at weblogic.application.utils.StateMachineDriver$ParallelChange.run(Stat 
eMachineDriver.java:80) 
     at weblogic.work.ContextWrap.run(ContextWrap.java:40) 
     at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTunin 
gWorkManagerImpl.java:548) 
     at weblogic.work.ExecuteThread.execute(ExecuteThread.java:311) 
     at weblogic.work.ExecuteThread.run(ExecuteThread.java:263) 
Caused by: java.lang.Throwable: Substituted for missing class org.hibernate.Hibe 
rnateException - Errors in named queries: getAuditTaskById, getAllAuditTasksByUs 
er, getAllAuditTasks 
     at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.j 
ava:532) 
     at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.jav 
a:1797) 
     at org.hibernate.ejb.EntityManagerFactoryImpl.<init>(EntityManagerFactor 
yImpl.java:96) 
     at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Con 
figuration.java:914) 
     at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Con 
figuration.java:899) 
     at org.hibernate.ejb.HibernatePersistence.createContainerEntityManagerFa 
ctory(HibernatePersistence.java:76) 
     at weblogic.persistence.BasePersistenceUnitInfo.initializeEntityManagerF 
actory(BasePersistenceUnitInfo.java:461) 
     at weblogic.persistence.BasePersistenceUnitInfo.initializeEntityManagerF 
actory(BasePersistenceUnitInfo.java:454) 
     at weblogic.persistence.BasePersistenceUnitInfo.init(BasePersistenceUnit 
Info.java:141) 
     at weblogic.persistence.BaseJPAIntegrationProvider.createPersistenceUnit 
Info(BaseJPAIntegrationProvider.java:54) 
     at weblogic.persistence.AbstractPersistenceUnitRegistry.storeDescriptors 
(AbstractPersistenceUnitRegistry.java:423) 
     at weblogic.persistence.AbstractPersistenceUnitRegistry.loadPersistenceD 
escriptors(AbstractPersistenceUnitRegistry.java:130) 
     at weblogic.persistence.ModulePersistenceUnitRegistry.<init>(ModulePersi 
stenceUnitRegistry.java:61) 
     at weblogic.servlet.internal.WebAppInternalModuleExtension$PersistenceEx 
tension.setupPersistenceUnitRegistry(WebAppInternalModuleExtension.java:267) 
     at weblogic.servlet.internal.WebAppInternalModuleExtension$PersistenceEx 
tension.access$400(WebAppInternalModuleExtension.java:188) 
     at weblogic.servlet.internal.WebAppInternalModuleExtension.prePrepare(We 
bAppInternalModuleExtension.java:58) 
     at weblogic.application.internal.ExtensibleModuleWrapper$PrepareStateCha 
nge.next(ExtensibleModuleWrapper.java:293) 
     at weblogic.application.internal.ExtensibleModuleWrapper$PrepareStateCha 
nge.next(ExtensibleModuleWrapper.java:285) 
     at weblogic.application.utils.StateMachineDriver.nextState(StateMachineD 
river.java:42) 
     at weblogic.application.internal.ExtensibleModuleWrapper.prepare(Extensi 
bleModuleWrapper.java:109) 
> 

ответ

0

Как говорится в сообщении об ошибке:

Error org.hibernate.HibernateException: Errors in named queries: 
getAuditTaskById, getAllAuditTasksByUser, getAllAuditTasks 

У вас есть ошибка в JPQL в ваших именованных запросов, определенных на вершине некоторых из ваших лиц. Если вы не знаете, где эти запросы определены, просто выполните поиск файлов кода для текста getAuditTaskById, getAllAuditTasksByUser... и исправьте запросы.

+0

Уважаемый Зилу, благодарю вас за ваш ответ. Эти запросы хранятся в некоторых файлах jar из библиотек jbpm 6, не написанных мной. Я думаю, эти запросы работают нормально, а проблема - это что-то другое. Я был бы очень благодарен, если вы поделитесь своим мнением со мной. – kawa

0

Наконец-то я понял это. Возникла проблема с файлом persistence.xml. Я использовал это:

<property name="hibernate.query.factory_class" value="org.hibernate.hql.internal.classic.ClassicQueryTranslatorFactory" /> 

Это использует старый HQL анализатор, который предназначен для спящего режима 2.1 (или какие-либо версии подобных) и более ранние версии. Для более новых версий ядра гибернации, вы должны использовать это:

<property name="hibernate.query.factory_class" value="org.hibernate.hql.internal.ast.ASTQueryTranslatorFactory" /> 

Или что-нибудь для этого свойства не писать, а по умолчанию ASTQueryTranslatorFactory будет выбран. Я использовал hibernate core 4.2.x и некоторые файлы jar из jbpm 6, которые используют некоторые запросы, которые ClassicQueryTranslatorFactory не смог выполнить. Обратите внимание, что если вам нужно использовать ClassicQueryTranslatorFactory вместе с более новыми версиями ядра hibernate, можно настроить hibernate так, чтобы он использовал эту версию анализатора hql.

Смежные вопросы