WebSphere Commerce HttpSession Управление открытой страницей с существующим сеансом - PullRequest
0 голосов
/ 19 сентября 2018

У меня проблема с WebSphere Commerce и HttpSession.Если я закрываю страницу браузера и затем снова открываю ее, я продолжаю до последнего сеанса, до сих пор никаких проблем.Когда я делаю первый вход в систему, я отправляю свои пользовательские данные в программу для отслеживания своих действий, но если я закрываю и заново открываю страницу браузера, программа трассировки «потеряла» сеанс, и система не отправляет мои данные в программу трассировки, потому что я 'я уже вошел в систему.

Как я могу узнать, когда страница браузера открыта с существующим сеансом?

Я пытался с HttpSessionListener, реализующим методы sessionCreated и sessionDestroyed, но метод sessionCreated вызывается только тогда, когда явход в систему.

Есть идеи?Я думаю использовать Слушатель или Фильтр.

Спасибо всем!

Спасибо @Ranjith V за ответ.

Я имею в виду, я вхожу в WCS, тогда, когда я попадаю на страницу браузера, есть JS, который знает, еслиЯ только что вошел в систему, а затем отправил мои пользовательские данные (user.123456.en) во внешнюю систему.Эта система отслеживает мои действия.Когда я закрываю браузер, я теряю сеанс с внешней системой, но в WCS мой сеанс продолжается.Когда я открываю случайную страницу в WCS, как Домашнюю страницу или После продажи, я уже вошел в систему и JS не понимаю, что должно отправлять мои пользовательские данные во внешнюю систему.Мне нужно вставить переменную в сеанс, если я открываю страницу и продолжаю существующий сеанс.Проблема в том, откуда я знаю, что это новый сеанс браузера?

Существует класс Java, который проверяет, вошел ли я в систему и продолжаю ли сеанс?Если есть, я расширяю его и вставляю сюда свою переменную, и, наконец, JS знает, должна ли она отправлять данные.

Надеюсь, я проясняю себя.

Спасибо!

1 Ответ

0 голосов
/ 20 сентября 2018

Я не совсем понял, что вы пытаетесь спросить, и что вы подразумеваете под программой трассировки.Но вы можете использовать куки для идентификации сеанса

Как я могу узнать, когда страница браузера открыта с существующим сеансом?

WCS обрабатывает сеанс с использованием файлов cookie.Если вы посмотрите на запрос куки, вы знаете, аутентифицирован ли пользователь или нет.Посмотрите на приведенную ниже статью для получения дополнительной информации об обработке сеанса

https://www.ibm.com/support/knowledgecenter/en/SSZLC2_7.0.0/com.ibm.commerce.admin.doc/concepts/csesmsession_mgmt.htm

Я думаю, вам нужно будет использовать один из следующих файлов cookie

WC_SESSION_ESTABLISHED или WC_AUTHENTICATION_ID

...