Ola pessoal, gostaria da ajuda de võcês para resolver este problema:
Tenho uma classe chamada VendaBean que busca no meu banco de dados os seguintes campos das tabelas vendas e item_venda:
private Integer codigo;
private Integer codigo_item;
private Integer clientes_codigo;
private Integer usuarios_codigo;
private Integer produtos_codigo;
private Integer vendas_codigo;
private Date data_venda;
private Double valor_total;
private Float quantidade_vendida;
private Double valor_item;
E tenho uma outra VendaControl, que contem o metodo cadastrar venda :
public void cadastrarVenda(VendasBean venda){
try {
Connection ExConn = banco.conecta();
String sSql = "INSERT INTO VENDAS (USUARIOS_CODIGO, CLIENTES_CODIGO, DATA_VENDA) VALUES(?,?,?)";
String sSql2 = "INSERT INTO ITEM_VENDA (PRODUTOS_CODIGO, VENDAS_CODIGO, QUANTIDADE_VENDIDA, VALOR_ITEM, VALOR_TOTAL) VALUES(?,?,?,?)";
PreparedStatement stm = ExConn.prepareStatement(sSql);
stm.setInt(1, venda.getUsuarios_codigo());
stm.setInt(2, venda.getProdutos_codigo());
stm.setInt(3, venda.getClientes_codigo());
stm.setInt(4, venda.getVendas_codigo());
stm.setDate(5, venda.getData_venda());
stm.setDouble(6, venda.getValor_total());
stm.setFloat(7, venda.getQuantidade_vendida());
stm.setDouble(8, venda.getValor_item());
stm.executeUpdate();
banco.desconecta();
} catch (Exception ex) {
ex.printStackTrace();
}
}
Tenho tambem uma classe principal que chama o método cadastrar venda:
[code]private void cadastrarVenda(){
if (venda.size() == 0){
JOptionPane.showMessageDialog(this, "Inclua pelo menos um produto!");
}else{
try {
VendasControl vc = new VendasControl();
VendasBean venda = new VendasBean();
SimpleDateFormat formato = new SimpleDateFormat("yyyy-MM-dd");
java.util.Date d = new java.util.Date();
Date data = Date.valueOf(formato.format(d));
venda.setClientes_codigo(clientes.get(cbClientes.getSelectedIndex()).getCodigo());
venda.setUsuarios_codigo(usuarios.get(cbUsuarios.getSelectedIndex()).getCodigo());
venda.setProdutos_codigo(produtos.get(cbProdutos.getSelectedIndex()).getCodigo());
venda.setVendas_codigo(venda.getVendas_codigo());
venda.setData_venda(data);
venda.setValor_total(total);
vc.cadastrarVenda(venda);
JOptionPane.showMessageDialog(this, "Venda cadastrada com sucesso!");
} catch (Exception ex) {
JOptionPane.showMessageDialog(this, "Erro ao cadastrar Venda!");
}
venda.clear();
cleartmVendas();
}
}[/code]
Quando realizo uma venda esta gerando este erro que eu nao consegui solucionar:
java.lang.NullPointerException
at sisvenda.vendas.VendasControl.cadastrarVenda(VendasControl.java:95)
at sisvenda.RegistrarVenda.cadastrarVenda(RegistrarVenda.java:313)
at sisvenda.RegistrarVenda.btFinalizarActionPerformed(RegistrarVenda.java:292)
at sisvenda.RegistrarVenda.access$100(RegistrarVenda.java:30)
at sisvenda.RegistrarVenda$2.actionPerformed(RegistrarVenda.java:158)
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:6263)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
at java.awt.Component.processEvent(Component.java:6028)
at java.awt.Container.processEvent(Container.java:2041)
at java.awt.Component.dispatchEventImpl(Component.java:4630)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Component.dispatchEvent(Component.java:4460)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4574)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
at java.awt.Container.dispatchEventImpl(Container.java:2085)
at java.awt.Window.dispatchEventImpl(Window.java:2478)
at java.awt.Component.dispatchEvent(Component.java:4460)
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)
Me ajudem, por favor…