Solved!
I added to PaginatedListImpl the method:

    public PaginatedListImpl(String tableId, HttpServletRequest request, int
pageSize) {
        sortCriterion = request.getParameter("d-" + tableId + "-s");
        String sortDir = request.getParameter("d-" + tableId + "-o");
        sortDirection =
ExtendedPaginatedList.IRequestParameters.DESC.equals(sortDir)?
SortOrderEnum.DESCENDING : SortOrderEnum.ASCENDING;
        this.pageSize = pageSize != 0 ? pageSize : DEFAULT_PAGE_SIZE ;
        String page = request.getParameter("d-" + tableId + "-p");
        index = page == null ? 0 : Integer.parseInt(page) - 1;
    }

>From my Struts 2 action:

        myPaginatedList = getPaginatedListFromRequest("pending",
getRequest()); // first parameter: tableId

Then, in my jsp I can have two tables, and the sorting, paging parameters
are kept between requests:

<display:table uid="pending" name="transactionsInProcessStatus"
cellpadding="0" requestURI="" defaultsort="3" sort="external"
    defaultorder="descending" pagesize="<%=pageSize%>" class="table"
export="false" keepStatus="true">
<display:setProperty name="pagination.pagenumber.param"
value="d-pending-p"/>
<display:setProperty name="pagination.sort.param" value="d-pending-s"/>
<display:setProperty name="pagination.sortdirection.param"
value="d-pending-o"/>
    <display:column property="signatureDescription"
sortProperty="description" escapeXml="true"
        sortable="true" titleKey="userDocument.title" url="/doc/view.html"
        paramId="id" paramProperty="id" class="column_title" />
    <display:column property="requestsComments"
        titleKey="signatureRequest.signatureComments" sortable="false"/>
</display:table>

<display:table uid="finalized" name="transactionsFinalizedStatus"
cellpadding="0" requestURI="" defaultsort="2" sort="external"
    defaultorder="descending" class="table" export="false">
<display:setProperty name="pagination.pagenumber.param"
value="d-finalized-p"/>
<display:setProperty name="pagination.sort.param" value="d-finalized-s"/>
<display:setProperty name="pagination.sortdirection.param"
value="d-finalized-o"/>
    <display:column property="signatureDescription"
sortProperty="description" escapeXml="true"
        sortable="true" titleKey="userDocument.title" url="/doc/view.html"
        paramId="id" paramProperty="id" class="column_title" />
    <display:column property="requestsComments"
        titleKey="signatureRequest.signatureComments" sortable="false"/>
</display:table>

I upgraded to displaytag 1.2, but not sure it was necessary.

My previous post:

I am desperately trying to obtain the proper links for server side paging
and sorting with display tag 1.1.

In one of my jsp’s I have:

<display:table uid="pending" name="transactionsInProcessStatus"
cellpadding="0" requestURI="" defaultsort="3" sort="list"
defaultorder="descending" pagesize="” class=”table” export=”false”
decorator=”es.isigma.firmaqui.webapp.taglib.TransactStatusDecorator”>

My PaginatedList implementation is similar to this one:
http://code.google.com/p/pagingappfuse/source/browse/trunk/src/main/java/com/pobox/paging/webapp/helper/PaginatedListImpl.java

The link generated by displaytag for sorting is:

http://localhost:8080/doc/list.html?sort=description&dir=asc
The problem is, Ineed the “usual” encoded link (because I have two tables in
the same jsp page).
PieMailIsigma  [image: isotipo isigma]
 Josep García Corral
Ingeniero de Software
  isigma, la referencia en firma electrónica
Tel. +34 932 387 108
www.isigma.es

 [image: logotipo portasigma]
¡Prueba gratis la firma online! <http://www.portasigma.com>

Reply via email to