Реализация JPA, используемая в моем приложении, - Kodo.
При попытке запросить в БД сущность, я получаю очень странное исключение:
org.apache.openjpa.persistence.ArgumentException: не найдено метаданных для типа "class 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. .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.
Исключение происходит только в некоторых средах (не во всех), что в основном означает, что это экологическая проблема. Что может вызвать это?