/ / Як ми можемо синхронізувати HttpSession в Javascript - java, javascript, el

Як ми можемо синхронізувати HttpSession у Javascript - java, javascript, el

Мій JSP містить код JavaScript, який включає дві функції Однією з функцій є виклик сервлета

ie.window.showModalDialog ("mams.openAndSave", ...........)

для відкриття звіту та встановлення значення в HttpSession.

І Інша функція використовує отримання значення сеансу, встановленого раніше, використовуючи мову вираження

ie.dataToSave = "$ {sessionScope.executionFilePath}";

але тут dataToSave змінна не була ініціалізована під час подання форми. Наведені вище функції динамічно називаються за допомогою посилання, наданого в JSP.

Будь-хто знає рішення цього запиту, будь ласка, дайте відповідь

Відповіді:

0 для відповіді № 1

Перш за все, вам потрібно контролювати потік вашого дзвінка Javascript. Ви можете прочитати про <body onload="myFunction()"> і document.ready функції для управління викликами функцій javascript.Ви не можете безпосередньо отримати доступ до об’єктів сеансу, використовуючи безпосередньо javascript на стороні клієнта. До об'єктів сеансу можна отримати доступ за допомогою виклику ajax до сервлету або будь-яких програм на стороні сервера. Таким чином, сервлет отримує доступ до HttpSession, встановлює значення атрибута, отримує значення атрибута і повертає його клієнту. HttpSession за замовчуванням не є безпечним для потоків. отже, ви можете зробити його безпечним для потоку, заблокувавши об’єкт сеансу в сервлеті або програмі на стороні сервера, як показано нижче

HttpSession session=request.getSession();
synchronized(session)
{
//setAttributes in the session object
//getAttributes from the session object
}

Сподіваюся, це допоможе