WebSphere Commerce - как работает ReLogonFormView / Session Expiration? - PullRequest
3 голосов
/ 18 октября 2011

Извините за широкую тему. По сути, WSC должен иметь готовую обработку тайм-аута сеанса, перенаправляя пользователя в ReLogonFormView, который пользователь может предположительно сконфигурировать (через Struts) для любого jsp, который он выберет. Мы используем пользовательскую команду выхода из системы, и, похоже, это влияет на отображение этого представления.

Я не ищу конкретного решения этой проблемы, я просто ищу общие сведения о том, как WSC (v6) обрабатывает тайм-ауты сеанса (как он определяет, что тайм-аут сеанса) и какие команды он запускается по умолчанию, когда / если /, чтобы определить, истек ли сеанс.

1 Ответ

5 голосов
/ 21 марта 2012

Это мои текущие знания по этому предмету ...

Тайм-аут сеанса является глобальным значением для всех веб-модулей и может быть найден в wc-server.xml и имеет значение 30 минут OOTB.

Когда происходит тайм-аут, обычно вызывается OOTB LogoffCmd, который устанавливает необходимые URL-адреса для перехода к URL-адресу ReLogonFormView, сохраняя при этом URL-адрес, на котором произошел тайм-аут сеанса.Если ReLogonFormView содержит поля идентификатора пользователя / пароля, позволяющие пользователю снова войти в систему, пользователь будет перенаправлен обратно на страницу, на которой он первоначально находился.

Дополнительную информацию можно найти в IBM InfoCenter в разделе "LoginTimeout".

Если вы расширяете OOTB LogonCmdImpl, вам не следует пытаться установить URL-адрес переадресации, или это будет мешать навигации OOTB.

Я думаю, что вы должны выполнить пользовательские функции выхода из системы, а затем вызватьsuper.performExecute (), чтобы позволить логике навигации OOTB вступить во владение.Примечание. Вы можете получить URL-адрес, на котором вы изначально находились, с помощью вызова getReferrerURL (), и функция getLL должна быть возвращена из getURL ().

...