Java EE的例子不工作
在这个doc我们可以看到例如使用@CollectioTable
注释的Java EE的例子不工作
我写了相同的代码
@Entity public class Person {
@ElementCollection
@CollectionTable(name="HOMES", joinColumns = @Column(name = "PERSON_ID"))
@Column(name="HOME_STATE")
protected List<String> vacationHomes;
...
}
Usinf 的Hibernate JPA-2版本1.0.0.Final
部署在JBoss 4.3.0.GA
并获得异常(同时部署),即column HOME_STATE cann't be mapped on java.util.List
所以我改变清单ArrayList的
该应用程序部署好后。
但行不通!我执行简单的查询,但注释@ElementCollection
和@CollectionTable
被忽略!仅工作@Column
注释
可能是旧的JBoss版本的问题?
我不知道问题所在......
属于JPA 2.0的功能无法正常工作。这是因为缺少实施。在这种情况下,只有新的注释存在,但没有处理(hibernate-jpa-2.0-api-1.0.0.Final只是JPA 2.0接口,而不是实现)。
根据releases notes JBoss 4.3.0.GA附带Hibernate 3.2.1,它不是JPA 2.0实现。
对于JBoss 5来说,使其运行起来也是不可能的,因为您可以从this question中读取它。如果您至少不能更新到JBoss 6.x,那么使用JPA 1更容易。
太糟糕了。 '@ElementCollection'自JPA 2开始,但我使用的是JBoss 4.3.0.GA :-( – Ilya 2012-04-28 19:56:54
)使用hibernate xml映射我也不能使用Element-Collection? – Ilya 2012-04-28 21:20:13
同样的限制,但是如果你准备放弃JPA兼容性和使用Hibernate特定的解决方案,CollectionOfElements可能是答案。看起来它是hibernate注释3.2.1的一部分:http://www.jarvana.com/jarvana/view/org/hibernate/hibernate-annotations/3.2.1。 GA /休眠的注解 - 3.2.1.ga.jar!/org/hibernate/annotations/CollectionOfElements.class?classDetails = OK – 2012-04-29 11:28:26
'java.utils.List'是一个错字还是一个自定义List类? – dimcookies 2012-04-28 11:53:51
这是一个错字号 – Ilya 2012-04-28 12:31:28