我正在使用Liferay Portal 6.2 CE GA3 我需要从另一个portlet jsp文件调用我的自定义portlet资源方法。以下是我的代码。
<a href ="#" onclick="myfunction('sometext')">Click here </a>
<script>
function myfunction(myVar){
AUI().use('aui-base','aui-io-request','liferay-portlet-url','aui-node',function(A){
var url = Liferay.PortletURL.createResourceURL();
url.setPortletId("MyCustomPortletId");
url.setResourceId('saveUserData');
A.io.request(url);
});
}
&#13;
和我的自定义portlet ......
public class MyCustomPortlet extends MVCPortlet{
public void saveUserData(ResourceRequest resourceRequest,
ResourceResponse resourceResponse) throws IOException,
PortletException {
System.out.println("in save UserData");
}
render method----
}
&#13;
这里没有调用serveResource方法(在我的情况下是saveUserData)。有什么建议吗?
答案 0 :(得分:2)
您是否尝试从自己的自定义portlet调用方法,以确保调用saveUserData
方法并且没有问题?
如果不起作用,请尝试然后向前阅读; - )
当您使用Liferay的serveResource
时, serveResource
方法始终命名为saveUserData
,而不是任何其他名称MVCPortlet
。
您不能拥有多个serveResource
方法,因为您可以使用操作方法。
因此,请将您的方法重命名为serveResource()
,它应该有效: - )