Paginação não esta funcionando, e não da sinal de erro no console.
o jsp:
java.total.base/estoqueTreina/src/main/webapp/paginas/consulta-produtos.jsp
heis o projeto no github: https://github.com/wdevjr/java.total.base/tree/master/estoqueTreina
Preciso de ajuda da comunidade experiente.
Aguardo contato! Obrigado!
Reparei que vc está fazendo isso:
<jsp:useBean id="dao" class="com.algaworks.estoque.servlet.ConsultaProdutosServlet" />
E está tentando usar as propriedades que estão declaradas nessa classe, e isso está errado. Usando servlet, vc deve devolver a resposta na requisição usando request.setAttribute
para poder usar os valores na tela.
Se vc fizer assim na servlet:
request.setAttribute("nome", "Teste");
Na jsp. vc recupera assim, exemplo:
<p>${nome}</p>
O html renderizado ficará assim:
<p>Teste</p>
ok Lucas eu já concertei esqueci de colocar na sessão. Então estou tendo problemas para fazer a paginação, porque o que eu tenho é um feito com JSF com a dataTable o problema esta no “firt” e “row” da DataTable e não sei como que vou setar esses valores com a JSP e o uso do JSTL …
aguardo contato.
… na hora que vai clicar no link de paginação da pagina não encontrada a telinha html parece que é o momento desse RequestDispatcher dispatcher= request.getRequestDispatcher(“/paginas/consulta-produtos.jsp”); como os metodos de paginação não tem ele da pagina não encontrada… sera isso?
aguardo contato, obrigado
… já atualizei o github com as modificações da pagina de consulta.
No get do seu servlet, vc deve preparar para receber os parâmetros da paginação page e size. E usar esses parâmetros na consulta ao banco feito pela classe Produtos.
Seria melhor se o nome da classe Produtos fosse algo como ProdutoRepository ou ProdutoDAO para indicar melhor o que ela é
Caso esse parâmetros page e size não sejam informados, vc pode usar algum valor padrão como por exemplo: page = 1
e size = 10
.
Para facilitar, seria bom se o método que faz a busca recebesse os parâmetros de filtro junto com os de paginação, algo assim:
List<Produto> produtos = produtos.filtrarPaginado(nome, page, size);
E dentro do método filtrarPagina
, vc trataria caso o nome for informado ou não.
Para paginar com JPA, veja esse artigo: https://www.baeldung.com/jpa-pagination
Olá Lucas! consegui fazer a paginação deu certo, abrigado pelas dicas e ajuda!
Agora só estou com duvidas para mostrar imagens na aplicação, vou abrir um novo tópico.
Acesse o código no github, por favor:https://github.com/wdevjr/java.total.base/tree/master/estoqueTreinaComPaginacao
Aguarde o novo tópico. T+