2016-11-28 5 views
1

Я хотел бы переопределить некоторые модули каналов Liferay. Я занимаюсь: https://dev.liferay.com/develop/tutorials/-/knowledge_base/7-0/overriding-a-modules-language-keysНевозможно переопределить трансаляции (journal-lang)

Это работает, но не для всех строк. Прежде всего, я хотел бы переопределить некоторые строки в модуле journal-lang (com.liferay.journal.lang), но этот модуль не имеет имени контекста сервлета. Я попытался пропустить это, но это не сработает. Как я могу переопределить эти строки?

Я также пытаюсь переопределить некоторые основные строки (из портала-impl), но некоторые из них остаются нетранслируемыми. Например, «Добавить поле» (add-field) из определения нового вида формы. Любые возможные решения?

ответ

0

journal-lang - это языковые компоненты. Чтобы переопределить некоторую строку из них, вам необходимо создать компонент для пакета com.liferay.journal.web или com.liferay.journal.service.

0

Вы имеете создать CustomResourceBundle с расширяет ResourceBundle

@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); 

} 

И это должны переопределять переводы accross портала.