必需部署上下文不适用于Liferay 6.2?

时间:2015-10-20 10:35:33

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

我已经读过在我的文件中指定一个required-deployment-contexts条目 liferay-plugin-package.properties文件会在我的portlet WEB-INF / lib中执行自动服务jar复制过程。

我无法解决这个问题:

我有Portlet A和Portlet B.

我希望Portlet B使用Portlet A的服务,而不必将服务JAR复制到我的服务器ext / lib目录。我读到指定这样的required-deployment-contexts会有所帮助我:

ReturnValues("Employeenumber")

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

我正在使用Liferay 6.2 CE GA4 有人提出任何建议吗?

1 个答案:

答案 0 :(得分:2)

您可以检查您的jar服务是否被称为“A-portlet-service.jar”。

确实Liferay复制jar只有名称是“required-deployment-contexts-value”-service.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;
}