Pessoal, estou começando no java e estou com um problema. Eu estou puxando de outra tabela os dados para um combobox, até ai tudo bem, só que eu não estou conseguindo converter o objeto do combo para uma string ou integer, que será como eu vou gravar no banco…
Se alguém puder me ajudar ai…
Esse é meu combo:
<h:selectOneMenu value="#{pessoaMB.selecionado}">
<f:selectItems value="#{pessoaMB.listaCombo}" var="pessoa" />
</h:selectOneMenu><br/>
Essa é a classe Bean :
public List<SelectItem> getListaCombo() throws ClassNotFoundException, SQLException {
if (listaCombo.isEmpty()) {
for (Pessoa retorno : dao.Listar()) {
listaCombo.add(new SelectItem(retorno.getIdpessoa(), retorno.getLogin()));
}
}
return listaCombo;
}
public void setListaCombo(List<SelectItem> listaCombo) {
this.listaCombo = listaCombo;
}
public int getSelecionado() {
return selecionado;
}
public void setSelecionado(int selecionado) {
this.selecionado = selecionado;
}
E a classe DAO onde eu listo as pessoas:
public List<Pessoa> Listar() throws ClassNotFoundException, SQLException{
Class.forName("org.apache.derby.jdbc.ClientDriver");
Connection cx = DriverManager.getConnection("jdbc:derby://localhost:1527/jsfexample","jsf","jsf");
String sql = "select idpessoa, email, login, senha, observacao from app.pessoa";
PreparedStatement ps = cx.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
List<Pessoa> pessoas = new ArrayList<Pessoa>();
while(rs.next()){
Pessoa p = new Pessoa();
p.setIdpessoa(rs.getInt("idpessoa"));
p.setEmail(rs.getString("email"));
p.setLogin(rs.getString("login"));
p.setSenha(rs.getString("senha"));
p.setObservacao(rs.getString("observacao"));
pessoas.add(p);
}
return pessoas;
}
Eu precisava atribuir o ID da pessoa para fazer a inserção dessa nova tabela
Se alguém puder ajudar ai eu agradeço!
Valeu!!
