É o seguinte,tenho um comboBox no Cadastro Cliente com os carros e seus respectivos ids listados que foram salvos no Cadastro Carro.
Ao lado desse ComboBox tem um botao “Adicionar” e ao lado desse botão um JList que é pra onde os adicionados vao aparecer…
Mas,esta dando um erro que não consigo saber o que tem de errado,gostaria que alguem me desse umas dicas se possivel.
O erro é este:
[code]public boolean insertClienteCarro(int idcliente, int idcarro)throws ClienteSYDAOException{
try{
System.out.println("AQUI");
Statement s = b.createStatement();
int affRow = s.executeUpdate("INSERT INTO Cliente_has_Carro VALUES ( "+idcliente+","
+idcarro+" )");
if(affRow>0){
return true;
}
}catch (SQLException ex){
throw new ClienteSYDAOException("Problema em inserir ClienteCarro: "+ex.getMessage()); //O ERRO APONTA ESTA LINHA!
}
return false;
}[/code]
Cola aqui o stack trace do seu erro. Como é uma Exception que está sendo capturada, fica complicado de saber qual o tipo de problema que está acontecendo.
compile-single:
run-single:
AQUI
26/05/2009 12:04:11 GUI.CadastroCliente B_AdicionarPrefActionPerformed
SEVERE: null
DAO.ClienteSYDAOException
at DAO.ClienteMySQL.insertClienteCarro(ClienteMySQL.java:210)
at GUI.CadastroCliente.B_AdicionarPrefActionPerformed(CadastroCliente.java:433)
at GUI.CadastroCliente.access$400(CadastroCliente.java:34)
at GUI.CadastroCliente$5.actionPerformed(CadastroCliente.java:159)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.Component.processMouseEvent(Component.java:6134)
at javax.swing.JComponent.processMouseEve
at javax.swing.JComponent.processMouseEvent(JComponent.java:3265)
at java.awt.Component.processEvent(Component.java:5899)
at java.awt.Container.processEvent(Container.java:2023)
at java.awt.Component.dispatchEventImpl(
at java.awt.Component.dispatchEventImpl(Component.java:4501)
at java.awt.Container.dispatchEventImpl(Container.java:2081)
at java.awt.Component.dispatchEvent(Component.java:4331)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4301)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3965)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3895)
at java.awt.Container.dispatchEventImpl(Container.java:2067)
at java.awt.Window.dispatchEventImpl(Window.java:2458)
at java.awt.Component.dispatchEvent(Component.java:4331)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Cara, faz o seguinte: dá uma olhada na classe ClienteMySQL e procure pela linha 210. Posta aqui o trecho de código dessa linha pra que eu entenda melhor a situação.
Olha deu certo,mas acontece o seguinte,eu adiciono o carro na JList mas não aparece na hora,só aparece quando eu Consultar o cadastro daquele cliente
novamente…tem algum jeito de aparecer na hora?
Sim eu pensei nisso tambem, mas mesmo assim aparece os adicionados mas como eu disse, só depois de consultar o cadastrado novamente
como eu arrumo isso?
[code]private void BbuscarActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
if(tx7.getText().isEmpty()){
JOptionPane.showMessageDialog(this, “Entre com o código do cliente para busca-lo.”);
}else{
try{
Cliente c = clienteMySQL.getCliente(Integer.parseInt(tx7.getText()));//CONVERTE A ESCRITA DO CAMPO DE TEXTO PARA INT PRA PODER BUSCAR.
tx1.setText(c.getNmcliente());
tx2.setText(c.getTel1cliente());
tx5.setText(c.getTel2cliente());
tx3.setText(c.getCelcliente());
tx4.setText(c.getDesccarrocliente());
tx6.setText(c.getNtcliente());
Vector v = carroMySQL.getCarroPreferencial(Integer.parseInt(tx7.getText()));
for(int i = 0; i<ListPref.getModel().getSize();i++){
((DefaultListModel)(ListPref.getModel())).remove(0);
}
DefaultListModel modelo = (DefaultListModel)ListPref.getModel();
for(Carro carro : v){
modelo.addElement(carro);
}
} catch (CarroSYDAOException ex) {
Logger.getLogger(CadastroCliente.class.getName()).log(Level.SEVERE, null, ex);
} catch (ClienteSYDAOException ex) {
Logger.getLogger(CadastroCliente.class.getName()).log(Level.SEVERE, null, ex);
}catch(NumberFormatException e){
JOptionPane.showMessageDialog(this, "O código do carro deve ser um número.");
}
}[/code]
e ai tem o codigo que te mandei no outro post , são os unicos relacionados no Cadastro Cliente