Bom dia!
No projeto em que estou trabalhando, encontramos um bug na paginação das telas de consultar decorrente do uso da lookup. Confesso que o fluxo para o qual o erro ocorre é difícil, porém possível.
Para que o problema aconteça, faço os seguintes passos:
- Numa tela de consulta qualquer com lookup grid, clico no botão consultar (que deve gerar uma paginação com botões de grupos e próximo).
- Clico na lookup grid (que deve abrir, obrigatoriamente, uma nova janela ou aba).
- Na tela de consultar, clico em um dos grupos da paginação (não é necessário fechar ou tomar qualquer ação na lookup grid, apenas abri-la).
- Ao clicar no grupo, a jsp da tela de consulta é recarregada. Clico, então, no botão de próximo. O que me direciona para a tela da lookup grid.
Pelo que andei observando, o erro ocorre devido ao parâmetro requestURIAction="<%=acao_pagamentos%>". Essa variável é setada com o código toda vez que se atualiza a jsp:
String acao_pagamentos;
if (session.getAttribute(util.Constantes.ACAO_ATUAL).toString().indexOf("/") == 0) {
acao_pagamentos = request.getContextPath() + session.getAttribute(util.Constantes.ACAO_ATUAL);
}else{
acao_pagamentos = request.getContextPath() + "/" + session.getAttribute(util.Constantes.ACAO_ATUAL);
}
Como o atributo da sessão que armazena a ação atual é aterado para os valores da lookup grid, o link do próximo fica errado.
Este é um fluxo bem difícil, a meu ver. Contudo, nossas telas de consulta abrem novas abas ao detalhar um registro. Desta forma, o mesmo problema acontece.
Autor: Gustavo Lima
22 comentários