1

Thera には、オーバーライドしたいモジュール内の翻訳がいくつcom.liferay.plugins.admin.webかあります。com.liferay.portal.instances.web他のモジュールでは、このチュートリアルに成功しました: https://dev.liferay.com/develop/tutorials/-/knowledge_base/7-0/overriding-a-modules-language-keys

この場合、com.liferay.plugins.admin.webモジュールには、クラス プロパティで必要な servlet.context.name がありません。この翻訳を無効にする方法はありますか? 事前に助けてくれてありがとう!

4

1 に答える 1

0

The best solution is to create a translation module which extends from ResourceBundle:

package com.galian.extranet.resourcebundle;
import com.liferay.portal.kernel.language.UTF8Control;

import java.util.Enumeration;
import java.util.ResourceBundle;

import org.osgi.service.component.annotations.Component;

/**
 * @author
 *
 */
@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);

}

Your module project structure will be like this:

enter image description here

于 2017-07-20T15:29:12.133 に答える