Erro jstl com arraylist

to Desenvolvendo uma aplicacao Java e to com seguinte problema
vou detalhar pra melhor compreensao

minnha BEAN - cliente

package JBean;

public class Cliente {

    private String   cnpj ;
    private String   cliente;
    private Contato  fone     = new Contato();
    private Endereco endereco = new Endereco();
    
    
   public Cliente(){
       
   } 
   
   public Cliente(String cnpj, String cliente, Contato fone, Endereco endereco){
       this.cnpj     = cnpj;
       this.cliente  = cliente;
       this.fone     = fone;
       this.endereco = endereco;
   }     

    public String getCpnj() {
        return cnpj;
    }

    public void setCnpj(String cnpj) {
        this.cnpj = cnpj;
    }

    public String getCliente() {
        return cliente;
    }

    public void setCliente(String cliente) {
        this.cliente = cliente;
    }

    public Contato getFone() {
        return fone;
    }

    public void setFone(Contato fone) {
        this.fone = fone;
    }

    public Endereco getEndereco() {
        return endereco;
    }

    public void setEndereco(Endereco endereco) {
        this.endereco = endereco;
    }

}

MEU DAO - ListaCLIENTE

public static ArrayList ListaCliente() throws SQLException, ClassNotFoundException{

        ArrayList <Cliente> listapessoa = null;
        Cliente    pessoa               = null;
        
	  
	    conexao        = ConexaoDB.getConnection();   
		Statement  stm = conexao.createStatement();
			
		ResultSet resultado   = stm.executeQuery("SELECT * FROM tb_clientes");
		
		
		listapessoa = new ArrayList<Cliente>();
		
		while (resultado.next()) {
		        pessoa = new Cliente();  
		        pessoa.setCnpj(resultado.getString("CNPJ"));
			    pessoa.setCliente(resultado.getString("Cliente"));
			    pessoa.getEndereco().setRua(resultado.getString("Rua"));
			    pessoa.getEndereco().setBairro(resultado.getString("bairro"));
			    pessoa.getEndereco().setCidade(resultado.getString("Cidade"));
			    pessoa.getEndereco().setNumero(resultado.getString("numero"));
			    pessoa.getEndereco().setComplemento(resultado.getString("Complemento"));
			    pessoa.getFone().setCelular(resultado.getString("celular"));
			    pessoa.getFone().setFoneresidencial(resultado.getString("foneresidencial"));
			    pessoa.getFone().setFonetrabalho(resultado.getString("fonetrabalho"));
			    
			    listapessoa.add(pessoa);
		      }  
		resultado.close();
		stm.close();
		
		return listapessoa;
		
  }

MEU SERVLET

public class ServletLista extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
try {
ArrayList pessoa = new ArrayList();

   	 try {
			pessoa = OperacaoCliente.ListaCliente();
			
			
		} catch (SQLException e) {
			
			e.printStackTrace();
		} catch (ClassNotFoundException e) {
			
			e.printStackTrace();
		}
   RequestDispatcher d ;
   request.setAttribute("listapessoa",pessoa);
   d=  request.getRequestDispatcher("ListaCliente.jsp");
   d.forward(request, response); 
     } finally { 
        
     }
 } 

MEU ARQUIVO JSP

       <c:forEach var="lista" items="${listapessoa}">
          
        <tr><td><c:out value="${lista.cnpj }" /></td>
            <td><c:out value="${lista.cliente}" /></td>
            
            <td>                </td>
        </tr>
       </c:forEach>

o seguinte problema quando retiro o campo lista.cnpj e coloco qualquer um outro o sistema fuciona blz mais quando coloco ele como visto acima
mostra o seguinte erro.

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: An exception occurred processing JSP page /ListaCliente.jsp at line 26

23:
24: <c:forEach var=“lista” items="${listapessoa}">
25:
26:

<c:out value="${lista.cnpj }" />
27: <c:out value="${lista.cliente}" />
28:
29:

Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:505)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:416)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
Servlets.ServletLista.doGet(ServletLista.java:36)
javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

root cause

javax.el.PropertyNotFoundException: Property ‘cnpj’ not readable on type java.lang.String
javax.el.BeanELResolver$BeanProperty.read(BeanELResolver.java:259)
javax.el.BeanELResolver$BeanProperty.access$000(BeanELResolver.java:209)
javax.el.BeanELResolver.getValue(BeanELResolver.java:60)
javax.el.CompositeELResolver.getValue(CompositeELResolver.java:53)
org.apache.el.parser.AstValue.getValue(AstValue.java:114)
org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:923)
org.apache.jsp.ListaCliente_jsp._jspx_meth_c_005fout_005f0(ListaCliente_jsp.java:166)
org.apache.jsp.ListaCliente_jsp._jspx_meth_c_005fforEach_005f0(ListaCliente_jsp.java:127)
org.apache.jsp.ListaCliente_jsp._jspService(ListaCliente_jsp.java:84)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
Servlets.ServletLista.doGet(ServletLista.java:36)
javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

OBS: JA DEBUGUEI E TA TRASENDO OS DADOS DO CAMPO CNPJ MOSTRA AS INFORMACOES BLZ MAIS NA HORA DE EXIBIR MOSTRA ESSE ERRO
ALGUEM PODERIA ME AJUDAR?

A stacktrace indica que não encontrou a propriedade cnpj.

Você criou o método getCnpj()? Verifique se tem o método.

javax.el.PropertyNotFoundException: Property 'cnpj' not readable on type java.lang.String 

MAIS QUANDO DEBUG ELE MOSTRA TODOS OS ITENS
INCLUSIVE O CNPJ

Olá, o amigo acima tem razão. O seu metodo get para o campo CNPJ está com as letras trocadas.

O seu código está assim

public String getCpnj() { return cnpj; }

o correto não seria getCnpj()?