У меня есть метод в части ejb, который должен увеличивать простое целочисленное значение объекта и сохранять изменения в db. Я не могу заставить его работать, поскольку он печатает всегда одно и то же значение!Редактирование объекта EJB
Вот код:
public void incrementDownloads(Dispensa dispensa) {
int dl = dispensa.getDownloads();
System.out.println(dispensa.getTitolo() + " had " + dl + " downloads");
dispensa.setDownloads(dl++);
dispensaFacade.edit(dispensa);
dispensa = dispensaFacade.refresh(dispensa);
System.out.println("now it has " + dispensa.getNumDownloads());
}
где dispensaFacade
используемые методы являются одним из сгенерированного AbstractFacade
:
public void edit(T entity) {
getEntityManager().merge(entity);
}
public T refresh(T entity){
T res = getEntityManager().merge(entity);
getEntityManager().refresh(res);
return res;
}
Мой код выводит:
Название 1 было 0 загрузок
теперь имеет 0
который явно не прав!
Где ошибка?