2011-11-09 35 views
0

我有一個jboss縫2.2.2項目,這是我第一次使用這個框架的國際化。我已經設置了默認的語言環境,並使用全局的messages_XX.properties已經工作。 那麼,這個項目正在快速增長,爲了更好的組織和便於維護,我希望在各種屬性文件中針對特定頁面更好地組織消息。 Seam documentation on internationalization提到這一點,並在特定的一段,它說:Seam國際化2.2.2

如果要定義一個消息只是爲了某個特定頁面,您可以 具有相同的名稱爲JSF視圖id指定它在一個資源包, 刪除了前導/尾隨文件擴展名。因此,我們可以 把我們的消息在歡迎/ hello_en.properties如果我們只需要 顯示/welcome/hello.jsp中的消息

這一段,可以發現在:http://docs.jboss.org/seam/2.2.2.Final/reference/en-US/html/i18n.html#d0e14166

的文檔提到帶有.jsp擴展名的頁面,但在我的情況下,我正在使用facelets,而我擁有的是.xhtml文件,所以對於我的home.xhtml頁面,我創建了一個home_pt_BR.properties文件,該文件是pt_BR,是我的應用程序的默認語言環境,對於這個.properties文件中的特定頁面。

實際上,這種方法並不適合我。

我也嘗試在faces-config.xml和pages.xml中註冊頁面,但是這似乎不起作用。

那麼,如何配置Seam以支持我的應用程序的多個包文件?

回答

1

您可以添加包文件到components.xml

例如:

<core:resource-loader> 
    <core:bundle-names> 
     <value>messages</value> 
     <value>strings</value> 
    </core:bundle-names> 
</core:resource-loader> 
+0

我不完全相信你的建議做了,但我將在這個選項看看。你可以再詳細一點嗎?我在哪裏申報包名?是每個值標籤的一個包名稱? –

+0

嗨,我看了一下建議的aproach,實際上它不能滿足我的要求,因爲它會是proibitive和一個maintance-hell跟蹤conponents.xml文件中系統中的所有包文件。我想使每個文件的每個文件保持一個捆綁文件的方法,如seam doc建議應該工作。 –

+0

實際上,您的解決方案不能滿足我的要求,但只要它看起來像我認爲是正確的唯一解決方案。我仍然相信還有其他更簡單的方法,或者我只是錯過了關於接縫文檔的信息。 –