我目前在liferay portlet中使用datatable,我必须进行ajax调用并返回一个Json。
所以在我的控制器中我写道:
@RenderMapping(params = "action=doAjaxSearch")
public String ajaxSearch(RenderRequest request, RenderResponse response, @RequestParam int iDisplayStart,
@RequestParam int iDisplayLength, @RequestParam String sEcho, Model model) {
model.addAttribute("sEcho", sEcho);
model.addAttribute("count", 20);
return AJAX_RESULT;
}
AJAX_RESULT是用于创建Json的视图名称:
{<%@ taglib prefix =“spring”uri =“http://www.springframework.org/tags” %GT; <%@ taglib prefix =“c”uri =“http://java.sun.com/jsp/jstl/core”%>
“sEcho”:,“iTotalRecords”: $ {count},“iTotalDisplayRecords”:$ {count},“aaData”:[]}
一切正常但返回的响应包含json + liferay主题。我想只检索jsp内容。
提前感谢您的帮助。
答案 0 :(得分:1)
在创建URL时,您可以添加以将URL的窗口状态称为“独占”。例如
<portlet:renderURL windowState="exclusive">
<portlet:param name="action" value="doAjaxSearch" />
</portlet:renderURL>