org.hibernate.HibernateException: не удалось создать экземпляр QueryTranslatorFactory: org.hibernate.hql.classic.ClassicQueryTransactionFactory - PullRequest
7 голосов
/ 07 апреля 2011

почему возникает это исключение при запуске запроса из редактора hql

org.hibernate.HibernateException: could not instantiate QueryTranslatorFactory: org.hibernate.hql.classic.ClassicQueryTransactionFactory
    at org.hibernate.cfg.SettingsFactory.createQueryTranslatorFactory(SettingsFactory.java:391)
    at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:222)
    at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2009)
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1292)
    at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:859)
    at org.netbeans.ProxyClassLoader.loadClass(ProxyClassLoader.java:264)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:169)
    at org.hibernate.util.ReflectHelper.classForName(ReflectHelper.java:100)
    at org.hibernate.cfg.SettingsFactory.createQueryTranslatorFactory(SettingsFactory.java:388)
    ... 7 more
Caused by: java.lang.ClassNotFoundException: org.hibernate.hql.classic.ClassicQueryTransactionFactory
    at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
    at org.netbeans.ProxyClassLoader.loadClass(ProxyClassLoader.java:262)
    ... 13 more

Ответы [ 4 ]

22 голосов
/ 22 января 2012

У меня было то же исключение при переходе из hibernate 3 в hibernate 4, но когда я попытался изменить

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

на

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

, это сработало для меня.Я надеюсь, что это поможет вам.

3 голосов
/ 11 марта 2013

Незначительные изменения в новой APIS.Пожалуйста, замените значение свойства на

org.hibernate.hql.internal.classic.ClassicQueryTranslatorFactory.

ПРИМЕЧАНИЕ: появился новый пакет с именем ' внутренняя '.

0 голосов
/ 13 января 2012

Правильное имя

org.hibernate.hql.classic.ClassicQueryTrans<b>l</b>actorFactory

Просьба учесть, что 'l' отсутствует в предыдущем комментарии.

0 голосов
/ 07 апреля 2011

Правильное имя фабрики классических переводчиков запросов - org.hibernate.hql.classic.ClassicQueryTransactorFactory, используйте его в свойствах вместо неправильного (org.hibernate.hql.classic.ClassicQueryTransactionFactory).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...