2016-11-28 87 views
1

我想覆蓋一些Liferay的模塊tranlations。我正在休耕:https://dev.liferay.com/develop/tutorials/-/knowledge_base/7-0/overriding-a-modules-language-keys無法覆蓋tranlations(journal-lang)

它的作品,但不是所有的字符串。首先我想重寫journal-lang模塊中的一些字符串(com.liferay.journal.lang),但是這個模塊沒有servlet上下文名稱。我試圖跳過,但它不起作用。我怎樣才能重寫這些字符串?

我也試圖重寫一些核心字符串(來自portal-impl),但其中一些仍未翻譯。例如「定義新表單視圖」中的「添加字段」(添加字段)。任何可能的解

回答

0

journal-lang是一種語言組件。爲了覆蓋它們中的某些字符串,您必須爲包com.liferay.journal.webcom.liferay.journal.service創建一個組件。

0

你與擴展資源包

@Component(immediate = true, property = { "language.id=en_US" }, service = ResourceBundle.class) 
public class DefaultCustomResourceBundle extends ResourceBundle { 

    @Override 
    public Enumeration<String> getKeys() { 
     return _resourceBundle.getKeys(); 
    } 

    @Override 
    protected Object handleGetObject(String key) { 
     return _resourceBundle.getObject(key); 
    } 

    private final ResourceBundle _resourceBundle = ResourceBundle.getBundle("content.Language", UTF8Control.INSTANCE); 

} 

這應該重寫翻過門戶翻譯創建CustomResourceBundle。