2013-02-01 26 views
0

我已经在域模式下在JBoss 7.1.3上部署了Liferay 6.1.1GA2,并且它工作正常。 但是现在,我对REST API可见性(liferay_url/api/jsonws)存在问题。Liferay JSON Web服务在JBoss域模式下的可见性

如果我以独立模式启动JBoss,我可以找到所有默认服务,但在域模式下,服务列表为空。启动日志显示,可以用这个问题联系起来的错误消息,因为JSON服务发现过程搜索@JSONWebService注释到类路径:

[Server:liferay] 10:30:14,466 INFO [stdout] (MSC service thread 1-4) 10:30:14,464 ERROR [MSC service thread 1-4][ClassPathUtil:173] Class com.liferay.portal.servlet.MainServlet is not loaded from a standard location (/WEB-INF/classes) 

任何想法?谢谢。

回答

1

我认为你的问题将与jboss以这种模式启动时参数的解析有关,可能是托管域中jboss服务器部署的de属性。我不知道真正的问题,但您可以尝试在host.xml配置文件中通过服务器定义一个jvm,或者将参数添加到服务器规范中。

您可以使用this article中描述的java选项元素配置覆盖所需的所有参数,特别是与jboss服务器默认文件夹的部署和数据相关的参数。

你一个可能的解决方案将是这样的:

<server name="server-one" group="main-server-group"> 
    <jvm name="default"> 
     <jvm-options> 
     <option value="-Djboss.domain.deployment.dir=/opt/jboss-7.1.3/domain/servers/server-one/content"/> 
     </jvm-options> 
    </jvm> 
    </server> 

在启动时,部署文件夹服务器的性能将与绝对路径连接,试试这个或其他参数来代替。此解决方法将解决与此类问题有关的另一个问题。