Gostaria de enviar essa minha lista para a jsp chamada ver.jsp,
so que nao estou conseguindo… nem usar o iterator nem fazer com que o
objeto chegue no jsp alguem pode me dar uma ajuda??
eu fiz o seguinte no ver.jsp
Acho que falta resgatar o arraylist mas nao faço nem ideia de como faço
mas de qualquer maneira eu vou precisar resgastar atravez do get.Attribute(“cli”);???
von.juliano
Amigo, não pense em usar esses malditos <% … %> :hunf: . Dê uma estuda em JSTL, é uma forma de trabalhar com jsp muito mais eficiente e organizada. Vou explicar rapidamente o que foi feito:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> Essa linha importa uma das funções da jstl, o core
<c:forEach var="cliente" items="${lista}">Cria um laço de repetição, onde para cada item (var=“cliente”) da lista de objetos (items="${lista}") ele vai fazer determinadas ações. Repare que é aqui que a lista que vc setou no request é “resgatada”.
${cliente.nome}Isso é EL (Expression Language) no caso, está funcionando da seguinte forma: objeto.propriedade, onde ele vai buscar a propriedade nome do objeto cliente.
</c:forEach> Termina o laço.
Espero que tenha ajudado! Flw! :mrgreen:
cyrofranco
é que eu testei e nao esta funcionando
Servlet
Bean b = new Bean();
ArrayList L = new ArrayList();
b.setNome(request.getParameter("nome"));
b.setEmail(request.getParameter("email"));
b.setSexo(request.getParameter("sexo"));
L.add(b);
request.setAttribute("b",b);
response.sendRedirect("ver.jsp");
out.close();
}
Repare que o forEach itera uma lista, logo vc deve jogar a lista no request. No seu código:
request.setAttribute("b",L);
Se vc quiser jogar somente o bean no request, pode pegar seus valores, por exemplo, da seguinte forma:
<c:outvalue="${b.sexo}"></c:out>
Blz? Qualquer duvida vai postando aew! Flw! :mrgreen:
cyrofranco
Caraca cara ta dificil nao consigo de jeito nenhum!!!
Bean b = new Bean();
ArrayList L = new ArrayList();
b.setNome(request.getParameter("nome"));
b.setEmail(request.getParameter("email"));
b.setSexo(request.getParameter("sexo"));
L.add(b);
request.setAttribute("b",L);
response.sendRedirect("ver.jsp");
out.close();
}
E veja se o jar do jstl esta no classpath da sua aplicação!
von.juliano
Cara, tenta assim, Servlet:
Bean b = new Bean();
ArrayList lista = new ArrayList();
b.setNome("nome");
b.setEmail("email");
b.setSexo("sexo");
lista.add(b);
request.setAttribute("lista", lista);
response.sendRedirect("ver.jsp");
Que erro que aparece? Ou não está aparecendo nada?
Pedrosa
Fala Juliano, o sendRedirect perde os dados do request sempre use RequestDispatcher.
von.juliano
Fala Fábio, vlw mano! Nem tinha me ligado nesse detalhe! :XD: Substituindo isso deve funcionar!
Flw! :thumbup:
cyrofranco
Valew galera!!! isso vai ser muito util pra mim…
sabe me dizer se isso melhora a performace do projeto?
von.juliano
Cara, uma dica p/ melhorar o seu projeto é (eu nunca canso de dizer isso) NUNCA USE SCRIPTLETS!!! O Pedrosa aew deve ser o único cara que eu conheço que odeia scriptlets mais do que eu! Lugar de código definitivamente não é na camada view. Outra coisa que pode te ajudar muito, estude os padrões MVC, isso sim vai enriquecer muito seu projeto!