Estava precisando fazer uma páginação e pelos tópicos que encontrei aqui no GUJ muitos recomendaram o displaytag.
Estou tentando implementa-lo aqui, só que não sei como recupero a List na minha view.
Segue o escopo do código da controller que recupera os valores do banco e coloca numa List.
TutoriaDAO dao = new TutoriaDAO();
List<Tutoria> listTutoria = dao.procurarTutoria();
request.setAttribute("listTutoria", listTutoria);
rd = request.getRequestDispatcher("/principalTutorias.jsp");
Agora, não sei como faço para poder recuperar a List “listTutoria” no displaytag. Alguém me ajuda, por favor!?
Estava precisando fazer uma páginação e pelos tópicos que encontrei aqui no GUJ muitos recomendaram o displaytag.
Estou tentando implementa-lo aqui, só que não sei como recupero a List na minha view.
Segue o escopo do código da controller que recupera os valores do banco e coloca numa List.
TutoriaDAO dao = new TutoriaDAO();
List<Tutoria> listTutoria = dao.procurarTutoria();
request.setAttribute("listTutoria", listTutoria);
rd = request.getRequestDispatcher("/principalTutorias.jsp");
Agora, não sei como faço para poder recuperar a List "listTutoria" no displaytag. Alguém me ajuda, por favor!?
Atribua a sua lista à propriedade name do displayTable:
<display:tablename="${dao.lista}"pagesize="5"id="contato"><display:columnproperty="id"title="Codigo"/><display:columnproperty="nome"title="Nome"/><display:columnproperty="email"title="Email"/><display:columnproperty="endereco"title="Endereco"/><display:columnproperty="dataNascimento"decorator="caelum.LongDateWrapper"title="Data de Nascimento"/><display:columntitle="Remover"><a>remover</a></display:column><display:columntitle="Editar"><a/>">editar</a></display:column> </display:table><br><a>adicionar</a><br><c:importurl="rodape.jsp"/>
getAdicted,
Cara não tem como eu recuperar “listTutoria” e montar a partir dela?Porque pelo que entendi, vc chamou o objeto dao que na verdade está na minha Controller. Sendo assim, como estou usando MVC eu gostaria de recuperar pelo objeto que criei na minha Controller e coloquei em um setAttribute para poder recuperar na View.
Entendeu?
Eu sempre fiz o import pelo <jsp:useBean id="dao" class="caelum.ContatoDAO"/> mesmo.
[]'s
H
hrossow
Opa,
Boa tarde,
Segue exemplo bem separado HTML e Java:
Arquivo JSP:
<%@pagelanguage="java"contentType="text/html; charset=ISO-8859-1"pageEncoding="ISO-8859-1"%><%@tagliburi="http://java.sun.com/jsp/jstl/core"prefix="c"%><%@tagliburi="http://java.sun.com/jsp/jstl/fmt"prefix="fmt"%><%@tagliburi="http://displaytag.sf.net"prefix="display"%><!DOCTYPEhtmlPUBLIC"-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd"><html><head><metahttp-equiv="Content-Type"content="text/html; charset=ISO-8859-1"><title>AgendaFJ-21</title></head><body><c:importurl="cabecalho.jsp"/><display:tablename="contatos"export="false"id="contatos"><display:columntitle="Nome"property="nome"/><c:choose><c:whentest="${not empty contato.email}"><display:columntitle="E-mail"property="email"autolink="true"/></c:when><c:otherwise><display:columntitle="E-mail"value="E-mail não informado"/></c:otherwise></c:choose><display:columntitle="Endereço"property="endereco"/><fmt:formatDatevalue="${contatos.dataNascimento.time}"pattern="dd/MM/yyyy"var="dataEmTexto"/><display:columntitle="Data de nascimento"value="${dataEmTexto}"/><display:columntitle="Deleta"value="Remover"href="mvc?logica=RemoveContatoLogic"paramId="id"paramProperty="id"/></display:table><c:importurl="rodape.jsp"/></body></html>
Logica
packagebr.com.empresa.mvc.logica;importjava.util.List;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importbr.com.empresa.agenda.dao.ContatoDao;importbr.com.empresa.agenda.modelo.Contato;publicclassListaContatosLogicimplementsLogica{publicStringexecuta(HttpServletRequestreq,HttpServletResponseres)throwsException{// Monta a lista de contatosList<Contato>contatos=newContatoDao().getLista();// Guarda a lista no requestreq.setAttribute("contatos",contatos);return"lista-contatos.jsp";}}