日期:2014-05-19  浏览次数:20639 次

struts2里面怎么用el表达式取值
用户登录时候,在java里面保存用户账号如下:
request.getSession().setAttribute("adminid", str);

在jsp页面取值:
<s:hidden name="adminid" value="#request.adminid"></s:hidden>
<s:hidden name="adminid" value="#session.adminid"></s:hidden>
<s:hidden name="adminid" value="#request.session.adminid"></s:hidden>
都取不到,请问怎么才能取到adminid的值。

如果我想用el表达式取,又应该怎么取。

谢谢大家。

------解决方案--------------------
${adminid}
------解决方案--------------------
Map session = ActionContext.getContext.getSession("");
session.put("adminid", str);

那么页面上就可以写成value="#session.adminid"了

至于你这个应该怎么写,可以试试value="${adminid}"
------解决方案--------------------
LZ是保存在request里面,二次请求后这个值就没了
------解决方案--------------------
你可以用%{#request.adminid}
或者用el:
${sessionScope.adminid}
------解决方案--------------------
<input type="hidden" name="account" value="${sessionScope.adminid}">
------解决方案--------------------
LZ确定在用Struts2???
Struts2里面有能这样那Session吗?
------解决方案--------------------
request.getSession().setAttribute("adminid", str);
------解决方案--------------------
struts2标签不能和el表达式共用
------解决方案--------------------
不是吧!!!
你在Sturts2的哪里调用者方法???
你的Action继承什么?
------解决方案--------------------
HttpServletRequest request = ServletActionContext.getRequest();

String a = request.getParameter("name");
这样能拿到页面上的值!


HttpSession session = request.getSession();

String s = (String)session.getAttribute("name");
这样取不到的。。。
------解决方案--------------------
%{adminid}
------解决方案--------------------
<s:hidden value="%{#session.adminid}" name="adminid" id="adminid"></s:hidden>
------解决方案--------------------
1.
request.getSession().setAttribute("adminid", str); 
<s:hidden name="adminid" value="#session.adminid"></s:hidden>

2.Struts2 是否支持EL。

struts2.1的版本中struts2标签不支持EL表达式。

------解决方案--------------------
探讨
<s:hidden value="%{#session.adminid}" name="adminid" id="adminid"> </s:hidden>

------解决方案--------------------
<s:hidden name="adminid" value="#session.adminid"> </s:hidden>
------解决方案--------------------
探讨
引用:
<s:hidden value="%{#session.adminid}" name="adminid" id="adminid"> </s:hidden>


el直接${adminid}

------解决方案--------------------
楼主别试了,在很多情况下是不成功的,我试验了好久了,也是报的和你一样的错误。尽量使用OGNL吧!