在一个JSP页面中,我包含另一个JSP页面并传递一个参数:
<jsp:include page="/WEB-INF/somepage.jsp" flush="true">
<jsp:param name="location" value="menu"/>
</jsp:include>
在包含的页面中,我可以使用EL访问参数.这有效:
${param.location}
但我不能使用OGNL等效来获得相同的参数.这些都不起作用:
#parameters.location
#parameters['location']
%{#parameters.location}
%{#parameters['location']}
我知道有一个使用< s:set var =“location”> ${param.location}< / s:set>的解决方法.或< c:set var =“location”> ${param.location}< / c:set>然后使用OGNL:#location但我想避免这种情况.我也不想使用scriptlet.
最佳答案 相当于include标记的Struts2是< s:include,这是你应该在代码中替换的内容,然后应用< s:param来对它进行参数化.
<s:include value="/WEB-INF/somepage.jsp">
<s:param name="location" value="menu"/>
</s:include>
之后你可以使用OGNL.