2015-12-02 5 views
0

Прямо сейчас я должен вызвать JPA merge() в конце моего метода обслуживания, чтобы сохранить изменения. Я делаю это, потому что наши сервлеты не запускают транзакцию до запуска Locator.find(). Они начинают их позже в методе обслуживания.Должен ли метод GWT RequestFactory Locator ожидать присоединения или отсоединения передаваемого объекта JPA?

Я знаю, что RequestFactory использует мой Locator find() и обновляет объект на основе того, что клиент отправил на сервер, поэтому мне просто интересно, может быть, этот объект должен быть прикрепленным объектом и, следовательно, позволить JPA обрабатывать изменения «естественно», а не явно называть merge().

Возможно, это зависит от ситуации?

ответ

1

Я не знаю, JPA много, но я подтверждаю, что вы ДОЛЖНЫ сферы ваших сделок к вашим методам обслуживания: а RequestContext является партией запросов, каждый может добиться успеха или терпит неудачу независимо, помещая их все в единичные транзакции нарушат этот принцип. Существуют также случаи, когда можно вызвать ваш Localor#find, изменения, применяемые к сущности, но затем объект никогда не передается ни одному методу службы: вы не хотите, чтобы изменения сохранялись в этом случае.