pessoal estou com problemas para criar o método listar com jdbc, segue o código:
Método Listar:
public List<Usuario> listarUsuario() {
List<Usuario> usuarios = new ArrayList<Usuario>();
Connection conexao = DBConnection.getConnection();
String sql = "select usuario.codigousuario, usuario.nome, usuario.cpf, usuario.rg, usuario.orgao, usuario.foneresidencial, usuario.fonecelular,usuario.crmv, endereco.rua, endereco.cep, endereco.bairro, endereco.numero,endereco.cidade, endereco.uf from usuario, endereco where usuario.endereco_codigoendereco = endereco.codigoendereco";
try {
PreparedStatement pstm = conexao.prepareStatement(sql);
ResultSet rs = pstm.executeQuery();
while (rs.next()) {
Usuario usuario = new Usuario();
Endereco endereco = new Endereco();
endereco.setRua(rs.getString("rua"));
endereco.setCep(rs.getString("cep"));
endereco.setBairro(rs.getString("bairro"));
endereco.setNumero(rs.getString("numero"));
endereco.setCidade(rs.getString("cidade"));
endereco.setUf(rs.getString("uf"));
usuario.setCodigo(new Integer(rs.getInt("codigousuario")));
usuario.setNome(rs.getString("nome"));
usuario.setCpf(rs.getString("cpf"));
usuario.setRg(rs.getString("rg"));
usuario.setOrgao(rs.getString("orgao"));
usuario.setFoneResidencial(rs.getString("foneresidencial"));
usuario.setFoneCelular(rs.getString("fonecelular"));
usuario.setCrmv(rs.getString("crmv"));
usuario.setEndereco(endereco);
usuarios.add(usuario);
}
rs.close();
pstm.close();
} catch (SQLException e) {
e.printStackTrace();
}
try {
conexao.close();
} catch (SQLException e) {
e.printStackTrace();
}
return usuarios;
}
classe Bean:
public List <Usuario> getList(){
if (this.lista == null){
UsuarioDAO useDao = new UsuarioDAO();
this.lista = useDao.listarUsuario();
}
return lista;
}
código da página em jsf:
<h:form>
<h:dataTable value="#{usuarioBean.lista}" var="usuario" rules="rows" cellpadding = "12">
<f:facet name="header">Listagem de Usuários</f:facet>
<f:facet name="footer">Final da Listagem de Usuários</f:facet>
<h:column>
<f:facet name="header">Código</f:facet>
<h:outputText value="#{usuario.codigo}"/>
</h:column>
<h:column>
<f:facet name="header">Nome</f:facet>
<h:outputText value="#{usuario.nome}"/>
</h:column>
<h:column>
<f:facet name="header">CPF</f:facet>
<h:outputText value="#{usuario.cpf}"/>
</h:column>
<h:column>
<f:facet name="header">RG</f:facet>
<h:outputText value="#{usuario.rg}"/>
</h:column>
<h:column>
<f:facet name="header">Orgão</f:facet>
<h:outputText value="#{usuario.orgao}"/>
</h:column>
<h:column>
<f:facet name="header">Telefone Residencial</f:facet>
<h:outputText value="#{usuario.foneResidencial}"/>
</h:column>
<h:column>
<f:facet name="header">Telefone Celular</f:facet>
<h:outputText value="#{usuario.foneCelular}"/>
</h:column>
<h:column>
<f:facet name="header">CRMV</f:facet>
<h:outputText value="#{usuario.crmv}"/>
</h:column>
<h:column>
<f:facet name="header">Rua</f:facet>
<h:outputText value="#{usuario.endereco.rua}"/>
</h:column>
<h:column>
<f:facet name="header">CEP</f:facet>
<h:outputText value="#{usuario.endereco.cep}"/>
</h:column>
<h:column>
<f:facet name="header">Número</f:facet>
<h:outputText value="#{usuario.endereco.numero}"/>
</h:column>
<h:column>
<f:facet name="header">Bairro</f:facet>
<h:outputText value="#{usuario.endereco.bairro}"/>
</h:column>
<h:column>
<f:facet name="header">Cidade</f:facet>
<h:outputText value="#{usuario.endereco.cidade}"/>
</h:column>
<h:column>
<f:facet name="header">UF</f:facet>
<h:outputText value="#{usuario.endereco.uf}"/>
</h:column>
</h:dataTable>
</h:form>
a tabela está sendo montada mas não retorna nenhum valor.
o que está errado?
agradeço a ajuda.