0

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

如果我在独立模式下启动 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)

有任何想法吗?谢谢。

4

1 回答 1

1

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

您可以使用本文中描述的 java option element config 覆盖您需要的所有参数,尤其是与 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>

在启动时,部署文件夹服务器的属性将附加绝对路径,请尝试使用此或其他参数。此解决方法将解决与此类问题相关的另一个问题。

于 2013-02-01T20:14:51.007 回答