【问题标题】:Liferay 6.1 portlet: cannot get JSONWebService scans to happen when I deployLiferay 6.1 portlet:部署时无法进行 JSONWebService 扫描
【发布时间】:2013-03-26 01:28:23
【问题描述】:

有谁知道在点击 localhost:8080/my-portlet/jsonws 时我们自己的 portlet 的服务构建器实体和方法出现的步骤?我所有的实体都带有远程服务注释。 @JSONWebService 在我的所有课程中。我在 web.xml 中添加了一大块 XML(根据 http://www.liferay.com/community/wiki/-/wiki/Main/JSON+Web+Services - 否则是一个非常好的 wiki)。但我没有看到任何事情发生。

我可以浏览到http://localhost:8080/api/jsonws 并查看门户的 JSON 方法。

我错过了一个设置吗?是否需要一些额外的配置?

谢谢。

【问题讨论】:

    标签: liferay


    【解决方案1】:

    这一定是一些错误配置:) 让我在这里重复这些步骤。

    安装 Liferay 6.1 CE GA1 后,通过访问以下 url 来尝试 JSONWS api 是否可见:http://localhost:8080/api/jsonws 和(例如):http://localhost:8080/knowledge-base-portlet/api/jsonws

    现在,使用最新的 Liferay SDK 创建您的 portlet。在 *ServiceImpl 中至少创建一个服务方法。运行服务生成器

    在 portlet web.xml 中添加以下代码:

    <servlet>
        <servlet-name>JSON Web Service Servlet</servlet-name>
        <servlet-class>com.liferay.portal.kernel.servlet.PortalClassLoaderServlet</servlet-class>
        <init-param>
            <param-name>servlet-class</param-name>
            <param-value>com.liferay.portal.jsonwebservice.JSONWebServiceServlet</param-value>
        </init-param>
        <load-on-startup>0</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>JSON Web Service Servlet</servlet-name>
        <url-pattern>/api/jsonws/*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>JSON Web Service Servlet</servlet-name>
        <url-pattern>/api/secure/jsonws/*</url-pattern>
    </servlet-mapping>
    

    构建战争并最终将 portlet 部署到 Liferay。片刻之后,portlet 将被部署并可用。 JSONWS 将扫描您的类并查找所有服务方法。要测试一切是否正常,请访问:http://localhost:8080/*portlet-context*/api/jsonws

    就是这样:)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-12
      • 1970-01-01
      • 2012-09-10
      • 2022-01-24
      • 2013-05-04
      相关资源
      最近更新 更多