Author: fdesbois Date: 2010-03-09 17:55:42 +0100 (Tue, 09 Mar 2010) New Revision: 2914 Log: Use activation context instead of persist for page number to avoid concurrency problems (different polls for same user) Modified: branches/pollen-1.2.3-1.2.x/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/VoteForPoll.java branches/pollen-1.2.3-1.2.x/pollen-ui/src/main/webapp/poll/VoteForPoll.tml Modified: branches/pollen-1.2.3-1.2.x/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/VoteForPoll.java =================================================================== --- branches/pollen-1.2.3-1.2.x/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/VoteForPoll.java 2010-03-09 16:47:07 UTC (rev 2913) +++ branches/pollen-1.2.3-1.2.x/pollen-ui/src/main/java/org/chorem/pollen/ui/pages/poll/VoteForPoll.java 2010-03-09 16:55:42 UTC (rev 2914) @@ -1071,6 +1071,9 @@ */ void onActivate(EventContext ec) { param = ec.get(String.class, 0); + if (ec.getCount() > 1) { + page = ec.get(Integer.class, 1); + } // Initialisation du sondage if (param != null && !"".equals(param)) { @@ -1135,8 +1138,8 @@ * * @return l'identifiant du sondage et du votant */ - String onPassivate() { - return param; + Object[] onPassivate() { + return new Object[]{param, page}; } /** @@ -1158,7 +1161,6 @@ private List<VoteDTO> votes; - @Persist private Integer page; public int getPage() { Modified: branches/pollen-1.2.3-1.2.x/pollen-ui/src/main/webapp/poll/VoteForPoll.tml =================================================================== --- branches/pollen-1.2.3-1.2.x/pollen-ui/src/main/webapp/poll/VoteForPoll.tml 2010-03-09 16:47:07 UTC (rev 2913) +++ branches/pollen-1.2.3-1.2.x/pollen-ui/src/main/webapp/poll/VoteForPoll.tml 2010-03-09 16:55:42 UTC (rev 2914) @@ -50,7 +50,7 @@ <p>${voteSizeMessage}</p> <t:feedback t:id="voteFeedback"/> <p:else> - <t:pager t:nbRowsPerPage="100" t:nbTotalRows="poll.nbVotes" t:currentPage="page"/> + <t:pager t:nbRowsPerPage="3" t:nbTotalRows="poll.nbVotes" t:currentPage="page"/> </p:else> </t:if> <t:form t:id="voteForm" t:zone="pollZone">