Liferay 未部署Portlet

Liferay 未部署Portlet,liferay,liferay-6,Liferay,Liferay 6,我有一个奇怪的问题,我花了很多愚蠢的时间。 为了构建我的portlet,我没有使用sdk,我正在使用我自己的ant脚本来完成这项工作。在这种情况出现之前,一切都很顺利 我基本上是使用portal-service.jar中的lot类来更改角色设置等,当我将它包括在构建路径中并再次部署它时。它没有被部署。在shell上,它显示了部署,下面是日志: 正在将1个文件复制到C:\liferay portal\tomcat-6.0.29\webapps\ch1\u HelloWorld 正在删除目录C:\l

我有一个奇怪的问题,我花了很多愚蠢的时间。 为了构建我的portlet,我没有使用sdk,我正在使用我自己的ant脚本来完成这项工作。在这种情况出现之前,一切都很顺利

我基本上是使用portal-service.jar中的lot类来更改角色设置等,当我将它包括在构建路径中并再次部署它时。它没有被部署。在shell上,它显示了部署,下面是日志:

正在将1个文件复制到C:\liferay portal\tomcat-6.0.29\webapps\ch1\u HelloWorld

正在删除目录C:\liferay portal\tomcat-6.0.29\temp\20121016060846753

06:08:47887信息[PortletAutoDeployListener:81]C:\liferay portal\tomcat-6.0.29\deploy\ch1\u HelloWorld.war的portlet复制成功

部署将在几秒钟后开始。 2012年10月16日上午6:08:56 org.apache.catalina.startup.HostConfig checkResources

信息:重新加载上下文[/ch1\u HelloWorld]


就这样!稍后,它不会显示(与正常情况一样)portlet可供使用。在浏览器中的“添加选项卡”下,永远不会显示该选项。这可能是什么问题。portlet是一个简单的hello world portlet,用于访问角色信息

从webapps中删除旧war,并手动将新war放入Deploy文件夹


看起来您可能是通过将其复制到webapps文件夹而不是部署来进行部署的?

在liferay-display.xml中是否正确设置了此选项

<display>
    <category name="yourCategoryUnderAddMenu">
        <portlet id="yourPortletId"></portlet>
    </category>
</display>

我基本上是使用portal-service.jar中的lot类来更改角色设置等,当我将它包括在构建路径中并再次部署它时。它没有被部署。在shell上,它显示了部署,下面是日志:

您是否将portal-service.jar放入WEB-INF/lib?如果是这样的话,将其从那里删除并添加到其他(my_project/lib)目录,而不是添加到构建路径

还要确保部署后portal-service.jar不在部署的WEB-INF/lib中。
最好先取消部署,而不是重新部署。

稍后再回答,但这可能会帮助某些人:

- just shutdown your server; - delete the portlet from the "webapps" tomcat folder; - you should delete "temp" and "work" folders content; - restart your server and deploy your portlet. -只需关闭服务器; -从“webapps”tomcat文件夹中删除portlet; -你应该删除“临时”和“工作”文件夹的内容; -重新启动服务器并部署portlet。 一切都会好起来的。 我不知道为什么会发生这种情况,但我多次遇到这个问题,并用相同的解决方案解决了它


再见

auto.deploy.dest.dir
指向错误位置时,通常会出现这种情况。首先,我意识到常见的错误是将这一点指向
liferay\u home/deploy
,这是不正确的。此属性指定分解文件的目标。对于tomcat,它将是webapps目录,例如
/opt/liferay-portal-6.2-ce-ga2/tomcat-7.0.42/webapps

换言之,tomcat在接收到分解的文件后会继续。在您的情况下,tomcat从未意识到任何更改。

转到插件sdk文件夹。 打开build.userName.properties(在我的例子中,文件名是build.asif.properties) 打开它。。 添加下面的行

auto.deploy.dir=D:\\n工作空间\\liferay-portal-6.2.0-ce-ga1\\deploy

“D:\nWorkSpace\liferay-portal-6.2.0-ce-ga1\deploy”是我的部署目录的路径


其中nWorkSpace是我的工作区。我的问题是解决。

我尝试了上述所有解决方案,但在Liferay 6.2 EE sp2捆绑包上我的问题没有得到解决

通过清除Tomcat home/conf/Catalina/localhost文件夹中除ROOT.xml之外的所有portlet xml文件,我终于能够解决portlet部署问题

下面的文章提供了上面的技巧——如何让博客文章不再存在,并且必须通过谷歌搜索在下面的档案中查找,以防有人感兴趣。这节省了我几个小时的精力


我是否正确理解您的portlet是正常部署的,然后可以工作,但没有显示在“添加>更多…”菜单中?是的!“添加”选项卡中未显示此问题事实上webapps中的文件夹是完美的。如果您尚未尝试答案中提到的方法,此问题“”和可能会对您有所帮助:-)您可以发布您的ant脚本吗?谢谢,我会尝试。目前在我的构建路径中,我已经将它直接链接到tomcat/lib/ext中的jar。这会有什么问题吗?如果您这样做没有问题,只需确保您的WEB-INF/lib中没有portal-service.jar的副本。(在project和tomcat/webapps/my_project/WEB-INF/lib中)。您能否列出您在成功部署和当前问题之间所做的更改(除了portal service.jar),如果有的话,这是“Portlet in Action”中的“ch1_HelloWorld”吗?如果是这样,您只是添加了“portal service.jar”并使用了一些liferay服务?请确切地告诉我您使用的是哪个版本的Liferay。