【问题标题】:required-deployment-contexts not working for Liferay 6.2?所需的部署上下文不适用于 Liferay 6.2?
【发布时间】:2015-10-20 10:35:32
【问题描述】:

我已经阅读了在我的 liferay-plugin-package.properties 文件会自动将 service-jar 复制到我的 portlets WEB-INF/lib 中。

我无法让它工作:

我有 Portlet A 和 Portlet B。

我希望 Portlet B 使用 Portlet A 的服务,而不必将服务 JAR 复制到我的服务器 ext/lib 目录。 我读到像这样指定所需的部署上下文会有所帮助我:

required-deployment-contexts=A-portlet

至少对我来说它不起作用。服务 - JAR 文件没有被复制,因此我的 B-Portlet 不能使用我的 A-Portlet。

我正在使用 Liferay 6.2 CE GA4 任何人的任何建议?

【问题讨论】:

标签: liferay liferay-6 liferay-6.2 liferay-service-builder


【解决方案1】:

你能检查一下你的jar服务是否叫做“A-portlet-service.jar”吗?

仅当名称为“required-deployment-contexts-value”-service.jar 时才真正复制 jar

您可以查看 PluginsEnvironmentBuilder 类的代码:

protected List<String> getRequiredDeploymentContextsJars(
        File libDir, Properties properties)
    throws Exception {

    List<String> jars = new ArrayList<String>();

    String[] requiredDeploymentContexts = StringUtil.split(
        properties.getProperty("required-deployment-contexts"));

    for (String requiredDeploymentContext : requiredDeploymentContexts) {
        if (_fileUtil.exists(
                libDir.getCanonicalPath() + "/" +
                    requiredDeploymentContext + "-service.jar")) {

            jars.add(requiredDeploymentContext + "-service.jar");
        }
    }

    return jars;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-19
    • 2014-02-18
    • 1970-01-01
    • 1970-01-01
    • 2018-12-12
    • 1970-01-01
    相关资源
    最近更新 更多