Tenho uma aplicação e quero que no momento em que o cadastro for inserido, ele retorne o id do cadastro.
Porém não estou conseguindo fazer com que o return volte até a minha swing.
Segue minha DAO:
public String cadastraDisciplina(portariaBean bean) throws SQLException, Exception {
String sql = "INSERT INTO disciplinas (\"idDisciplinas\",\"nome\",\"semestre\",\"cargaHoraria\",\"maxFaltas\") "
+ "VALUES (DEFAULT,'"+bean.getNome()+"','"+bean.getSemestre()+"','"+bean.getCargaHoraria()+"','"+bean.getMaxFaltas()+"') RETURNING \"idDisciplinas\"";
PreparedStatement stmt = connDB.connect(bean).prepareStatement(sql);
rs = stmt.executeQuery();
String codigo = new String();
if(rs.next()){
codigo = rs.getString("idDisciplinas");
}
connDB.commit();
return codigo;
}
minha bussiness:
public void cadastraDisciplina(portariaBean bean) throws Exception {
if(validateDisciplina(bean) == true){
portariaDao.getInstance().cadastraDisciplina(bean);
}else{
JOptionPane.showMessageDialog(null,"Há algo errado.Tente novamente!!!","Alerta",JOptionPane.ERROR_MESSAGE);
}
}
minha action:
public String cadastraDisciplina(String nome, String semestre, String cargaHoraria, String maxFaltas) throws Exception {
portariaBean bean = new portariaBean();
bean.setNome(nome);
bean.setSemestre(semestre);
bean.setCargaHoraria(cargaHoraria);
bean.setMaxFaltas(maxFaltas);
portariaBusiness.getInstance().cadastraDisciplina(bean);
return portariaDao.getInstance().cadastraDisciplina(null);
}
e a minha swing:
private void cadastrarDisciplinas(java.awt.event.ActionEvent evt) {
portariaAction action = new portariaAction();
String semestre = (String)(cmbSemestre.getSelectedItem());
try {
String idDisciplina = action.cadastraDisciplina(txfNome.getText(),semestre,txfCargaHoraria.getText(),txfMaxFaltas.getText());
txfCodigo.setText(idDisciplina);
} catch (Exception e) {
e.printStackTrace();
}
}
Já não sei mais o que faço, afinal quando depuro o projeto ele vai até a dao, reconhece o id, põe dentro do return codigo, mas não repassa para a business e nem para a action.
Porém, no depurador o código vai até a swing.
Alguém pode me ajudar?