Я только начал использовать Javers в своем приложении, но у меня есть объекты, отмеченные @Transient, которые, как я думал, Javers проигнорирует, но нет :(, вместо этого он выдает мне исключение:
JaversException ENTITY_INSTANCE_WITH_NULL_ID: Found Entity instance 'ProductData' with null Id-property 'id'
Вы знаете, есть ли способ игнорировать эти переходные поля?
В Документация говорится, что аннотация @Transient является синонимом @DiffIgnore. Но я не знаю, связано ли это только со сравнением или с ходом аудита.
Вот мой код:
@Entity
public class ProductExternal extends AbstractEntity implements ExternalEntity {
@Transient
private ProductData productData;
@NotNull
@Column(unique=true)
private Long externalId;
public ProductExternal() { }
//get set
}
--
@Entity
public class ProductData extends AbstractEntity {
private static final long serialVersionUID = 1L;
@Column
@NotNull
private String name;
public ProductData() { }
//get set
}
Родительский класс
@MappedSuperclass
public abstract class AbstractEntity implements Serializable {
public AbstractEntity() {}
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
protected Long id;
@Version
@Column(columnDefinition = "bigint default '0'")
protected Long version;
//get set
}