Я создал этот код:не сохраняется сущность с Hibernate
Sale sale = new Sale();
saleService.create(sale);
Vendor vendor = new Vendor("name");
Sale updatedSale = saleService.findById(sale.getId());
updatedSale.setVendor(vendor);
try {
saleService.update(updatedSale);
} catch (EntityNotFoundException ex) {
System.err.println("");
}
Кроме того, продажа в каскаде с продавцом:
@ManyToOne(cascade={CascadeType.PERSIST,CascadeType.REFRESH}, targetEntity = Vendor.class)
@Cascade({
org.hibernate.annotations.CascadeType.SAVE_UPDATE,
org.hibernate.annotations.CascadeType.PERSIST
})
private Vendor vendor;
saleService имеет следующий код:
@Transactional
public Sale create(Sale entity) {
Sale created = entity;
saleRepository.saveAndFlush(created);
return created;
}
@Transactional(rollbackFor = EntityNotFoundException.class)
public Calibration update(Calibration entity) throws EntityNotFoundException {
if (!calibrationRepository.exists(entity.getId())) {
throw new EntityNotFoundException();
}
return calibrationRepository.saveAndFlush(entity);
}
Он также записан как @Service
. Репозиторий - это интерфейс, который реализует JpaRepository<Sale, Long>
.
Я получаю сообщение об ошибке, указывающее, что свойство Vendor, которое не должно быть null, имеет значение null.
Спасибо!
Я предполагаю, что вы еще не создали службу, которая сохраняется в продаже, вы создали таблицы базы данных, pojos persistence, но ничего, что говорит java, как сохранить базу данных pojos int he. Это проект, который я сделал несколько месяцев назад о jpa и т. Д., Проверить классы внутри dani/java/examenuf6/controller https://github.com/nagarz/ExamenM03UF6 – Nagarz
Я отредактировал вопрос с кодом обслуживания, чтобы создать 'Sale'. –