gpt4 book ai didi

java - 删除实体类型错误

转载 作者:行者123 更新时间:2023-11-30 08:03:07 26 4
gpt4 key购买 nike

大家好,当我尝试删除实体时遇到错误

错误:

ERROR [io.undertow.request] (default task-2) UT005023: Exception handling request to /updateUseranswers/11: org.lightadmin.core.view.exceptions.BadRequestException: org.springframework.web.util.NestedServletException: Request processing failed; nested exception is java.lang.IllegalArgumentException: Parameter value [4] did not match expected type [ .entities.useranswers.UserAnswer (n/a)]

服务:

for (UserAnswerField prevUserAnswerField : userAnswerFieldRepo.getUserAnswerFields(userAnswer.getAnswerId())) {
userAnswerFieldRepo.deleteUserAnswerField(prevUserAnswerField.getfieldId().intValue());
}

仓库:

public void deleteUserAnswerField(Integer answerId) {
Query delQuery = getEntityManagerFactory().createQuery("delete from UserAnswerField sff where sff.userAnswerId=:answerId");
delQuery.setParameter("answerId", answerId);
delQuery.executeUpdate();
}

UserAnswer 实体:

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Basic(optional = false)
@Column(name = "answer_id")
private Integer answerId;
@Basic(optional = false)
@NotNull
@Column(name = "user_id")

private int userId;
@Basic(optional = false)
@NotNull
@Size(min = 1, max = 500)
@Column(name = "label")
private String label;
@Basic(optional = true)
@Column(name = "insertion_date")
@Temporal(TemporalType.TIMESTAMP)
private Date insertionDate;
@Column(name = "is_active")
private Boolean isActive;
@Basic(optional = false)
@NotNull
@Size(min = 1, max = 20)
@Column(name = "type")
private String type;

@Transient
private List<UserAnswerField> answerFields;

UserAnswerField 实体:

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Basic(optional = false)
@Column(name = "field_id")
private Integer fieldId;
@JoinColumn(name = "type_id")
@ManyToOne(optional = false,fetch = FetchType.EAGER,cascade=CascadeType.ALL)
private UserAnswerType typeId;
@JoinColumn(name = "answer_id", referencedColumnName = "answer_id")
@ManyToOne(optional = false,fetch = FetchType.EAGER,cascade=CascadeType.ALL)
private UserAnswer userAnswerId;
@Size(max = 500)
@Column(name = "field")
private String field;

最佳答案

尝试使用where sff.userAnswerId.answerId = :answerId .

userAnswerIdUserAnswerField类型为UserAnswer ;只需导航至其 ID。

关于java - 删除实体类型错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31582556/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com