ola bom dia , estou tentando fazer um pesquisar pelo código , a função seria eu digitaria o código em uma caixa e na outra ia aparecer o nome do produto já fiz o código mas esta dando erro poderiam me ajudar ?se eu digitar um código que não tem aparece o não encontrado agora se eu digitar um código que tem ai ele da esse erro. e não passa o nome do produto para outra caixa daquele código.
botao6.addActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent e){
Produto objetoProduto = new Produto();
if (caixa5.getText().equals("")){
JOptionPane.showMessageDialog(null, "Informe um código para busca");
}
else {
objetoProduto =
gerenciador.find(Produto.class,Integer.parseInt(caixa5.getText()));
if(objetoProduto != null ){
ResultDescricao.setVisible(true);
ResultDescricao.setEnabled(false);
ResultDescricao.setText(String.valueOf(objetoProduto.getDescricao()));
Codigo = objetoProduto.getCodproduto();
}else {
JOptionPane.showMessageDialog(null,"Nao encontrado");
}
}
}
});
o erro é esse:
Exception in thread “AWT-EventQueue-0” java.lang.NullPointerException
at EfetuarVenda$1.actionPerformed(EfetuarVenda.java:238)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
Estou tentando assim porém não sei se seria viável ou seria melhor um jcombobox que a pessoa pesquisaria o nome do produto direto nele? só que a maioria dos programas eu acho que o código de barras vai no textfield e ai o produto aparece qual seria a melhor opção?acho que depois eu ia ter problema no gravar a venda mas isso ia ter que me preocupar depois rsrsdrs
sera que tenho que relacionar a tabela produto com a tabela vendas nesse caso ou posso fazer direto igual ai?
ele esta selecionando o código produto e não esta passando valor nulo na query
o resultado é esse
Hibernate: select produto0_.codproduto as codprodu1_13_0_, produto0_.categoria as categori2_13_0_, produto0_.data as data3_13_0_, produto0_.descricao as descrica4_13_0_, produto0_.estoque as estoque5_13_0_, produto0_.fornecedor as forneced6_13_0_, produto0_.marca as marca7_13_0_, produto0_.quantidade as quantida8_13_0_, produto0_.referencia as referenc9_13_0_, produto0_.valor as valor10_13_0_ from Produto produto0_ where produto0_.codproduto=?
Modelo.Produto@4044c14e
então o que sera que pode estar dando errado? sera que é por que esta selecionando todos os campos da tabela nao só o codproduto?
Hibernate: select produto0_.codproduto as codprodu1_13_0_, produto0_.categoria as categori2_13_0_, produto0_.data as data3_13_0_, produto0_.descricao as descrica4_13_0_, produto0_.estoque as estoque5_13_0_, produto0_.fornecedor as forneced6_13_0_, produto0_.marca as marca7_13_0_, produto0_.quantidade as quantida8_13_0_, produto0_.referencia as referenc9_13_0_, produto0_.valor as valor10_13_0_ from Produto produto0_ where produto0_.codproduto=?
4
e o botão ele é resumido apenas nisso aqui
botao6.addActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent e){
Produto objetoProduto = new Produto();
if (caixa5.getText().equals("")){
JOptionPane.showMessageDialog(null, "Informe um código para busca");
}
else {
objetoProduto =
gerenciador.find(Produto.class, Integer.parseInt(caixa5.getText()));
System.out.println(objetoProduto.getCodproduto());
if(objetoProduto != null ){
ResultDescricao.setVisible(true);
ResultDescricao.setEnabled(false);
ResultDescricao.setText(String.valueOf(objetoProduto.getDescricao()));
Codigo = objetoProduto.getCodproduto();
}else {
JOptionPane.showMessageDialog(null,"Nao encontrado");
}
}
}
});
fiz o codigo nas outras consultas exatamente assim o produto é que nesse nao deu certo