struts2 ognl 前台取值的小问题,高手进来看看

后台做了一个测试对象publicclassTest{privateDepartdepart;getset略}publicclassDepart{privateString... 后台做了一个测试对象
public class Test {
private Depart depart;
getset略
}
public class Depart {
private String sysid;
private String departname;
private String remark;
getset略

test对象封装好之后,通过如下方法放入堆栈
ActionContext.getContext().getValueStack().set("test", test);

问题是,前台如何取到test对象下depart对象的属性值
如果是test的直接属性,我会取,直接<s:property value="%{test.属性名}" />
现在是 test 下对象的属性,该怎么取?试了value="%{test.depart.属性名}"
以及value="%{#test.depart.属性名}"都没有效果
求助!!!
去掉是无效的,去掉直接显示""内部的文字 test.属性名 test.depart.属性名
%{}就是为了避免被当做字符串解析而使用的
展开
 我来答
充秋梵玉IH
2011-11-23 · 超过26用户采纳过TA的回答
知道答主
回答量:139
采纳率:0%
帮助的人:77.7万
展开全部
你把属性放到了valueStack中,你可以试试用EL表达式来求值
或者你试试这个test.depart.属性名 在值栈中的对象应该可以直接取到的
你干嘛一定放到值栈中放到上下文中也是可以的ActionContext.getContext().put("test",test);这样之后直接用#test.depart.属性名或者${requestScope.test.depart.属性名},应该也是可以的
能不能成功 成功告诉我一声
cjl1074214609
2011-11-23
知道答主
回答量:51
采纳率:100%
帮助的人:29.3万
展开全部
这两个兄弟说的很对,存在值栈中的值,使用EL表达式获取,方法就是他们的那个方法,但是建议使用HTML标签
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友f32e7a1
2011-11-22
知道答主
回答量:7
采纳率:0%
帮助的人:2.7万
展开全部
${test.属性名}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式