gpt4 book ai didi

java - pager taglib 没有按照记录重命名导出的 url 变量

转载 作者:行者123 更新时间:2023-12-01 15:43:50 24 4
gpt4 key购买 nike

我正在使用这个pager taglib solution ,它几乎按照指示生成页面的链接。它提供了一种自定义用于迭代数据集的变量名称的方法,而这正是导致问题的原因。

这就是我到目前为止的设置方式

<pg:pager url="/search" 
items="1000"
maxPageItems="10"
export="from=offset,currentPageNumber=pageNumber"
scope="request">
<pg:param name="w" value="${w}"/>
<pg:param name="e" value="${e}"/>

<pg:first unless="current"><a href="${pageUrl}"> &lt;&lt; first</a>&nbsp;</pg:first>
<pg:prev><a href="${pageUrl}"> &lt; prev</a>&nbsp;</pg:prev>
<pg:pages>
<c:choose>
<c:when test="${pageNumber == currentPageNumber}">
${pageNumber}
</c:when>
<c:otherwise>
<a href="${pageUrl}">${pageNumber}</a>
</c:otherwise>
</c:choose>
&nbsp;</pg:pages>
<pg:next><a href="${pageUrl}">next &gt;</a>&nbsp;</pg:next>
<pg:last unless="current"><a href="${pageUrl}">last &gt;&gt;</a></pg:last>
</pg:pager>

请注意,基于documentation您可以控制导出变量的名称

The export expression export="versatz=offset" would cause the pageOffset variable to be available as <%= versatz %>

如您所见,我正在尝试将 offset 重命名为 from (这是后端所期望的)

export="from=offset,currentPageNumber=pageNumber"

但是所有生成的链接都是这样的形式(注意 pager.offset=[number])

http://localhost:8080/search?w=param1&e=param2&pager.offset=10

我做错了什么?有人尝试过这个标签库吗?

非常感谢任何反馈

最佳答案

我意识到这有点晚了,但我使用上面提到的寻呼机标签库来支持单个页面上的多个唯一寻呼机时遇到了同样的问题。希望有人觉得这很有用...

看来这个参数名称已融入分页器标签源代码中:

static final String OFFSET_PARAM = ".offset";

但是,有一个 id 标记属性,其值在标记渲染期间以上面的 OFFSET_PARAM 常量为前缀。它的默认值为pager:

static final String DEFAULT_ID = "pager";

这两个值连接起来形成一个 idOffsetParam 字段,它是分页器标记内部使用的最终参数名称:

private String idOffsetParam = DEFAULT_ID+OFFSET_PARAM;

解决方案:如果您在标记声明中指定自己的 id 值,您将可以部分控制呈现的参数名称:

<pg:pager 
id="stackoverflow"
url="/search"
items="1000"
...
..
.

这将使导航链接呈现为 ?stackoverflow.offset=10。参数的 .offset 部分将保留,但至少您对参数名称的唯一性有一定的灵 active 。

关于java - pager taglib 没有按照记录重命名导出的 url 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7531232/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com