我試圖從Liferay門戶使用代理調用Web服務。我已經成功地在IBM WebSphere Portal中這樣做,這樣的(援引 '幫助'):使用代理從Liferay門戶調用Web服務
<portal_context_path>/proxy/http/<server_url>/<application_name>/help?lang=myLang&object=myObject
我使用AJAX撥打電話:
try {
$.ajax({
url: 'http://localhost:8080/LiferayTest-portlet/proxy/http/localhost:9081/ServiceApp/help?lang=myLang&object=myObject',
headers: {
'Accept': 'application/xml; charset=utf-8',
'Content-Type': 'application/xml; charset=utf-8'
},
success: function(xml) {
...
},
error: function(xhr, textStatus, errorThrown) {
...
}
});
} catch (e) {
...
}
的事情是,如果我做ajax在Liferay門戶上調用時,出現錯誤(404未找到),但是如果我從WebSphere門戶(URL:http://localhost:10039/.WebSphereTest/proxy/http/localhost:9081/ServiceApp/help?lang=myLang&object=myObject
)調用它,它將起作用。
是否有類似的方法(如使用/proxy/http
)在Liferay門戶上完成此操作?
非常感謝您的回覆。我還通過一些關於我的問題的更多信息更新了我的問題。是的,這是你提到的第一個案例。我通過代理呼叫'外面的東西'。但是我不太明白,如何使Liferay門戶網站的URL('proxy/http/localhost:9081/ServiceApp/help?lang = myLang&object = myObject')工作。 – peterremec
看到我添加的段落 –
非常感謝你,你的建議是非常有益的! – peterremec