Struts 2页面包含属性标记

时间:2015-05-19 14:21:11

标签: java struts2

我使用s:include标签包含JSP页面:

<s:include value="/WEB-INF/jsp/centers/tpa/admin/users/UserEmployerAccessRow.jsp" />

我有几个我想要提供给这个包含的对象,我试图在包含发生之前将它们存储到请求中。我使用s:set标记存储到请求对象:

<s:set var="employer_tmp" value="employer" scope="request" />

到目前为止,jsp中的所有内容都按预期工作。包含的jsp无法从s:property标记访问请求中的对象。以下是我在UserEmployerAccessRow.jsp中的内容:

<s:property value="#request[employer_tmp]" />

我也是这样试过的:

<s:property value="#employer_tmp" />

通过这样做,我已经验证了对象在请求中:

<% out.println(request.getAttribute("employer_tmp")); %>

我的猜测是s:属性正在寻找Struts为请求设置的内部映射,而不是查看实际的请求对象。有没有人知道任何标记来强制s:属性从请求对象中获取某些内容?在循环中运行另一个动作似乎有点过分了。我不能使用s:param将参数传递给include,因为它只处理简单的http参数而不是对象。提前感谢您提供的任何方向!

1 个答案:

答案 0 :(得分:0)

我最终找到了问题。属性名称需要在s:property标记中引用:

<s:property value="#request['employer_tmp']" />