struts2的标签是使用OGNL表达式语言访问数据,OGNL使用的是Context包含对象,
而Context的根对象就是ValueStack,所以对于ValueStack中的属性可以直接访问。如下:
[b]对于根对象:[/b]
ValueStack中有属性name,则访问形式为:${name},使用struts2标签:<s:property value="name" />
但这种形式是不行的:<s:property value="${name}" />,
将报错:
According to TLD or attribute directive in tag file, attribute value does not accept any expressions
这是因为struts2标签将其认为是el标签,而struts2标签不接受el标签。
[b]对于上下文对象:[/b]
ValueStack中有属性name,则访问形式为:${name},
使用struts2标签:
<s:property value="#request.name" />
或
<s:property value="#session.name" />
本文引用地址:
[url]http://blog.163.com/xian_zx@126/blog/static/11753178320091129105959114/[/url]
-
而Context的根对象就是ValueStack,所以对于ValueStack中的属性可以直接访问。如下:
[b]对于根对象:[/b]
ValueStack中有属性name,则访问形式为:${name},使用struts2标签:<s:property value="name" />
但这种形式是不行的:<s:property value="${name}" />,
将报错:
According to TLD or attribute directive in tag file, attribute value does not accept any expressions
这是因为struts2标签将其认为是el标签,而struts2标签不接受el标签。
[b]对于上下文对象:[/b]
ValueStack中有属性name,则访问形式为:${name},
使用struts2标签:
<s:property value="#request.name" />
或
<s:property value="#session.name" />
本文引用地址:
[url]http://blog.163.com/xian_zx@126/blog/static/11753178320091129105959114/[/url]
-