当前位置: 首页 > 知识库问答 >
问题:

Liferay搜索容器分页

笪煌
2023-03-14

我在我的代码中使用了riveray-ui:搜索容器。

搜索结果正在正确显示,直到我单击下一步。portlet正在重新加载,这将把我带到portlet的第一页,丢弃呈现的搜索结果。

即使在重新加载portlet之后,我如何保留搜索结果?

共有3个答案

况谦
2023-03-14

单击NEXT(或搜索容器中的任何其他分页器按钮)会呈现portlet。如果搜索容器不在portlet的第一页(通常是view.jsp,在portlet.xml中设置),您将被重定向到那里(呈现阶段的默认行为)。

在Liferay 6.2中,您可以设置迭代器URL,并使用参数mvcPath指定当前jsp。

<liferay-portlet:renderURL portletConfiguration="true" varImpl="iteratorURL">
  <liferay-portlet:param name="mvcPath" value="something.jsp"/>
</liferay-portlet:renderURL>
<liferay-ui:search-container iteratorURL="<%=iteratorURL %>">
  [...]
</liferay-ui:search-container>
丌官高远
2023-03-14

liferay搜索容器处理单击“下一步”和“上一步”时传递的参数。

请注意“下一个”和“上一个”链接的URL。

例如,URL将具有如下参数:

p_p_id=15

Liferay搜索容器使用delta、cur参数导航到下一组结果。

如需更多信息,请查看使用搜索容器以及它们如何构建URL的Liveay portlet。

林蕴藉
2023-03-14

如果iteratorURL属性的默认行为不适合您的需求,您可以为其提供一个值。

在下面的示例中,当您单击搜索结果表上的“Next”时,portlet的ProccesAction()方法将被参数1和参数2调用。

您可以向该方法添加逻辑以保留搜索结果。

<%
PortletURL urlPaginator=renderResponse.createActionURL();
urlPaginator.setParameter("param1", value1);
urlPaginator.setParameter("param2",value2);
%>

<liferay-ui:search-container iteratorURL="<%=urlPaginator%>">
 类似资料:
  • 我已经使用Liferay搜索容器来显示自定义实体的数据,它正在工作。我有另一个portlet,其中数据来自RESTAPI,所以有没有任何方法可以使用搜索容器?或者我需要使用datatable。我的REST API有分页和无分页。

  • 我目前正在参与使用Liferay(6.1 GA2)的项目。Liferay搜索结果似乎提供了指向Web内容片段的链接,而不是指向包含这些片段的页面的链接。 你们中有人经历过这个问题吗?你知道怎么解决吗? 非常感谢朋友们。 最好的,阿尔贝托

  • 这是我的Liferay搜索容器代码: 问题是,当我更改分页或更改增量时,它会给我整个记录,而不是筛选记录。

  • 大家好,根据搜索框中的conatiner图像在这里!我只是想问当用户在搜索框中键入一个名称时,应该显示特定的字段。我把我的视图。JSP代码也在这里吗?? vuew.jsp<%@page import=“com.privery.servicebuilder.service.blobdesolocalserviceutil”%><%@taglib uri=“http://java.sun.com/po

  • 我们在Liferay DXP和Elasticsearch 2.2.0中有一个自定义搜索portlet。我们在elasticsearch设置中为同义词搜索添加了以下设置。 我们还使用以下代码验证是否将同义词分析器添加到索引中。 这给出了synonyms.txt文件中“acl”的所有同义词的结果。但是Liferay搜索不会给搜索匹配同义词。例如:搜索(“acl”)=

  • 我正在尝试使用SearchContext、IndexSearcherHelperUtil和所有其他东西,为Liferay 7.3.5 GA6开发一个定制的web内容搜索portlet。 我有一些不同字段的DDM结构,从我在elasticsearch索引上看到的,这些字段在嵌套文档中被索引,如下所示: 这与我以前知道的旧方法不同,在旧方法中,自定义字段被索引为 现在我明白了 以下是代码: 这仍然是一