A action ListaClienteAction precisa ser adaptada da seguinte forma:

package clientesPack;

import java.util.List;

public class ListaClientesAction {
	private List<Cliente> clientes;  	
	
   public String execute() throws Exception {
	   
	   boolean result = false;
	   
	   ClienteDao dao = null;
	   
	   try {
		   dao = new ClienteDao();
		   clientes = dao.carregaClientes();
		   result = true;
	   }
	   finally {
		   if (dao != null)
			   dao.close();
	   }
	   
	   if (result)
		   return "success";
	   
	   return "error";
   }
   
   public List<Cliente> getClientes() {
      return this.clientes;
   }
}

A tela ListaClientes.jsp também precisa ser adaptada, para mostrar o campo nome. Porque agora a action não retorna uma lista de strings, mas uma lista de javabeans Cliente. Veja a diferença:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Lista de clientes</title>
</head>
<body>
   <h1>Lista de clientes</h1>
   <form action="listaClientes">
      <label for="filtro">Filtrar por:</label><br/>
      <input type="text" name="filtro"/>
      <input type="submit" value="Filtrar"/>
      <input type="submit" value="Novo"/>
      <br>
      <table border=1>
      <s:iterator value="clientes">	
        <tr> 
      	  <td>	
		  <s:property value="nome"/>
		  </td>
		  <td>
		  	<input type="submit" value="Editar"/>	
		  </td>
		  <td>
		    <input type="submit" value="Excluir"/>
		  </td>
		</tr>
	  </s:iterator>
	  </table>
   </form>
</body>
</html>
Copyright © 2014 AIEC.