ola tudo bem? eu formatei o cpf porem agora nao quer gravar no banco o que posso ter feito de errado?
import java.awt.Container;
import java.awt.event.*;
import java.sql.PreparedStatement;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import javax.swing.*;
import javax.swing.text.MaskFormatter;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.view.JasperViewer;
import Modelo.Cliente;
import Util.ManipulaData;
// Ctrl+Shift+F => Formata o código
// Ctrl+A e Ctrl+i => Formata a seleção
public class JanelaCliente extends JFrame {
private JLabel rotulo1, rotulo2, rotulo3, rotulo4, rotulo5, rotulo6,
rotulo7, rotulo8, rotulo9, rotulo10, rotulo11, rotulo12, rotulo13,
rotulo14, rotulo15;
private JTextField caixa1, caixa3, caixa4, caixa5,caixa7,
caixa8, caixa9, caixa10, caixa11, caixa12, caixa13
;
JFormattedTextField caixa2,caixa15,caixa6,caixa14;
private JButton botao1, botao2, botao3, botao4, botao5, botao6;
private static EntityManagerFactory fabricaDeEntidades = null;
private static EntityManager gerenciador = null;
ImageIcon icone;
ImageIcon icone1;
ImageIcon icone2;
ImageIcon icone3;
ImageIcon icone4;
ImageIcon icone5;
public JanelaCliente(EntityManagerFactory fabricaDeEntidades2,
EntityManager gerenciador2) throws Exception {
super("Cliente");
Container tela = getContentPane();
icone = new ImageIcon("001.gif");
icone1 = new ImageIcon("005.gif");
icone2 = new ImageIcon("126.gif");
icone3 = new ImageIcon("041.gif");
icone4 = new ImageIcon("100.gif");
icone5 = new ImageIcon("004.gif");
botao1 = new JButton (icone);
botao2 = new JButton (icone1);
botao3 = new JButton (icone2);
botao4 = new JButton (icone3);
botao5 = new JButton (icone4);
botao6 = new JButton (icone5);
tela.setLayout(null);
fabricaDeEntidades = fabricaDeEntidades2;
gerenciador = gerenciador2;
rotulo1 = new JLabel("Codigo:");
rotulo2 = new JLabel("Data:");
rotulo3 = new JLabel("Nome:");
rotulo5 = new JLabel("Endereço:");
rotulo6 = new JLabel("Cpf:");
rotulo7 = new JLabel("Bairro:");
rotulo8 = new JLabel("Cidade:");
rotulo9 = new JLabel("Uf:");
rotulo10 = new JLabel("Cep:");
rotulo11 = new JLabel("Telefone:");
rotulo12 = new JLabel("Complemento:");
rotulo13 = new JLabel("Email:");
rotulo14 = new JLabel("Rg:");
rotulo15 = new JLabel("Dta de Nascimento:");
MaskFormatter formater = new MaskFormatter();
formater.setMask("##-##-####");
MaskFormatter formater2 = new MaskFormatter();
formater2.setMask("##-##-####");
MaskFormatter formater3 = new MaskFormatter();
formater3.setMask("###.###.###-##");
formater3.setValidCharacters("[telefone removido]");
MaskFormatter formater4 = new MaskFormatter();
formater4.setMask("##.###.###-#");
formater4.setValidCharacters("[telefone removido]");
caixa6 = new javax.swing.JFormattedTextField(caixa6);
caixa14 = new javax.swing.JFormattedTextField(caixa14);
caixa1 = new JTextField();
caixa2 = new JFormattedTextField();
formater.install(caixa2);
caixa3 = new JTextField();
caixa5 = new JTextField();
caixa6 = new JFormattedTextField();
formater3.install(caixa6);
caixa7 = new JTextField();
caixa8 = new JTextField();
caixa9 = new JTextField();
caixa10 = new JTextField();
caixa11 = new JTextField();
caixa12 = new JTextField();
caixa13 = new JTextField();
caixa14 = new JFormattedTextField();
formater4.install(caixa14);
caixa15 = new JFormattedTextField();
formater2.install(caixa15);
//botao1 = new JButton("Incluir");
//botao2 = new JButton("Alterar");
//botao3 = new JButton("Excluir");
//botao4 = new JButton("Listar Clientes");
//botao5 = new JButton("Gerar Relatório");
//botao6 = new JButton("Fechar");
// coluna, linha, largura, altura
rotulo1.setBounds(21, 11, 43, 20);
caixa1.setBounds(110, 11, 50, 20);
botao1.setBounds(20, 279, 100, 20);
botao2.setBounds(130, 279, 100, 20);
botao3.setBounds(240, 279, 100, 20);
botao4.setBounds(350, 279, 150, 20);
botao5.setBounds(510, 279, 150, 20);
botao6.setBounds(510, 310, 150, 20);
rotulo2.setBounds(170, 11, 100, 20);
caixa2.setBounds(220, 11, 90, 20);
rotulo3.setBounds(21, 42, 100, 20);
caixa3.setBounds(110, 42, 550, 20);
rotulo5.setBounds(21, 73, 100, 20);
caixa5.setBounds(110, 73, 300, 20);
rotulo6.setBounds(21, 104, 100, 20);
caixa6.setBounds(110, 104, 150, 20);
rotulo7.setBounds(270, 104, 100, 20);
caixa7.setBounds(330, 104, 330, 20);
rotulo8.setBounds(21, 135, 100, 20);
caixa8.setBounds(110, 135, 236, 20);
rotulo9.setBounds(358, 135, 32, 20);
caixa9.setBounds(400, 135, 50, 20);
rotulo10.setBounds(466, 135, 43, 20);
caixa10.setBounds(519, 135, 141, 20);
rotulo11.setBounds(21, 166, 100, 20);
caixa11.setBounds(110, 166, 141, 20);
rotulo12.setBounds(261, 166, 100, 20);
caixa12.setBounds(352, 166, 308, 20);
rotulo13.setBounds(21, 197, 100, 20);
caixa13.setBounds(110, 197, 280, 20);
rotulo14.setBounds(415, 197, 100, 20);
caixa14.setBounds(460, 197, 200, 20);
rotulo15.setBounds(415, 73, 120, 20);
caixa15.setBounds(530, 73, 90, 20);
tela.add(rotulo1);
tela.add(caixa1);
tela.add(rotulo2);
tela.add(caixa2);
tela.add(botao1);
tela.add(botao2);
tela.add(botao3);
tela.add(botao4);
tela.add(botao5);
tela.add(botao6);
tela.add(rotulo3);
tela.add(caixa3);
tela.add(rotulo5);
tela.add(caixa5);
tela.add(rotulo6);
tela.add(caixa6);
tela.add(rotulo7);
tela.add(caixa7);
tela.add(rotulo8);
tela.add(caixa8);
tela.add(rotulo9);
tela.add(caixa9);
tela.add(rotulo10);
tela.add(caixa10);
tela.add(rotulo11);
tela.add(caixa11);
tela.add(rotulo12);
tela.add(caixa12);
tela.add(rotulo13);
tela.add(caixa13);
tela.add(rotulo14);
tela.add(caixa14);
tela.add(rotulo15);
tela.add(caixa15);
caixa6.addFocusListener(new FocusAdapter() {
String A,B,C,D,E,F,G,H,I,J,K = "";
int a,b,c,d,x,f,g,h,i,j,k,s1,s2;
public void focusLost(FocusEvent e) {
A = caixa6.getText().substring(0,1);
B = caixa6.getText().substring(1,2);
C = caixa6.getText().substring(2,3);
D = caixa6.getText().substring(4,5);
E = caixa6.getText().substring(5,6);
F = caixa6.getText().substring(6,7);
G = caixa6.getText().substring(8,9);
H = caixa6.getText().substring(9,10);
I = caixa6.getText().substring(10,11);
J = caixa6.getText().substring(12,13);
K = caixa6.getText().substring(13);
a = Integer.parseInt(A);
b = Integer.parseInt(B);
c = Integer.parseInt(C);
d = Integer.parseInt(D);
x = Integer.parseInt(E);
f = Integer.parseInt(F);
g = Integer.parseInt(G);
h = Integer.parseInt(H);
i = Integer.parseInt(I);
/*
* OBTENDO O DÍGITO J
*
* O resultado da soma, s1 = 10a+9b+8c+7d+6x+5f+4g+3h+2i, é dividido por 11 e o RESTO
* dessa divisão:
*
* RESTO j
* Se for 0 ou 1 O dígito j é [0] (zero)
* Se for 2, 3, 4, 5, 6, 7, 8, 9 ou 10 O dígito j é [11 - RESTO]
*
*/
s1 = ((10*a)+(9*b)+(8*c)+(7*d)+(6*x)+(5*f)+(4*g)+(3*h)+(2*i))%11;
if((s1==0) || (s1==1)) {
j = 0;
}
else {
j = (11-s1);
}
/*
* OBTENDO O DÍGITO k
*
* O resultado da soma, S2 = 11a+10b+9c+8d+7x+6f+5g+4h+3i+2j, é dividido por 11 e o RESTO
* dessa divisão:
*
* RESTO k
* Se for 0 ou 1 O dígito k é [0] (zero)
* Se for 2, 3, 4, 5, 6, 7, 8, 9 ou 10 O dígito k é [11 - RESTO]
*
*/
s2 = ((11*a)+(10*b)+(9*c)+(8*d)+(7*x)+(6*f)+(5*g)+(4*h)+(3*i)+(2*j))%11;
if((s2==0) || (s2==1)) {
k = 0;
}
else {
k = (11-s2);
}
// compara os resultados j com o J e k com o K e verifica se todos os dígitos não são iguais
if((j != (Integer.parseInt(J))) || (k != (Integer.parseInt(K))) || ((a==b)&(b==c)&(c==d)&(d==x)&(x==f)&(f==g)&(g==h)&(h==i))) {
JOptionPane.showMessageDialog(null,"CPF inválido", "Informação ", JOptionPane.INFORMATION_MESSAGE);
caixa6.setText("");
caixa6.requestFocus();
}
}
});
caixa1.addFocusListener(new FocusListener() {
public void focusGained(FocusEvent e) {
// TODO Auto-generated method stub
}
// Ao perder o foco do caixa1 é executado este método
public void focusLost(FocusEvent e) {
// TODO Auto-generated method stub
if (!caixa1.getText().trim().equals("")) {
// Se o campo conter um valor diferente de vazio
Cliente objetoCliente = gerenciador.find(Cliente.class,Integer.parseInt(caixa1.getText()));
if (objetoCliente != null) {
//caixa2.setText(objetoCliente.getData().toString());
caixa3.setText("" + objetoCliente.getNomeCompleto());
caixa5.setText("" + objetoCliente.getEndereco());
caixa6.setText("" + objetoCliente.getCpf());
caixa7.setText("" + objetoCliente.getBairro());
caixa8.setText("" + objetoCliente.getCidade());
caixa9.setText("" + objetoCliente.getUf());
caixa10.setText("" + objetoCliente.getCep());
caixa11.setText("" + objetoCliente.getTelefone());
caixa12.setText("" + objetoCliente.getComplemento());
caixa13.setText("" + objetoCliente.getEmail());
caixa14.setText("" + objetoCliente.getRg());
caixa15.setText("" + objetoCliente.getDatadenascimento());
botao1.setEnabled(false);
JOptionPane.showMessageDialog(null,
"Cliente já cadastrado com este código!!!");
} else {
botao1.setEnabled(true);
caixa2.setText("");
caixa3.setText("");
caixa5.setText("");
caixa6.setText("");
caixa7.setText("");
caixa8.setText("");
caixa9.setText("");
caixa10.setText("");
caixa11.setText("");
caixa12.setText("");
caixa13.setText("");
caixa14.setText("");
caixa15.setText("");
JOptionPane.showMessageDialog(null,
"Código livre para cadastro!");
}
}
}
});
caixa2.addFocusListener(new FocusListener() {
public void focusGained(FocusEvent e) {
caixa2.setText("");
}
public void focusLost(FocusEvent e) {
// TODO Auto-generated method stub
}
});
caixa15.addFocusListener(new FocusListener() {
public void focusGained(FocusEvent e) {
caixa15.setText("");
}
public void focusLost(FocusEvent e) {
// TODO Auto-generated method stub
}
});
botao1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e1) {
// Persistir dados
// inclusão de um novo registro
if (caixa1.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null,
"Informe o código do cliente!");
caixa1.requestFocus();
} else if (caixa2.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null, "Informe a Data!");
caixa2.requestFocus();
} else if (caixa3.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null,
"Informe o Nome Completo do Cliente!");
caixa3.requestFocus();
} else if (caixa5.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null,
"Informe o Endereço do Cliente!");
caixa5.requestFocus();
} else if (caixa6.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null,
"Informe o Cpf do Cliente!");
caixa6.requestFocus();
} else if (caixa7.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null,
"Informe o Bairro do Cliente!");
caixa7.requestFocus();
} else if (caixa8.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null,
"Informe a Cidade do Cliente!");
caixa8.requestFocus();
} else if (caixa9.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null,
"Informe a Uf do Cliente!");
caixa9.requestFocus();
} else if (caixa10.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null,
"Informe o Cep do Cliente!");
caixa10.requestFocus();
} else if (caixa11.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null,
"Informe o Telefone do Cliente!");
caixa11.requestFocus();
} else if (caixa12.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null,
"Informe o Complemento!");
caixa12.requestFocus();
} else if (caixa13.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null,
"Informe o Email do Cliente!");
caixa13.requestFocus();
} else if (caixa14.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null,
"Informe o Rg do Cliente!");
caixa14.requestFocus();
} else if (caixa15.getText().trim().equals("")) {
JOptionPane.showMessageDialog(null,
"Informe a Data de Nascimento do Cliente!");
caixa15.requestFocus();
} else {
ManipulaData md = new ManipulaData();
@SuppressWarnings("unused")
java.sql.Date dataSql = null;
@SuppressWarnings("unused")
java.sql.Date dataSql2 = null;
// try{
Date dataResgatada = md.stringToData(caixa2.getText());
Date data2 = md.stringToData(caixa15.getText());
dataResgatada = new java.sql.Date(dataResgatada.getTime());
data2 = new java.sql.Date(data2.getTime());
dataSql = (java.sql.Date) dataResgatada;
dataSql2 = (java.sql.Date) data2;
JOptionPane.showMessageDialog(null, "Data convertida com sucesso");
// } catch (ParseException e2) {
// // TODO Auto-generated catch block
// e2.printStackTrace();
// JOptionPane.showMessageDialog(null, "Erro ao converte data para sql: " + ((Throwable) e2).getMessage());
// }//
}
Cliente objetoCliente = new Cliente();
objetoCliente.setCodcliente(Integer.parseInt(caixa1.getText()));
objetoCliente.setData((Date)caixa2.getValue());
objetoCliente.setNomeCompleto(caixa3.getText());
objetoCliente.setEndereco(caixa5.getText());
objetoCliente.setCpf((Double)(caixa6.getValue()));
objetoCliente.setBairro(caixa7.getText());
objetoCliente.setCidade(caixa8.getText());
objetoCliente.setUf(caixa9.getText());
objetoCliente.setCep(Integer.parseInt(caixa10.getText()));
objetoCliente.setTelefone(Integer.parseInt(caixa11.getText()));
objetoCliente.setComplemento(caixa12.getText());
objetoCliente.setEmail(caixa13.getText());
objetoCliente.setRg(Double.parseDouble(caixa14.getText()));
objetoCliente.setDatadenascimento((Date)caixa15.getValue());
gerenciador.getTransaction().begin();
gerenciador.persist(objetoCliente);
gerenciador.getTransaction().commit();
JOptionPane.showMessageDialog(null,
"Cliente Incluído com Sucesso!");
caixa1.setText(null);caixa2.setText(null); caixa3.setText(null);caixa5.setText(null);
caixa6.setText(null); caixa7.setText(null);caixa8.setText(null);caixa9.setText(null);caixa10.setText(null);
caixa11.setText(null);caixa12.setText(null);caixa13.setText(null);caixa14.setText(null);caixa15.setText(null);
}
});
botao2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// fecha a janela
Cliente c = new Cliente();
c.setCodcliente(Integer.parseInt(caixa1.getText()));
c.setData((Date)caixa2.getValue());
c.setNomeCompleto(caixa3.getText());
c.setEndereco(caixa5.getText());
c.setCpf(Double.parseDouble(caixa6.getText()));
c.setBairro(caixa7.getText());
c.setCidade(caixa8.getText());
c.setUf(caixa9.getText());
c.setCep(Integer.parseInt(caixa10.getText()));
c.setTelefone(Integer.parseInt(caixa11.getText()));
c.setComplemento(caixa12.getText());
c.setEmail(caixa13.getText());
c.setRg(Double.parseDouble(caixa14.getText()));
c.setDatadenascimento((Date)caixa15.getValue());
gerenciador.getTransaction().begin();
gerenciador.merge(c);
gerenciador.getTransaction().commit();
JOptionPane.showMessageDialog(null,
"Registro Alterado Com Sucesso");
caixa1.setText(null);caixa2.setText(null); caixa3.setText(null);caixa5.setText(null);
caixa6.setText(null); caixa7.setText(null);caixa8.setText(null);caixa9.setText(null);caixa10.setText(null);
caixa11.setText(null);caixa12.setText(null);caixa13.setText(null);caixa14.setText(null);caixa15.setText(null);
}
});
botao3.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// cria nova janela
Cliente c = gerenciador.find(Cliente.class, Integer.parseInt(caixa1.getText()));
gerenciador.getTransaction().begin();
gerenciador.remove(c);
gerenciador.getTransaction().commit();
JOptionPane.showMessageDialog(null,
"Registro Excluido Com Sucesso");
caixa1.setText(null);caixa2.setText(null); caixa3.setText(null);caixa5.setText(null);
caixa6.setText(null); caixa7.setText(null);caixa8.setText(null);caixa9.setText(null);caixa10.setText(null);
caixa11.setText(null);caixa12.setText(null);caixa13.setText(null);caixa14.setText(null);caixa15.setText(null);
}
});
botao4.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// cria nova janela
@SuppressWarnings("unused")
//ListarCliente l = new ListarCliente(fabricaDeEntidades,gerenciador);
ListarCliente list = new ListarCliente(fabricaDeEntidades, gerenciador);
}
});
botao5.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// cria nova janela
RelatorioCliente rep = new RelatorioCliente();
JasperPrint relat;
try {
relat = rep.gerarRelatorioCliente();
JasperViewer.viewReport(relat, false);
} catch (Exception e1) {
e1.printStackTrace();
}
}
});
botao6.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// cria nova janela
dispose();
}
});
// setSize(largura, altura);
setSize(700, 397);
setVisible(true);
setLocationRelativeTo(null);
}
public static void main(String[] args) throws Exception {
fabricaDeEntidades = Persistence
.createEntityManagerFactory("TurmaN40PostgreSQL");
gerenciador = fabricaDeEntidades.createEntityManager();
JanelaCliente app = new JanelaCliente(fabricaDeEntidades, gerenciador);
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
erro
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at JanelaCliente$5.actionPerformed(JanelaCliente.java:478)
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$000(Unknown Source)
at java.awt.EventQueue$1.run(Unknown Source)
at java.awt.EventQueue$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$2.run(Unknown Source)
at java.awt.EventQueue$2.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$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)