Select em JSP

Olá pessoal, preciso de ajuda pois já estou ficando quase louco com isso.
tenho a seguinte classe:

package br.com.adelino.daos;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import br.com.adelino.bd.ConnectionFactory;
import br.com.adelino.beans.DadosPessoais;

public class DadosPessoaisDAO {
	private Connection con;

	public DadosPessoaisDAO()throws SQLException
	{
		this.con = ConnectionFactory.getConnection();
	}

	public int adiciona(DadosPessoais pessoais)throws SQLException
	{	
		try
		{
			PreparedStatement stmt = this.con.prepareStatement("insert into pessoa(nome,sexo,cpf) values(?, ?, ?)");
			stmt.setString(1, pessoais.getNome());
			stmt.setString(2, pessoais.getSexo()+"");
			stmt.setString(3, pessoais.getCPF());
			stmt.execute();
			ResultSet rs = stmt.getGeneratedKeys();
			rs.next();
			int retorno = rs.getInt(1);
			rs.close();
			stmt.close();
			con.close();
			return retorno;
		}catch(SQLException e)
		{
			throw e;
		}
	}

	public void remove(DadosPessoais pessoais)throws SQLException
	{
		try
		{
			PreparedStatement stmt = this.con.prepareStatement("delete from contato where id_pessoa =" + pessoais.getId());
			stmt.execute();
			stmt = this.con.prepareStatement("delete from pessoa where id =" + pessoais.getId());
			stmt.execute();
			stmt.close();
			con.close();
		}catch(SQLException e)
		{
			throw e;
		}
	}

	public void altera(DadosPessoais pessoais)throws SQLException
	{
		try
		{
		PreparedStatement stmt = this.con.prepareStatement ("update pessoa set nome=?, sexo=?, cpf=? where id=?");

		stmt.setString(1, pessoais.getNome());
		stmt.setString(2, pessoais.getSexo()+"");
		stmt.setString(3, pessoais.getCPF());
		stmt.setInt(4, pessoais.getId());
		stmt.execute();
		stmt.close();
		con.close();
		}catch(SQLException e)
		{
			throw e;
		}
	}

	public ArrayList<DadosPessoais> getLista()throws SQLException
	{
		try
		{
		PreparedStatement stmt = this.con.prepareStatement ("select * from pessoa");
		ResultSet rs = stmt.executeQuery();
		ArrayList<DadosPessoais> lista = new ArrayList<DadosPessoais>();

		while (rs.next())
		{
			DadosPessoais pessoa = new DadosPessoais();
			pessoa.setId (rs.getInt ("id"));
			pessoa.setNome (rs.getString("nome"));
			pessoa.setSexo(rs.getString("sexo").charAt(0));
			pessoa.setCPF(rs.getString("cpf"));
			lista.add (pessoa);

		}
		rs.close();
		stmt.close();
		return lista;
		}catch(SQLException e)
		{
			throw e;
		}
	}
}

e o seguinte JSP:

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page import="java.util.ArrayList"%>
<html>
<body>
	<jsp:useBean id="clientes" scope="application" class="br.com.adelino.daos.DadosPessoaisDAO" />
	<ul>
		<c:forEach var="cli" items="${clientes.lista}" varStatus="s" >
			<li>
				${cli.nome}
			</li>
		</c:forEach>
	</ul>
</body>
</html>

A única coisa que é impressa na página é: ${cli.nome}

No debug, o DAO abre a conexao com o banco (MySQL), mas aparentemente não esta passando pelo metodo getLista. Alguém poderia me dar uma luz?

Agradeço desde já.

Amigo, uma sugestão minha:

Leia o seguinte tópico e veja se encontra uma solução para o seu problema: http://www.guj.com.br/posts/list/42036.java

Ola Felipe, primeiramente obrigado pela resposta.

Pude perceber no link passado que estava com um erro em meu web.xml, mas corrigi e mesmo assim não está funcionando…continua da mesma forma.
segue abaixo meu web.xml

<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app>
	<taglib>
		<taglib-uri>http://java.sun.com/jsp/jstl/core</taglib-uri>
		<taglib-location>/WEB-INF/tld/c.tld</taglib-location>
	</taglib>
    <servlet>
        <servlet-name>insereFormAction</servlet-name>
        <servlet-class>controller.servlets.insereFormAction</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>insereFormAction</servlet-name>
        <url-pattern>/insereFormAction</url-pattern>
    </servlet-mapping>
</web-app>

O problema maior acredito ser no forEach que não passa pelo metodo getLista(). Existe algum erro na codificação que não estou percebendo?

Obrigado mais uma vez a todos!

Ola Felipe, consegui resolver meu problema…

segue abaixo o codigo da minha JSP.

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<body>
	<jsp:useBean id="clientes" scope="application" class="br.com.adelino.daos.DadosPessoaisDAO" />
	<jsp:useBean id="dados" scope="application" class="java.util.ArrayList" />
	<ul>
		<c:forEach var="dados" items="${clientes.lista}"  >
			<li>
				<c:out value="${dados.cpf}" />
				<c:out value="${dados.nome}" />
				<c:out value="${dados.sexo}" />
			</li>
		</c:forEach>
	</ul>
</body>
</html>

O problema estava neste trecho…

<jsp:useBean id="clientes" scope="application" class="br.com.adelino.daos.DadosPessoaisDAO" />
	<jsp:useBean id="dados" scope="application" class="java.util.ArrayList" />
	<ul>
		<c:forEach var="dados" items="${clientes.lista}"  >

Precisava de um objeto do tipo ArrayList para receber a consulta do DAO e depois iterar no forEach

Muito obrigado a todos que passaram por aqui e pelo menos leram a dúvida!

Até a próxima…que com certeza vai ter…