Liferay 4.2到5.2升级问题:如何在Liferay 5.2中预部署portlet

时间:2009-06-05 10:35:29

标签: liferay

我们正在从Liferay 4.2升级到Liferay 5.2.2。我们正在使用EXT环境。以前,在4.2中有一个名为/ ext / portlets的目录。根据4.2 doc,

“从/ ext目录运行ant deploy目标时,放置在此目录中的Portlet将自动部署到应用程序服务器”

是否存在相应的5.2?

起初我虽然/ ext / modules可以解决问题,但看起来/ modules中的构建文件只是解开我的portlet war文件。这不足以部署portlet,因为Liferay需要在我的portlet的WEB-INF中扩充web.xml以插入servlet映射标记。

为了进行比较,4.2的/ ext / portlets目录下的构建文件将调用com.liferay.portal.tools.PortletDeployer并将我的war文件作为参数传递。

我环顾四周,PortletDeployer仍然存在于5.2代码库中。它现在位于com.liferay.portal.tools.deploy中,但不会从构建文件中调用它。 。我想知道这是否意味着在5.2 Liferay中不再有预先部署portlet的方法。 Liferay是否必须启动并运行才能在5.2中部署?

1 个答案:

答案 0 :(得分:3)

如果您的portlet捆绑为战争,并且不需要在与Liferay相同的Web应用程序中运行,只需将您的战争放在liferay deploy dir中。此目录在portal-ext.properties文件中定义,并覆盖

的捆绑portal.properties文件定义
auto.deploy.deploy.dir=${liferay.home}/deploy

在启动时,Liferay扫描此目录并安装任何找到的“插件”(portlet,主题,布局,钩子......)。 您可能对portlet和主题创建的plugins SDK感兴趣,因为它可以帮助您分离portlet开发和核心门户扩展。 您还应该注意主题,可能需要迁移才能符合4.3 onward themes

相关问题