簡體   English   中英

當第三方客戶致電我的網絡服務時致電控制器

[英]Call Controller when third party client call my web-service

我的網絡服務暴露在我的身邊,當有人點擊該網址時,我可以調用它

curl http://localhost:8080/api/jsonws/XXXXX-Portlets.foo/verify-service \

-u test@liferay.com:test \\ -d操作=''

在這里,verifyService(String action)是我在類中的方法,當有人用curl擊中該服務時,我僅以curl為例。 您也可以像下面這樣調用此服務,

http://localhost:8080/api/jsonws/XXXXX-Portlets.foo/verify-service/action/{valueOfparameter}

現在,該服務受到第三方客戶端的青睞,我想要實現的是當有人調用此Web服務時,我想用該參數更新jsp或要調用我的控制器。 我正在使用MVC模式,因此就像必須從Web服務類的方法(verifyService)調用控制器類一樣。

如果在您的情況下“ Controller”的意思是“ Portlet”(Liferay上下文表明了這一點),我會說您的體系結構有問題。 將您需要調用的代碼移動到服務上,這很自然。 使Portlet和服務使用您的可重用代碼調用相同的服務。

考慮Portlet世界中應用程序的UI。 您不會從業務(或服務)層調用UI層代碼-您將調用其UI,尤其是在潛在存在大量並發用戶的Web服務器上。

要回答您對此信息的第一條評論,我不確定您對“ CMS端點”的含義。 Liferay的API可用,由於歷史原因,CMS接口的名稱以“ Journal”開頭,因此您可以通過委托JournalArticleService等從您自己的服務中實際創建或閱讀文章。這使您可以訪問內容側,還有一個用於更改/創建頁面,向頁面添加內容等的許多不同的API。-無需通過Portlet。 Liferay的所有功能都可以通過API獲得。 在單個stackoverflow答案中,您需要多少資源以及可能太多了-請訪問https://dev.liferay.com ,以獲取有關訪問Liferay API的某些章節。 另外, 此博客文章(系列)也是一個很好的起點。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM