Во время обновления сущность с каркасом редактора дважды выбирает из вызовов БД.Может быть, это не проблема, а особенность фреймворка Editor?
Вот фрагмент кода:
public class UserActivity extends BasicActivity<UserActivity.Display> {
...
interface Driver extends RequestFactoryEditorDriver<UserProxy, UserPanel> {
}
private UserProxy user;
private Driver driver;
@Inject
private Provider<UserRequestContext> userContextProvider;
...
@Inject
public UserActivity(EventBus eventBus, Display display, PlaceController placeController, WmsRequestFactory requestFactory) {
super(display, eventBus, placeController);
driver = GWT.create(Driver.class);
driver.initialize(requestFactory, (UserPanel) display);
}
...
@Override
protected void onBind() {
UserRequestContext userRequestContext = userContextProvider.get();
userRequestContext.updateUser(user);
driver.edit(user, userRequestContext);
registerHandler(display.getSaveButton().addClickHandler(
new ClickHandler() {
public void onClick(ClickEvent event) {
RequestContext context = driver.flush();
// Check for errors
if (driver.hasErrors()) {
display.getStatus().setHTML(
"<b>Errors detected locally</b>");
return;
}
// Send the request
context.fire();
}
}));
...
Вывод из спящего режима после нажатия кнопки сохранения:
[INFO] Hibernate: select user0_.ID as ID1_0_, user0_.CREATED as CREATED1_0_, user0_.MODIFIED as MODIFIED1_0_, user0_.version as version1_0_, user0_.BIRTH_DATE
as BIRTH5_1_0_, user0_.EMAIL as EMAIL1_0_, user0_.FIRST_NAME as FIRST7_1_0_, user0_.LAST_NAME as LAST8_1_0_, user0_.LOGIN as LOGIN1_0_, user0_.PASSWORD as PASS
WORD1_0_ from USER user0_ where user0_.ID=?
[INFO] Hibernate: select user0_.ID as ID1_0_, user0_.CREATED as CREATED1_0_, user0_.MODIFIED as MODIFIED1_0_, user0_.version as version1_0_, user0_.BIRTH_DATE
as BIRTH5_1_0_, user0_.EMAIL as EMAIL1_0_, user0_.FIRST_NAME as FIRST7_1_0_, user0_.LAST_NAME as LAST8_1_0_, user0_.LOGIN as LOGIN1_0_, user0_.PASSWORD as PASS
WORD1_0_ from USER user0_ where user0_.ID=?
[INFO] Hibernate: update USER set MODIFIED=?, version=?, BIRTH_DATE=?, EMAIL=?, FIRST_NAME=?, LAST_NAME=?, LOGIN=?, PASSWORD=? where ID=? and version=?
Это нормально?