Olá pessoal, tudo bem?
Bom, vamos direto ao ponto.
Temos aqui uma entidade mapeada (JPA HIBERNATE).
.
.
.
public class RespostaQuestao extends BaseEntityIntelligere implements Comparable<RespostaQuestao> {
@Id
@GeneratedValue(generator="respostaquestao_s", strategy = GenerationType.SEQUENCE)
private Long id;
@ManyToOne
@JoinColumn(name="tentativa_id")
private Tentativa tentativa;
@ManyToOne
@JoinColumn(name="revisaoquestao_id")
private RevisaoQuestao revisaoQuestao;
.
.
.
Meu problema é o seguinte:
Quando eu crio um objeto do tipo RespostaQuestao e o persisto, o hibernate está fazendo um update automático na tabela RevisaoQuestao, que é mapeada por esse @ManyToOne com @JoinColumn aí acima.
Vocês sabem como fazer para que esse update não aconteça? Já que na verdade só estou criando um objeto que usa o ID da RevisaoQuestao como FK?
Isso está gerando problemas de concorrência aqui, pois temos controle de Lock Otimista com @Version.
Quando uma primeira pessoa faz esse update, tudo bem. Agora quando um segundo fulano vai efetuar o update, ele diz que o objeto já foi alterado por outra transaction, lançando exceção do Hibernate.
Alguém pode me ajudar?
Obrigado a todos!
[Alterei o título de “@OneToMany” para “@ManyToOne”]
