2015-12-06 88 views
0

我想創建HQL查詢,那就是:Hibernate的HQL加入了連接表

 query = "SELECT test From Result result " + 
        "JOIN result.test test JOIN result.user user " + 
        "WHERE test.id = :testId AND user.id = :userId " + 
        "AND result.permission.id = :permissionId"), 

,現在我想添加額外的問題(多對一與測試)和答案(多對一與問題)。如果我嘗試這樣的事情:

 query = "SELECT test From Result result " + 
        "JOIN result.test test JOIN result.user user JOIN test.questions as question" + 
        "WHERE test.id = :testId AND user.id = :userId " + 
        "AND result.permission.id = :permissionId") 

我得到一個exeption。

Caused by: org.hibernate.HibernateException: Errors in named queries: getCurrentTestById 
at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:545) ~[hibernate-core-4.3.11.Final.jar:4.3.11.Final] 
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1859) ~[hibernate-core-4.3.11.Final.jar:4.3.11.Final] 
at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl$4.perform(EntityManagerFactoryBuilderImpl.java:857) ~[hibernate-entitymanager-4.3.11.Final.jar:4.3.11.Final] 
at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl$4.perform(EntityManagerFactoryBuilderImpl.java:850) ~[hibernate-entitymanager-4.3.11.Final.jar:4.3.11.Final] 
at org.hibernate.boot.registry.classloading.internal.ClassLoaderServiceImpl.withTccl(ClassLoaderServiceImpl.java:425) ~[hibernate-core-4.3.11.Final.jar:4.3.11.Final] 
at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:849) ~[hibernate-entitymanager-4.3.11.Final.jar:4.3.11.Final] 
at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:60) ~[spring-orm-4.2.3.RELEASE.jar:4.2.3.RELEASE] 
at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:343) ~[spring-orm-4.2.3.RELEASE.jar:4.2.3.RELEASE] 
at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:318) ~[spring-orm-4.2.3.RELEASE.jar:4.2.3.RELEASE] 
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1637) ~[spring-beans-4.2.3.RELEASE.jar:4.2.3.RELEASE] 
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1574) ~[spring-beans-4.2.3.RELEASE.jar:4.2.3.RELEASE] 
... 190 common frames omitted 
+0

你有什麼異常? – DB5

+0

加入問題 – quento

回答

1

這裏有一個錯誤(需要有一個空格)

​​

我不知道爲什麼你需要對問題進行加入...你不要在這裏使用它。

+0

我想使用問題選項,例如question.deleted = false – quento