Fórum Ajuda Java Desktop + Excluir item da combo box #480964
01/06/2014
0
Boa tarde galera, estou com problemas no meu programa aqui.
eu tenho banco de dados com todos os funcionarios cadastrados no programa, ai o nome deles vão para uma combo box, eu quero excluir o funcionario do banco de dados pela combo box, selecionando ele e excluindo.
Na hora de excluir da o seguinte erro:
Vou enviar o codigo
FuncionarioDAO:
TelaGerenciarFuncionario
Classe Funcionario
Se puderem me ajudar agradeço
eu tenho banco de dados com todos os funcionarios cadastrados no programa, ai o nome deles vão para uma combo box, eu quero excluir o funcionario do banco de dados pela combo box, selecionando ele e excluindo.
Na hora de excluir da o seguinte erro:
Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: java.lang.String cannot be cast to worldCup.Funcionario
at telas.TelaGerenciarFuncionario$4.actionPerformed(TelaGerenciarFuncionario.java:108)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: java.lang.String cannot be cast to worldCup.Funcionario
at telas.TelaGerenciarFuncionario$4.actionPerformed(TelaGerenciarFuncionario.java:108)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
at telas.TelaGerenciarFuncionario$4.actionPerformed(TelaGerenciarFuncionario.java:108)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: java.lang.String cannot be cast to worldCup.Funcionario
at telas.TelaGerenciarFuncionario$4.actionPerformed(TelaGerenciarFuncionario.java:108)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Vou enviar o codigo
FuncionarioDAO:
package dados;
import dados.ConnectionFactory;
import worldCup.Funcionario;
import java.sql.*;
import java.util.ArrayList;
import java.util.List;
public class FuncionarioDAO {
private Connection connection;
private PreparedStatement stmt;
int id;
String nome;
String cpf;
String telefone;
String senha;
public FuncionarioDAO(){
this.connection = new ConnectionFactory().getConnection();
}
public void cadastrarFuncionario(Funcionario funcionario){
String sql = "INSERT INTO funcionario(nome,cpf,telefone,senha) VALUES(?,?,?,?)";
try {
PreparedStatement stmt = connection.prepareStatement(sql);
stmt.setString(1, funcionario.getNome());
stmt.setString(2, funcionario.getCpf());
stmt.setString(3, funcionario.getTelefone());
stmt.setString(4, funcionario.getSenha());
stmt.execute();
stmt.close();
} catch (SQLException u) {
throw new RuntimeException(u);
}
}
public void deletarFuncionario(Funcionario funcionario){
String sql = "DELETE FROM funcionario WHERE idFuncionario = ?";
try{
PreparedStatement stmt = connection.prepareStatement(sql);
stmt.setInt(1, funcionario.getIdFuncionario());
stmt.execute();
stmt.close();
} catch (SQLException u) {
throw new RuntimeException(u);
}
}
public ArrayList<Funcionario> listarFuncionario(){
ArrayList<Funcionario> funcionarios = new ArrayList<>();
String sql = "SELECT * FROM funcionario ORDER BY nome ASC";
try{
stmt = connection.prepareStatement(sql);
ResultSet rs = stmt.executeQuery();
while(rs.next()){
Funcionario funcionario = new Funcionario();
funcionario.setIdFuncionario(rs.getInt("idFuncionario"));
funcionario.setNome(rs.getString("nome"));
funcionario.setCpf(rs.getString("cpf"));
funcionario.setTelefone(rs.getString("telefone"));
funcionario.setSenha(rs.getString("senha"));
funcionarios.add(funcionario);
}
rs.close();
stmt.close();
return funcionarios;
}
catch (SQLException u) {
throw new RuntimeException(u);
}
}
}TelaGerenciarFuncionario
package telas;
import java.awt.BorderLayout;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;
import java.awt.Font;
import javax.swing.SwingConstants;
import javax.swing.JButton;
import javax.swing.JComboBox;
import worldCup.Funcionario;
import java.awt.Color;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
import javax.swing.DefaultComboBoxModel;
import dados.FuncionarioDAO;
public class TelaGerenciarFuncionario extends JFrame {
private JPanel menuGerenciarFuncionario;
private JButton btnCadastrarFuncionrio;
private JButton btnEditar;
private JButton btnMenuPrincipal;
public TelaCadastroFuncionario telaCadastroFuncionario = new TelaCadastroFuncionario();
public static FuncionarioDAO dadosFuncionario = new FuncionarioDAO();
private static ArrayList<Funcionario> func = new ArrayList<>();
private Funcionario funcionario = new Funcionario();
private static JComboBox cbbFuncionario;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
TelaGerenciarFuncionario frame = new TelaGerenciarFuncionario();
frame.setVisible(true);
AtualizaCbb();
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public TelaGerenciarFuncionario() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 661, 519);
menuGerenciarFuncionario = new JPanel();
menuGerenciarFuncionario.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(menuGerenciarFuncionario);
menuGerenciarFuncionario.setLayout(null);
JLabel lblGerenciamentoDeFuncionario = new JLabel("Gerenciamento de Funcion\u00E1rios");
lblGerenciamentoDeFuncionario.setHorizontalAlignment(SwingConstants.CENTER);
lblGerenciamentoDeFuncionario.setFont(new Font("Tahoma", Font.BOLD, 24));
lblGerenciamentoDeFuncionario.setBounds(10, 64, 625, 37);
menuGerenciarFuncionario.add(lblGerenciamentoDeFuncionario);
btnCadastrarFuncionrio = new JButton("Cadastrar Funcion\u00E1rio");
btnCadastrarFuncionrio.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
telaCadastroFuncionario.setVisible(true);
}
});
btnCadastrarFuncionrio.setFont(new Font("Tahoma", Font.BOLD, 11));
btnCadastrarFuncionrio.setBounds(188, 201, 263, 23);
menuGerenciarFuncionario.add(btnCadastrarFuncionrio);
cbbFuncionario = new JComboBox();
cbbFuncionario.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
}
});
cbbFuncionario.setBounds(188, 273, 263, 20);
menuGerenciarFuncionario.add(cbbFuncionario);
btnEditar = new JButton("Editar");
btnEditar.setFont(new Font("Tahoma", Font.BOLD, 11));
btnEditar.setBounds(188, 320, 125, 23);
menuGerenciarFuncionario.add(btnEditar);
JButton btnExcluir = new JButton("Excluir");
btnExcluir.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
funcionario = (Funcionario) cbbFuncionario.getSelectedItem();
dadosFuncionario.deletarFuncionario(funcionario);
}
});
btnExcluir.setFont(new Font("Tahoma", Font.BOLD, 11));
btnExcluir.setBounds(323, 320, 128, 23);
menuGerenciarFuncionario.add(btnExcluir);
JLabel lblSelecioneOFuncionrio = new JLabel("*Selecione o Funcion\u00E1rio na Combo Box");
lblSelecioneOFuncionrio.setFont(new Font("Tahoma", Font.ITALIC, 11));
lblSelecioneOFuncionrio.setForeground(Color.GRAY);
lblSelecioneOFuncionrio.setBounds(188, 295, 263, 14);
menuGerenciarFuncionario.add(lblSelecioneOFuncionrio);
JLabel lblSoftWorldCup = new JLabel("Soft World Cup");
lblSoftWorldCup.setFont(new Font("Tahoma", Font.ITALIC, 11));
lblSoftWorldCup.setBounds(549, 456, 86, 14);
menuGerenciarFuncionario.add(lblSoftWorldCup);
btnMenuPrincipal = new JButton("Menu Principal");
btnMenuPrincipal.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
TelaMenuAdm telaMenuAdm = new TelaMenuAdm();
telaMenuAdm.setVisible(true);
dispose();
}
});
btnMenuPrincipal.setFont(new Font("Tahoma", Font.BOLD, 11));
btnMenuPrincipal.setBounds(248, 375, 136, 23);
menuGerenciarFuncionario.add(btnMenuPrincipal);
}
protected static void AtualizaCbb(){
func = dadosFuncionario.listarFuncionario();
cbbFuncionario.removeAllItems();
for (int i = 0;i < func.size(); i++){
cbbFuncionario.addItem(func.get(i).getNome());
}
}
}
Classe Funcionario
package worldCup;
//criando a classe Funcionario
public class Funcionario {
//criando as variaveis
protected int idFuncionario;
protected String cpf;
protected String nome;
protected String telefone;
protected String senha;
//criando os get`s e os set`s
public int getIdFuncionario() {
return idFuncionario;
}
public void setIdFuncionario(int idFuncionario) {
this.idFuncionario = idFuncionario;
}
public String getCpf() {
return cpf;
}
public void setCpf(String cpf) {
this.cpf = cpf;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getTelefone() {
return telefone;
}
public void setTelefone(String telefone) {
this.telefone = telefone;
}
public String getSenha() {
return senha;
}
public void setSenha(String senha) {
this.senha = senha;
}
//chamando o construtor
public Funcionario() {
super();
}
public Funcionario(String nome) {
this.nome = nome;
}
public String toString() {
return nome;
}
}
Se puderem me ajudar agradeço
Sr Sherlock
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)