altro cons in:
http://www.mkyong.com/hibernate/cascade-jpa-hibernate-annotation-common-mistake/
dove:
@OneToMany(fetch = FetchType.LAZY,
cascade = {CascadeType.PERSIST,CascadeType.MERGE },
mappedBy = "stock")
public Set<StockDailyRecord> getStockDailyRecords() {
return this.stockDailyRecords;
}
e questo non funziona:
stockDailyRecords.setStock(stock);
stock.getStockDailyRecords().add(stockDailyRecords);
session.save(stock);
session.getTransaction().commit();
come @OneToMany è da APP, si aspettava una cascata JPA - javax.persistence.CascadeType. Tuttavia, quando si salva con sessione di Hibernate, org.hibernate.engine.Cascade farà il seguente verifica ...
if (style.doCascade(action)) {
e Hibernate Salva processo provocando un'azione ACTION_SAVE_UPDATE, ma l'APP passerà un ACTION_PERSIST e ACTION_MERGE, si non corrisponderà e causerà l'esecuzione non riuscita della cascata.
per cui il suo possibile mescolare le annotazioni di questi pacchetti (javax.persistence & org.hibernate.annotations) withing un @Entity – Schildmeijer
voi puoi usare le entità jpa quando vuoi lavorare con le funzioni di ibernazione.nella mia esperienza non puoi combinare jpa/hibernate tra tutte le tue entità. – dseibert