Я пытаюсь отладить чьи-то коды.Но я не специалист по hibernate, поэтому я прошу вашей помощи по этому поводу.
Я пытаюсь получить список заданий из базы данных, но, похоже, проблема.
В классе сущности:
//JobEntity
@ManyToOne(cascade={CascadeType.MERGE, CascadeType.REFRESH}, fetch=FetchType.EAGER)
@JoinColumn(name="job_id", nullable=false)
private Job jobId;
@Column(name="grp_id")
private String grpId;
@Id
@Column(name="id", nullable=false)
@GenericValue(strategy=GenerationType.SEQUENCE,generator="JOB_ENTITY_SEQUENCE")
private Integer id;
//DaoImpl
public Collection<JobEntity> getJobsByGrpId(String grpId){
Query q = getCurrentSession().createQuery("from JobEntity je where je.grpId= :grpId order by je.id");
q.setString("grpId", grpId);
return q.list();
}
И ошибка, которую я получаю, выглядит примерно так:
No row with the given identifier exists: [Job#:jb4567]...
Но в БД таблицаимеет данные.
Я не уверен, что является причиной этого.
Я попытался поместить оператор getCurrentSession.flush () перед созданием запроса, а также попытался изменить тип каскадаидентификатор задания от REFRESH до PERSIST, но все равно возникают ошибки.
Имеет ли кеш какое-либо отношение к этому?Или в чем здесь проблема?Я уже не в курсе.
Заранее спасибо за ответы ...