ClassNotFoundException (HqlToken) при выполнении в WebLogic

У меня есть .war файл для приложения, которое обычно хорошо работает в Причале.

Я пытаюсь портировать приложение для выполнения в WebLogic, но при запуске я получаю эти исключения:

ERROR:Foo - Error in named query: findBar
org.hibernate.QueryException: ClassNotFoundException: org.hibernate.hql.ast.HqlToken [from Bar]
    at org.hibernate.hql.ast.HqlLexer.panic(HqlLexer.java:80)
    at antlr.CharScanner.setTokenObjectClass(CharScanner.java:340)
    at org.hibernate.hql.ast.HqlLexer.setTokenObjectClass(HqlLexer.java:54)
    at antlr.CharScanner.<init>(CharScanner.java:51)
    at antlr.CharScanner.<init>(CharScanner.java:60)
    at org.hibernate.hql.antlr.HqlBaseLexer.<init>(HqlBaseLexer.java:56)
    at org.hibernate.hql.antlr.HqlBaseLexer.<init>(HqlBaseLexer.java:53)
    at org.hibernate.hql.antlr.HqlBaseLexer.<init>(HqlBaseLexer.java:50)
    ...

Что лучший способ состоит в том, чтобы зафиксировать это?

Я использую, в спящем режиме 3.3.1. GA и WebLogic 10.3.2.0.

8
задан Pascal Thivent 28 April 2010 в 07:47
поделиться

2 ответа

WebLogic имеет собственную версию ANTLR, и это вызывает проблему, с которой вы столкнулись. Один из способов решить эту проблему с помощью веб-приложения - установить для элемента preference-web-inf-classes в weblogic.xml значение true .

<weblogic-web-app>
  ....
  <container-descriptor>
    <prefer-web-inf-classes>true</prefer-web-inf-classes>
  </container-descriptor>
  ....
</weblogic-web-app>

weblogic.xml находится в WEB-INF .

12
ответ дан 5 December 2019 в 05:18
поделиться

Если у вас есть проект EAR, как у меня, вам необходимо добавить этот элемент в дескриптор развертывания уха weblogic [ weblogic-application.xml ]

<wls:prefer-application-packages>
        <wls:package-name>antlr.*</wls:package-name>
    </wls:prefer-application-packages>
6
ответ дан 5 December 2019 в 05:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: