2012-01-15 47 views
1

有誰知道這些步驟,以便在遇到localhost:8080/my-portlet/jsonws時顯示我們自己的portlet的服務構建器實體和方法?我所有的實體都是遠程服務註釋的。 @JSONWebService在我所有的類上。我已經向web.xml添加了一大塊XML(每http://www.liferay.com/community/wiki/-/wiki/Main/JSON+Web+Services - 非常好的wiki)。但我沒有看到任何事情發生。Liferay 6.1 portlet:部署時無法獲得JSONWebService掃描

我可以瀏覽到http://localhost:8080/api/jsonws並查看門戶的 JSON方法。

我錯過了一個設置?是否需要一些額外的配置?

謝謝。

回答

1

它一定是一些miss-configuration :)讓我重複這裏的步驟。

安裝的Liferay 6.1 CE GA1嘗試,如果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> 

構建戰爭並部署門戶到Liferay。片刻之後,portlet將被部署並可用。 JSONWS將掃描你的類並找到所有的服務方法。要測試一切是否正常,請訪問:http://localhost:8080/*portlet-context*/api/jsonws

這就是所有:)