RicardoPereira
Programmer
Hi,
I have had created an arrayList to implement paging. The strange thing is that even if i define an increment of 10 records, i have always 5. What should be the cause of this?
Here is my code:
<%
if (
sReclamacao.equals("")){
ArrayList arrayList = null;
boolean check = true;
// session.removeAttribute("arrayList");
/* Se a arrayList estiver na sessão o Objecto evita a chamada da base de dados
e retorna a ArrayList do objecto da sessão
*/
if(null == session.getAttribute("arrayList"))
{
/** Precisa de ir buscar a arrayList à base de dados */
arrayList = form.getReclamacoesReclam(sCliente,sReclamacao);
session.setAttribute("arrayList", arrayList);
}else{
arrayList = (ArrayList)session.getAttribute("arrayList");
}
int arrayListSize = arrayList.size();
// Nº de registos a visualizar por página
// faz um incremento de x e verifica se existem apenas x registos por página
int increment = 10;
int fromIndex = 0;
int toIndex = increment;
String uri = request.getRequestURI();
String previous= "Anterior";
String next = "Próximo";
List displayList = null;
if( null != request.getParameter("next"))
{
fromIndex = Integer.parseInt(request.getParameter("next"));
toIndex = increment + fromIndex;
if( toIndex+1 > arrayListSize)
{
toIndex = arrayListSize;
check = false;
}
if( fromIndex > arrayListSize)
fromIndex = 0;
}
if( null != request.getParameter("prev"))
{
toIndex = Integer.parseInt(request.getParameter("prev"));
fromIndex = toIndex - increment;
}
if(arrayListSize > 0)
{
if(increment > arrayListSize){
toIndex = arrayListSize;
displayList = arrayList.subList(fromIndex, toIndex);
toIndex = 0;
}
else
{
displayList = arrayList.subList(fromIndex, toIndex);
}
}
if(fromIndex != 0)
previous = "<a href="+ uri +"?prev="+ fromIndex +" onmouseover=\"window.status='Anterior';return true;\"> Anterior </a>";
if(toIndex != 0 && check)
next = "<a href="+ uri +"?next="+ toIndex +" onmouseover=\"window.status='Próximo';return true;\"> Próximo </a>";
out.println("<br>");
//out.println(displayList);
if(displayList != null) {
Iterator iterator = displayList.iterator();
if(iterator != null) {
while(iterator.hasNext()){
Object tmp = iterator.next();
if(tmp != null){
QryReclamacoes qryReclam=(QryReclamacoes) iterator.next();
out.println("<tr><td><a href=javascriptpenPage('reclamacao.jsp?Reclamacao=" + qryReclam.getN_Reclamacao() + "') onmouseover=\"window.status='Reclamacao " + qryReclam.getN_Reclamacao() +
"';return true;\"><b>" + qryReclam.getN_Reclamacao() + "</b></a>" +
"</td><td>" + qryReclam.getNome_Pessoa() + "</td><td>" + qryReclam.getLoja() + "</td>" +
"<td>" + qryReclam.getDoc_Relacionado() + "</td><td>" + qryReclam.getData_Ocorrencia() + "</td>" +
"<td>" + qryReclam.getTipo_Reclamacao() + "</td><td>" + qryReclam.getDescricao() + "</td><td>" + qryReclam.getEstado() + "</td>");
}
else
{out.println("<tr><td colspan=\"7\">O Artigo que pretende consultar não existe na base de dados.</td></tr>");
}
}
}else
{out.println("<tr><td colspan=\"7\">A Reclamação que pretende consultar não existe na base de dados.</td></tr>");}
}else
{out.println("<tr><td colspan=\"7\" align=center class=boldwarning>Não existem reclamações para pesquisar na base de dados.</td></tr>");
}
out.println("<br></table><hr>");
out.println("<<");
out.println(previous);
out.println(" ");
out.println(next);
out.println(">>");
}
else
{
ArrayList ListaReclamacoesReclam=form.getReclamacoesReclam(sCliente,sReclamacao);
for( int x=0;x<ListaReclamacoesReclam.size();x++)
{
QryReclamacoes qryReclam=(QryReclamacoes) .get(x);
out.println("<tr>" +
"<td><a href=javascriptpenPage('reclamacao.jsp?reclamacao=" + qryReclam.getN_Reclamacao() + "') onmouseover=\"window.status='Reclamacao " + qryReclam.getN_Reclamacao() + "';return true;\"><font class='boldVerde'>" + qryReclam.getN_Reclamacao() + "</b></a>" +
"</td><td>" + qryReclam.getNome_Pessoa() +
"</td><td>" + qryReclam.getLoja() +
"</td><td>" + qryReclam.getDoc_Relacionado() +
"</td><td>" + qryReclam.getData_Ocorrencia() +
"</td><td>" + qryReclam.getTipo_Reclamacao() +
"</td><td>" + qryReclam.getDescricao() +
"</td><td>" + qryReclam.getEstado() + "</td></tr>");
}
out.println("<br></table>");
}
%>
Thanks
Ricardo
I have had created an arrayList to implement paging. The strange thing is that even if i define an increment of 10 records, i have always 5. What should be the cause of this?
Here is my code:
<%
if (
sReclamacao.equals("")){
ArrayList arrayList = null;
boolean check = true;
// session.removeAttribute("arrayList");
/* Se a arrayList estiver na sessão o Objecto evita a chamada da base de dados
e retorna a ArrayList do objecto da sessão
*/
if(null == session.getAttribute("arrayList"))
{
/** Precisa de ir buscar a arrayList à base de dados */
arrayList = form.getReclamacoesReclam(sCliente,sReclamacao);
session.setAttribute("arrayList", arrayList);
}else{
arrayList = (ArrayList)session.getAttribute("arrayList");
}
int arrayListSize = arrayList.size();
// Nº de registos a visualizar por página
// faz um incremento de x e verifica se existem apenas x registos por página
int increment = 10;
int fromIndex = 0;
int toIndex = increment;
String uri = request.getRequestURI();
String previous= "Anterior";
String next = "Próximo";
List displayList = null;
if( null != request.getParameter("next"))
{
fromIndex = Integer.parseInt(request.getParameter("next"));
toIndex = increment + fromIndex;
if( toIndex+1 > arrayListSize)
{
toIndex = arrayListSize;
check = false;
}
if( fromIndex > arrayListSize)
fromIndex = 0;
}
if( null != request.getParameter("prev"))
{
toIndex = Integer.parseInt(request.getParameter("prev"));
fromIndex = toIndex - increment;
}
if(arrayListSize > 0)
{
if(increment > arrayListSize){
toIndex = arrayListSize;
displayList = arrayList.subList(fromIndex, toIndex);
toIndex = 0;
}
else
{
displayList = arrayList.subList(fromIndex, toIndex);
}
}
if(fromIndex != 0)
previous = "<a href="+ uri +"?prev="+ fromIndex +" onmouseover=\"window.status='Anterior';return true;\"> Anterior </a>";
if(toIndex != 0 && check)
next = "<a href="+ uri +"?next="+ toIndex +" onmouseover=\"window.status='Próximo';return true;\"> Próximo </a>";
out.println("<br>");
//out.println(displayList);
if(displayList != null) {
Iterator iterator = displayList.iterator();
if(iterator != null) {
while(iterator.hasNext()){
Object tmp = iterator.next();
if(tmp != null){
QryReclamacoes qryReclam=(QryReclamacoes) iterator.next();
out.println("<tr><td><a href=javascriptpenPage('reclamacao.jsp?Reclamacao=" + qryReclam.getN_Reclamacao() + "') onmouseover=\"window.status='Reclamacao " + qryReclam.getN_Reclamacao() +
"';return true;\"><b>" + qryReclam.getN_Reclamacao() + "</b></a>" +
"</td><td>" + qryReclam.getNome_Pessoa() + "</td><td>" + qryReclam.getLoja() + "</td>" +
"<td>" + qryReclam.getDoc_Relacionado() + "</td><td>" + qryReclam.getData_Ocorrencia() + "</td>" +
"<td>" + qryReclam.getTipo_Reclamacao() + "</td><td>" + qryReclam.getDescricao() + "</td><td>" + qryReclam.getEstado() + "</td>");
}
else
{out.println("<tr><td colspan=\"7\">O Artigo que pretende consultar não existe na base de dados.</td></tr>");
}
}
}else
{out.println("<tr><td colspan=\"7\">A Reclamação que pretende consultar não existe na base de dados.</td></tr>");}
}else
{out.println("<tr><td colspan=\"7\" align=center class=boldwarning>Não existem reclamações para pesquisar na base de dados.</td></tr>");
}
out.println("<br></table><hr>");
out.println("<<");
out.println(previous);
out.println(" ");
out.println(next);
out.println(">>");
}
else
{
ArrayList ListaReclamacoesReclam=form.getReclamacoesReclam(sCliente,sReclamacao);
for( int x=0;x<ListaReclamacoesReclam.size();x++)
{
QryReclamacoes qryReclam=(QryReclamacoes) .get(x);
out.println("<tr>" +
"<td><a href=javascriptpenPage('reclamacao.jsp?reclamacao=" + qryReclam.getN_Reclamacao() + "') onmouseover=\"window.status='Reclamacao " + qryReclam.getN_Reclamacao() + "';return true;\"><font class='boldVerde'>" + qryReclam.getN_Reclamacao() + "</b></a>" +
"</td><td>" + qryReclam.getNome_Pessoa() +
"</td><td>" + qryReclam.getLoja() +
"</td><td>" + qryReclam.getDoc_Relacionado() +
"</td><td>" + qryReclam.getData_Ocorrencia() +
"</td><td>" + qryReclam.getTipo_Reclamacao() +
"</td><td>" + qryReclam.getDescricao() +
"</td><td>" + qryReclam.getEstado() + "</td></tr>");
}
out.println("<br></table>");
}
%>
Thanks
Ricardo