2
该项目基于Struts2将参数从c:out标签传递给struts s:text标签
我正在使用XML制作动态菜单库。该XML将被解析并构建最终菜单。
的XML是:
<menus>
<menu>
<name>menu.level1.Home</name>
<action>transfer-to-account-input</action>
<namespace>transaction</namespace>
</menu>
<menu>
<name>menu.level1.Accounts</name>
<action>accounts-summary</action>
<namespace>account</namespace>
</menu>
</menus>
我使用JSTL解析XML
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<x:forEach select="$docRoot/menus/menu" var="menuvar">
<c:set var="menuName">
<x:out select="$menuvar/name" />
</c:set>
<c:out value="${menuName}"/>
<s:text name="%{menuName}" />
..... // s:url shoul also be called
</x:forEach>
的问题是,c:out
标签显示像menu.level1.Home
正确的值我通过这个参数s:text
从struts资源包获取价值。但它不起作用。
所以,问题是如何将参数从c:set
传递到s:text
?
顺便说一下,有没有更好的解决方案,从XML制作菜单?