我的应用程序中使用的JPA实现是Kodo。当试图查询DB中的实体时,我得到了一个非常奇怪的异常:
org.apache.openjpa.persistence.ArgumentException:未找到“类com.verid.ims.model.AddressUS".”类型的元数据类没有出现在持久类型列表中: com.verid.ims.model.Birthdate、com.verid.ims.model.PersonName、com.verid.ims.model.Birthdate 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文件。
例外只发生在某些环境(并不是所有环境)上,这基本上意味着这是一个环境问题。是什么导致的?
发布于 2011-08-08 13:47:29
我可以确认也有同样的问题。但这是一成不变的行为。应用程序可以正常工作一段时间(几天),然后突然出现这个问题。我们有集群,这个问题只发生在集群中的一个服务器上。
在重新启动应用程序之后,OpenJPA再次正常工作。
我们还遇到了一个问题,即OpenJPA在某一时刻工作得很好,然后开始为某些表生成无效查询。似乎类或数据库元数据在某一时刻已经损坏。出现问题后,生成无效查询。
关于这个问题你有什么新的信息吗?
https://stackoverflow.com/questions/4327691
复制相似问题