我在第一次使用struts2属性标签访问jsp中的会话数据时遇到问题,如果我转到另一个页面并返回,则会话数据分配正常。 通过在jsp中使用jsp scriplets,它在第一个实例中也可以正常工作
用于设置会话数据的操作类代码:
HttpSession httpSession = ServletActionContext.getRequest().getSession();
httpSession.setAttribute("userName","User1");
用于读取JS变量中的会话数据的JSP代码:
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不应该在第一次带来结果。 任何人都可以帮助我理解为什么这样做会有任何我遗漏或做错的事情。
谢谢,