Проблема при доступе к данным сеанса с использованием тега свойств struts2

Я сталкиваюсь с проблемой при доступе к данным сеанса в jsp с использованием тега свойств struts2 только в первый раз, если я перехожу на другую страницу и возвращаюсь, тогда данные сеанса назначаются нормально. Используя скрипты jsp в jsp, он отлично работает каждый раз в первом случае.

Код класса действия, используемый для установки данных сеанса:

     HttpSession httpSession = ServletActionContext.getRequest().getSession();
     httpSession.setAttribute("userName","User1");

Код JSP для чтения данных сеанса в переменной JS:

     var userName = '<s:property value="#session['userName']"/>';
     var userName1 = '<%=session.getAttribute("userName").toString()%>';

Просмотр исходного вывода после загрузки страницы в первый раз:

     var userName = '';
     var userName1 = 'User1';      

Просмотр исходного вывода после загрузки страницы во второй раз:

     var userName = 'User1';
     var userName1 = 'User1';  

Если это из-за неправильного синтаксиса, то после второй перезагрузки он также не должен работать, если из-за того, что сеанс не включен на странице jsp, тогда session.getAttribute не должен приносить результат в первый раз. Может ли кто-нибудь помочь мне понять, почему это ведет себя так, есть ли что-то, что я упускаю или делаю неправильно.

Спасибо,


person Vinay    schedule 14.10.2014    source источник
comment
stackoverflow.com/a/14651614/573032   -  person Roman C    schedule 14.10.2014
comment
Также прочитайте это: stackoverflow.com/a/19540712/1654265   -  person Andrea Ligios    schedule 15.10.2014