PROBLEMAS COM DATATABLE? Veja 2 exemplos que funcionam perfeitamente

Exemplo do Bean (teste.java):

package servlets; 

import java.sql.*; 
import javax.servlet.jsp.jstl.sql.Result; 
import javax.servlet.jsp.jstl.sql.ResultSupport; 

public class teste 
{ 
    private Connection conn = null;             // handle de conexão com o database
    private String stmt = null;                 // definição de query de execução
    private PreparedStatement pstmt = null;     // preparação da query de execução
    private ResultSet rs = null;                // resultset da query
    dbconn jconn = new dbconn();
    
    public void open() throws SQLException { 
        conn = jconn.getConn();
    } 
    
    public Result getAll() throws SQLException{ 
        try{ 
            open(); 
            //---monta comando sql
            stmt = "SELECT * FROM cadastro";
            
            //---prepara comando
            pstmt = conn.prepareStatement(stmt);
            
            //---executa comando
            rs = pstmt.executeQuery();

            return ResultSupport.toResult(rs); 
        } 
        finally{ 
            close(); 
        } 
    } 
    
    public void close() throws SQLException{ 
        if(conn==null){ 
            return; 
        } 
    
        conn.close(); 
        conn=null; 
    } 
} 

Agora o exemplo do JSP:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd"> 
<%@ page contentType="text/html;charset=windows-1252"%> 
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%> 
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%> 
<f:view> 
    <link href='estil.css' rel='stylesheet' type='text/css' /> 
    <html> 
        <head> 
            <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"></meta> 
            <title> 
            visual 
            </title> 
        </head> 
    <body> 
        <h:form> 
            <div style="overflow:auto; width=50%; heigth=200px"> 
            <h:dataTable value="#{teste.all}" var="cadastro" 
                styleClass="tabla" headerClass="cabecera" 
                columnClasses="primera_col,segunda_col"> 
                <h:column> 
                    <f:facet name="header"> 
                    <h:outputText value="Codigo" /> 
                    </f:facet> 
                    <h:outputText value="#{cadastro.codigo_cliente}" /> 
                </h:column> 
                <h:column> 
                    <f:facet name="header"> 
                    <h:outputText value="Nome" /> 
                    </f:facet> 
                    <h:outputText value="#{cadastro.Nome_Cliente}" /> 
                </h:column> 
            </h:dataTable>
            </div> 
        </h:form> 
    </body> 
    </html> 

</f:view> 

SEGUNDO EXEMPLO:

Arquivo java para referenciar o Array:

package servlets; 

public class Usuario{
    private String nome;
    private String email;
    public String getNome(){
        return nome;
    }
    public String getEmail(){
        return email;
    }
    public Usuario(String nome, String email){
        this.nome=nome;
        this.email=email;
    }
}

JavaBean para instanciar no faces-config.xml

package servlets; 

import java.util.*;

public class TesteManaged{
    public List getUsuarios(){
        ArrayList us = new ArrayList();
        us.add(new Usuario("rodrigo","noEmail"));
        us.add(new Usuario("Urubatan","noEmailTambem"));
        return us;
    }
}

Arquivo JSP:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd"> 
<%@ page contentType="text/html;charset=windows-1252"%> 
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%> 
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%> 
<f:view> 
    <link href='estil.css' rel='stylesheet' type='text/css' /> 
    <html> 
        <head> 
            <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"></meta> 
            <title> 
            visual 
            </title> 
        </head> 
    <body> 
        <h:form> 
            <div style="overflow:auto; width=50%; heigth=200px"> 
            <h:dataTable var="u" value="#{TesteManaged.usuarios}">
                <h:column>
                    <h:outputText value="#{u.nome}"/>
                </h:column>
                <h:column>
                    <h:outputText value="#{u.email}"/>
                </h:column>
            </h:dataTable>
            </div> 
        </h:form> 
    </body> 
    </html> 

</f:view> 

Qualquer um dos exemplos funciona perfeitamente…graças a colaboração do fera: urubatan - aqui do GUJ.

Valeu!