Когда я пытаюсь сохранить объект на n-стороне, у которого установлен объект на 1-й стороне, я получаю следующую ошибку:
Dec 07, 2018 10:37:07 AM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.orm.jpa.JpaSystemException: Error accessing field [public java.lang.String eu.jaas.document.Document.id] by reflection for persistent property [eu.jaas.document.Document#id] : 17842965-4ea8-41b6-9653-110965f6db13; nested exception is org.hibernate.property.access.spi.PropertyAccessException: Error accessing field [public java.lang.String org.myorg.document.Document.id] by reflection for persistent property [org.myorg.document.Document#id] : doc123] with root cause
java.lang.IllegalArgumentException: Can not set java.lang.String field eu.jaas.document.Document.id to java.lang.String
at java.base/jdk.internal.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(UnsafeFieldAccessorImpl.java:167)
at java.base/jdk.internal.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(UnsafeFieldAccessorImpl.java:171)
1-сторонний Java-объект определяется какследует:
@Entity
public class LawCase {
..
@Id
public String id;
@OneToMany(mappedBy = "lawcase")
public @Setter Set<Document> documents = new HashSet<>();
..
}
И n-сторона:
@Entity
public class Document {
..
@Id
public String id;
@ManyToOne
@JoinColumn(name="lawcase")
public LawCase lawcase;
..
}
Идентификаторы генерируются самим приложением во время инициализации объекта, поэтому в тот момент, когда я пытаюсь сохранитьобъекты, как объекты LawCase, так и Document имеют действительный идентификатор (UUID).
Я использую springBoot.version 2.1.1.RELEASE и пробовал с Java8 и Java11.Для меня это очень похоже на обычный сценарий использования гибернации, единственная «аномалия» может заключаться в том, что у меня также есть аннотации lombok к классам данных.Я уверен, что упустил из виду одну очень простую проблему, но последние несколько дней был слепым.