2013-09-16 52 views
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製作菜單?

回答

1

嘗試

<s:property value="%{#attr.menuName}" /> 

不知道有關XML,但你可以從sj:menu標籤建立菜單

相關問題