【发布时间】:2011-05-18 16:20:32
【问题描述】:
我的应用程序中使用的 JPA 实现是 Kodo。 尝试在数据库中查询实体时,我得到了这个非常奇怪的异常:
org.apache.openjpa.persistence.ArgumentException:找不到类型“类 com.verid.ims.model.AddressUS”的元数据。该类未出现在持久类型列表中:[com.verid.ims.model.Birthdate, com.verid.ims.model.PersonName, com.verid.ims.model.AddressUS, com.rsa.idv.ims.feedback.IMSFeedback, com.rsa.idv.ims.notification.IMSNotification, com.rsa.idv.ims.provider.IMSProvider, com.rsa.idv.ims.notification.NotificationEntry, com. rsa.idv.ims.enroll.SecretUserQuestion, com.rsa.idv.ims.enroll.Enrollment]。
请注意,根据异常没有出现在持久类型列表中的 AddressUS 类实际上在列表中! (粗体)
AddressUS 类映射到我的 orm.xml 文件中(它不在 persistence.xml 描述符中,因为它不是一个实体,只是一个可嵌入的)。这是映射:
<embeddable class="com.verid.ims.model.AddressUS">
<attributes>
<basic name="city" />
<basic name="state">
<enumerated>STRING</enumerated>
</basic>
<basic name="street1" />
<basic name="street2" />
<basic name="zipcode" />
<basic name="suite" />
</attributes>
</embeddable>
不用说,persistence.xml 描述符是指 orm.xml 文件。
该异常仅发生在某些环境(不是全部)上,这基本上意味着这是一个环境问题。是什么原因造成的?
【问题讨论】:
标签: java hibernate orm jpa persistence