该项目基于Struts2
我正在使用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菜单?