Erro no método listar com jdbc e jsf

1 resposta
iltonk

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.

1 Resposta

iltonk

alguém pode me ajudar?

Criado 23 de novembro de 2012
Ultima resposta 23 de nov. de 2012
Respostas 1
Participantes 1