还是那句话, 这两天在倒腾struts2, 而且用上了displaytag.
如果光是使用displaytag, 问题不大.
但是, 有这样一个问题. 一个List, model有个属性指向了一个Dictionary的id.
1. Dictionary是在application中保存着.
2. Display要显示的List中, 每个Item有一个属性是指向了Dictionary的bean的id.
问题来了,
我在Displaytag中, 用jstl和struts的tag输出都没有问题, 但是Displaytag中直接用struts2 tag就有问题了.
比如 (假设item中有一个字段名字为type):
1) 你在Dispalytag中指定了uid="item"
2) 在<display:column/>中, 直接用c tag or s tag输出, 都没有问题. <s:property value="#attr.item.type"/> or <c:out value="${item.type}"/>.
3) 但是, 如果合起来就有问题了. 如果在<display:column/>中, 使用struts2 tag, 比如<s:property value="#application.globalTypes[#attr.item.type]"/>, 这就有问题了.
不知道是不是struts2 tag的问题, 没法在tag中使用两次#.