Я использую GWT для своего клиентского приложения. Однако я не уверен, как я могу справиться с управлением сеансами. Приложение GWT находится на одной странице, все вызовы сервера выполняются через AJAX. Если сеанс истекает на сервере. предположим, что пользователь не закрыл браузер и отправил некоторый запрос на сервер с помощью RPC, как мой сервер мог уведомить приложение о том, что срок действия сеанса и что часть клиентской стороны должна снова отобразить экран входа? Мой пример кода:
ContactDataServiceAsync contactDataService = GWT
.create(ContactDataService.class);
((ServiceDefTarget) contactDataService).setServiceEntryPoint(GWT
.getModuleBaseURL()
+ "contactDatas");
contactDataService.getContact(2,
new AsyncCallback<ContactData>() {
public void onFailure(Throwable caught) {
//code to show error if problem in connection or redirect to login page
}
public void onSuccess(ContactData result) {
displayContact(result);
}
});
Если сеанс истекает, он должен показывать экран входа в систему, иначе он хочет показать некоторую ошибку, используя Window.alert().
Как это сделать и какие коды необходимы на стороне сервера и на стороне клиента?