当前位置:编程学习 > JAVA >>

为什么提交的不是 session中的值,而是ognl表达式

<%@ page language="java"
import="java.util.*,com.opensymphony.xwork2.ActionContext"
pageEncoding="UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>

<body>


<%
request.getSession().setAttribute("recUsername", "zs");
request.getSession().setAttribute("sendUsername", "ls");
%>

<s:form action="sendMessage" namespace="/messgae" method="post">
内容:<s:textarea cols="30" rows="10" name="message.content"></s:textarea>
<br />

<s:hidden name="message.recUsername" value="#session.recUsername"></s:hidden>
<s:hidden name="message.sendUsername" value="#session.sendUsername"></s:hidden> <s:submit value="发送"></s:submit>
</s:form>
</body>
</html>
--------------------编程问答-------------------- 你这页面上哪有"OGNL表达式"?你会写ognl表达式就不会有这疑问了。 --------------------编程问答--------------------  value="#session.recUsername"直接改成value="${recUsername}"试试 --------------------编程问答-------------------- 你先别隐藏,看看你的value值是否获取到了 --------------------编程问答-------------------- value="${recUsername}"  这个也不行!  保存到数据库中就成${recUsername}了。。我想要的是 session范围的zs --------------------编程问答-------------------- 不要隐藏域能获取到。用了就不行了 --------------------编程问答--------------------

引用 5 楼 lxzhoupeng 的回复:
不要隐藏域能获取到。用了就不行了


百分号加上。。。区别字符串与ognl表达式
%{#session.recUsername} --------------------编程问答--------------------
引用 4 楼 lxzhoupeng 的回复:
value="${recUsername}"  这个也不行!  保存到数据库中就成${recUsername}了。。我想要的是 session范围的zs

strtus2的标签中不能用EL表达式 --------------------编程问答--------------------
引用 6 楼 zhyli_c 的回复:
引用 5 楼 lxzhoupeng 的回复:不要隐藏域能获取到。用了就不行了

百分号加上。。。区别字符串与ognl表达式
%{#session.recUsername}


struts2标签有两种一种是字符串表达式,一种是对象表达式。加上%{}用来区别的,字符串表达的话它就知道value中的是变量,加上%{}对对象表达式没有作用。 --------------------编程问答-------------------- 你可以去上网查查。 --------------------编程问答-------------------- value="#session.recUsername"直接改成value="${sessionScope.recUsername}"试试 --------------------编程问答-------------------- 也可能和楼主用的标签用关系。我项目中一直用的就是HTML的原始标签这种封装没有任何问题。 --------------------编程问答-------------------- session和request优先级导致,request优先级高于session,你上边的赋值是在session中,下边的是虽然后台外表用的是ognl但其实还是request中的 --------------------编程问答--------------------
引用 6 楼 zhyli_c 的回复:
引用 5 楼 lxzhoupeng 的回复:不要隐藏域能获取到。用了就不行了

百分号加上。。。区别字符串与ognl表达式
%{#session.recUsername}

+1,记住struts2中不能使用el。 --------------------编程问答-------------------- 百分号加上。。。区别字符串与ognl表达式
%{'#session.recUsername'}试试
补充:Java ,  Web 开发
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,