Atributo setado na request não carrega na JSP

2 respostas
java
J

Olá,

Estou tentando recuperar os atributos do objeto pessoas na página “exibirPessoas.jsp” mas os dados não estão sendo carregados na página.

Por gentileza, alguém sabe dizer porque o código abaixo não está funcionando? Fiz um debug para verificar se os dados estão na lista e está tudo OK.

`public class ListaPessoas implements Logica {

public String executa(HttpServletRequest req, HttpServletResponse resp) throws Exception {
	List<Pessoa> pessoas = new PessoaDao().getLista();
	req.setAttribute("pessoas", pessoas);
	return "exibirPessoa.jsp";
}}'

Página exibirPessoa.jsp

`<body>
	<table align='center' border='1' height="0" cellspacing="0"
		cellpadding="5">
		<tr>
			<td colspan="8" align="center">LISTA DE PESSOAS CADASTRADAS </td>
		</tr>
		<tr>
			<td>Nome</td>
			<td>Idade</td>
			<td>RG</td>
			<td>CPF</td>
			<td>Endereço</td>
		</tr>
		<c:forEach var="pessoa" items="${pessoas}">
			<tr>
				<td>${pessoa.nome}</td>
				<td>${pessoa.idade}</td>
				<td>${pessoa.rg}</td>
				<td>${pessoa.cpf}</td>
				<td>${pessoa.endereco}</td>
			</tr>
		</c:forEach>
	</table>
</body>`

2 Respostas

F

Ve se quando chega na página, os dados estão indo para o EL, talvez na hora de declarar as configurações no topo da página, pode ter acontecido algo errado.

J

Na verdade a configuração para utilizar JSTL está correta, ou seja, as bibliotecas estão importadas e a tag
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
posicionada dentro do head como manda o figurino. Alias, o código funciona perfeitamente se eu instanciar a classe DAO com a tag
<jsp:useBean id="pessoa" class="br.com.caelum.dao.PessoaDao" />.
No entanto, eu quero passar parâmetros para o método getLista no DAO e chamando o método desta forma não é possível, por isso eu quero eliminar a instancia e resgatar o atributo da request.

Criado 29 de abril de 2016
Ultima resposta 29 de abr. de 2016
Respostas 2
Participantes 2