2011-02-15 148 views
5

我開發了一個使用struts-2.4.3和Struts 2的菜單。它工作正常,但我需要從屬性文件(路由器消息)中獲取菜單的標題。屬性)。整個應用程序就像這樣國際化。但它不支持struts-menu。這裏是我的menu-config.xml文件:Struts-Struts 2中的I18n

<Menu name="mainMenu" title="" > 
      <Item name="ecfMenu" title="ECFs" roles="FISCO" location="DisconnectedEcfsSearch" /> 
      <Item name="reportsMenu" title="Relatórios" roles="ADMIN" location="AlarmReportSearch"/> 
      <Item name="fiscoMenu" title="Fisco" roles="ADMIN" location="UpdateFiscoForm"/> 
      <Item name="alarmMenu" title="Alarmes" roles="ADMIN" location="AlarmNotification"/> 
      <Item name="userMenu" title="application.header.users" roles="ADMIN" location="UserSearch"/> 
      <Item name="consoleMenu" title="Console" roles="FISCO" location="ConsoleSearch"/> 
     </Menu> 

請注意,我正在嘗試使用項目'userMenu'中的屬性文件中的一個鍵。所有其他項目的工作,但不是這一個。

這裏是我的jsp:

<menu:useMenuDisplayer permissions="rolesAdapter" name="Velocity" 
     config="/WEB-INF/tabs.html"> 
     <menu:displayMenu name="mainMenu" /> 
    </menu:useMenuDisplayer> 

我搜索周圍,甚至發現了同樣的問題,一個人,但對他來說沒有任何反應。 =/

有沒有人知道如何使struts-menu識別出我正在使用屬性文件的鍵而不是字符串?

謝謝!

+1

請考慮加入STRUTS-USER郵件列表:http://struts.apache.org/mail.html如果您首先得到答案,那麼如果您可以在此發佈答案,將會很有趣。 – Quaternion 2011-02-16 17:16:00

回答

0

試試這個:

有關的menu-config.xml:

<Menu name="mainMenu" title="" > 
     <Item name="userMenu" title="application.header.users" roles="ADMIN" location="UserSearch"/> 
</Menu> 

對於JSP:

使用此:

<%@ taglib prefix="menu" uri="http://struts-menu.sf.net/tag-el"%> 

代替這個:

<%@ taglib prefix="menu" uri="http://struts-menu.sf.net/tag"%> 

調用菜單:

<menu:useMenuDisplayer bundle="messages" permissions="rolesAdapter" name="Velocity" 
     config="/WEB-INF/tabs.html"> 
     <menu:displayMenu name="mainMenu" /> 
</menu:useMenuDisplayer> 

對於包= 「信息」 提供的資源包的名稱。

我希望它適合你!