Вы также можете сделать это с помощью Cats .
import cats.implicits._
val map1 = Map(1 -> 9 , 2 -> 20)
val map2 = Map(1 -> 100, 3 -> 300)
map1 combine map2 // Map(2 -> 20, 1 -> 109, 3 -> 300)
Сбой происходит в JDBCStoreManager в методе setInverseRelation в следующем коде:
ClassMapping cm =
(ClassMapping) _conf.getMetaDataRepositoryInstance().getCachedMetaData(pc.getClass());
FieldMapping[] fmd = cm.getFieldMappings();
cm имеет значение null и поэтому cm.getFieldMappings () аварийно завершает работу. ClassMapping отсутствует в кэше метаданных. По какой-то причине кеш имеет только оригинальные классы, но pc.getClass возвращает класс ENHANCED. Очень похоже на ошибку в Open JPA. Кто-нибудь может это подтвердить?