2012-09-04 42 views
1

我是struts2中的新成員,我想在我的web應用程序中添加i18n。我在海等文檔代碼:struts2中的I18n

<s:url id="localeEN" namespace="/" action="locale"> 
    <s:param name="request_locale">en</s:param> 
</s:url> 
<s:url id="localeruRU" namespace="/" action="locale"> 
    <s:param name="request_locale">ru_RU</s:param> 
</s:url> 
<s:a href="%{localeEN}">English</s:a> 
<s:a href="%{localeruRU}">Russian</s:a> 

,我們需要添加動作類這樣的:

public class LocalizationAction extends ActionSupport { 
    public String execute() { 
     return SUCCESS; 
    } 
} 

並在struts.xml中,我們補充一點:

<struts> 
    <constant name="struts.custom.i18n.resources" value="global"/> 
    <constant name="struts.devMode" value="true"/> 

    <package name="default" namespace="/" extends="struts-default"> 
     <action name="locale" class="by.bulgak.newsmanager.action.LocalizationAction"> 
      <result name="success">index.jsp</result> 
     </action> 
    </package> 
</struts> 

也有我屬性文件的名稱globalglobal_ru_RU

我盡我所能d來自教程,但是當我在我的jsp頁面中設置參數時,我的IDE告訴我名稱request_locale是未知屬性..

請告訴我我的錯誤在哪裏。

enter image description here

我的IDE沒有海,並這就是爲什麼當我想改變語言時,我跑我的應用我的IDE不叫在Struts2的I18n方法

+1

它工作與否,就好像我讀你的問題,它只是說有關警告,你能描述什麼是確切的問題? –

+0

不,它不工作,因爲它沒有檢測到屬性request_locale。可能是我沒有添加一些libruary?或者這個屬性存儲在struts2-core中? –

+0

*我在我的jsp頁面中設置了參數,我的IDE告訴我名稱request_locale是未知屬性.. *是來自IDE的警告?只是一個愚蠢的問題,你有沒有把'<%@ taglib prefix =「s」uri =「/ struts-tags」%>'放在你的jsp的頂部? – Pigueiras

回答

1

Struts2的不關聯使用英語的默認i18n財產。

當我設置這樣的默認屬性:property_name_en.properties它工作正常。

但我不明白爲什麼是這樣。 我看到很多例子,我甚至將它們啓動到我的機器中,它們工作正常, 但我沒有工作..可能是有人知道什麼是問題?