Я пытаюсь использовать RequestFactory, но у меня возникают проблемы с изменением существующих записей. Я продолжаю получать org.hibernate.PersistentObjectException: отдельный объект, переданный для сохранения, хотя я не понимаю, что не так.
У меня есть следующий класс:
@Service(Product.class)
public interface ProductRequest extends RequestContext {
Request<Long> countProducts();
Request<ProductProxy> findProduct(Long id);
Request<List<ProductProxy>> findAllProducts();
InstanceRequest<ProductProxy, Void> persist();
InstanceRequest<ProductProxy, Void> remove();
}
У меня есть функция, которая перечисляет все продукты (полученные через findAllProducts()), а затем я хочу изменить один продукт. Для этой цели я использую следующий код:
public void changeProductDetails(ProductProxy prod) {
ProductRequest newProductRequest = MyApplication.getRequestFactory().productRequest();
ProductProxy editedProduct = newProductRequest.edit(prod);
editedProduct.setPurpose("new purpose string");
newProductRequest.persist().using(editedProduct).fire(new Receiver<Void>() {
@Override
public void onSuccess(Void arg0)
{
System.out.println("Product changed");
}
});
}