使用struts扩展displaytag 1.保持当前页面和排序条件的问题

发布于 2024-10-06 22:32:00 字数 2119 浏览 3 评论 0原文

我通过扩展标准来实现displaytag。请参阅下面的详细信息。

JSP

display:table name="testList" id="obj" requestURI="testAction.do?pageAction=init" pagesize="${paging_size}" sort="list" class="table" **sort="external"** excludedParams="*" decorator="dyndecorator" export="false" **keepStatus="true"** 

  display:setProperty name="pagination.pagenumber.param" value="page" 
  display:setProperty name="pagination.sort.param" value="sort" /
  display:setProperty name="pagination.sortdirection.param" value="dir" 

  display:column property="testNo" title="Test no." **sortable="true"** **sortName="testNo"** 

  display:column property="testValue" title="Test value" **sortable="true"** **sortName="testValue"** 
display:table

PaginatedListImpl

public PaginatedListImpl(HttpServletRequest request) {
 sortCriterion = request.getParameter("sort");
 sortDirection = "desc".equals(request.getParameter("dir"))? SortOrderEnum.DESCENDING : SortOrderEnum.ASCENDING;
 pageSize = DEFAULT_PAGE_SIZE;
 String page = request.getParameter("page");
 index = page == null? 0 : Integer.parseInt(page) - 1;
}

JAVA

public PaginatedListImpl getTest(
 Criteria criList = session.createCriteria(TestDto.class);
 criList.setFirstResult(pageDisplay.getFirstRecordIndex());
 criList.setMaxResults(pageDisplay.getObjectsPerPage());
 pageDisplay.setList(criList.list());
 pageDisplay.setTotal((Integer) criTotal.uniqueResult());
 return pageDisplay;
}

无论如何,当浏览器呈现结果时,我发现浏览器有问题

  1. 当我将鼠标移到 page_no 上时。 它将显示“http://localhost:8080/WebProject/testAction.do?page=2&pageAction=init”

  2. 。当我将鼠标移到列名称上时,

    。它将显示“http://localhost:8080/WebProject/testAction.do?sort=testValue&*dir=asc*pageAction=init”

但是 我需要两者的链接,如下所示 “http://localhost:8080/WebProject/testAction.do?page=2&sort=testValue&dir=asc&pageAction=init”

我在谷歌上搜索了很多次,但我仍然有一个问题。

我该怎么办?有人请帮助我解决问题。

非常感谢..

I am implement displaytag by extend the standard. Please see detail below.

JSP

display:table name="testList" id="obj" requestURI="testAction.do?pageAction=init" pagesize="${paging_size}" sort="list" class="table" **sort="external"** excludedParams="*" decorator="dyndecorator" export="false" **keepStatus="true"** 

  display:setProperty name="pagination.pagenumber.param" value="page" 
  display:setProperty name="pagination.sort.param" value="sort" /
  display:setProperty name="pagination.sortdirection.param" value="dir" 

  display:column property="testNo" title="Test no." **sortable="true"** **sortName="testNo"** 

  display:column property="testValue" title="Test value" **sortable="true"** **sortName="testValue"** 
display:table

PaginatedListImpl

public PaginatedListImpl(HttpServletRequest request) {
 sortCriterion = request.getParameter("sort");
 sortDirection = "desc".equals(request.getParameter("dir"))? SortOrderEnum.DESCENDING : SortOrderEnum.ASCENDING;
 pageSize = DEFAULT_PAGE_SIZE;
 String page = request.getParameter("page");
 index = page == null? 0 : Integer.parseInt(page) - 1;
}

JAVA

public PaginatedListImpl getTest(
 Criteria criList = session.createCriteria(TestDto.class);
 criList.setFirstResult(pageDisplay.getFirstRecordIndex());
 criList.setMaxResults(pageDisplay.getObjectsPerPage());
 pageDisplay.setList(criList.list());
 pageDisplay.setTotal((Integer) criTotal.uniqueResult());
 return pageDisplay;
}

Anyway, I found problem on browser when the browser render the result

  1. when I move the mouse over page_no. It will show "http://localhost:8080/WebProject/testAction.do?page=2&pageAction=init"

  2. when I move the mouse over column name. It will show "http://localhost:8080/WebProject/testAction.do?sort=testValue&*dir=asc*pageAction=init"

but I need the link of both like this
"http://localhost:8080/WebProject/testAction.do?page=2&sort=testValue&dir=asc&pageAction=init"

I search on google many time but I still have a problem.

How can I do? Someone Please help me out of problem.

Thank you a lot..

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

迷爱 2024-10-13 22:32:00

我在下面给你我的示例代码

<%
 String str = "/details.do?method=showQuestions&surveyId="+arrayNew.get(0);
%>

<html:link page='<%=str%>'><%=arrayNew.get(1)%></html:link>

尝试将 url 放入字符串变量中,并在 html:link 标记中使用字符串变量,如上所示。这可能会解决您的问题。

谢谢

I am giving you my sample code below

<%
 String str = "/details.do?method=showQuestions&surveyId="+arrayNew.get(0);
%>

<html:link page='<%=str%>'><%=arrayNew.get(1)%></html:link>

Try to put url in string variable and use the string variable in the html:link tag as shown above. This may solve your problem.

Thanks

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文