Galera tenho este código para validar cpf esta funcionando perfeitamente porem quando digito somente um numero ou dou tab com o campo em braco ele me retorna o seguiten
Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: For input string: " "
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Integer.parseInt(Integer.java:449)
at java.lang.Integer.parseInt(Integer.java:499)
at controle.valida.ValidaDocumento.calcularDigito(ValidaDocumento.java:41)
at controle.valida.ValidaDocumento.isValidCPF(ValidaDocumento.java:61)
at controle.gui.cadastro.Socio$4.focusLost(Socio.java:166)
at java.awt.AWTEventMulticaster.focusLost(AWTEventMulticaster.java:213)
at java.awt.Component.processFocusEvent(Component.java:6180)
at javax.swing.JFormattedTextField.processFocusEvent(JFormattedTextField.java:596)
at java.awt.Component.processEvent(Component.java:6044)
at java.awt.Container.processEvent(Container.java:2041)
at java.awt.Component.dispatchEventImpl(Component.java:4651)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Component.dispatchEvent(Component.java:4481)
at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1850)
at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:910)
at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:568)
at java.awt.Component.dispatchEventImpl(Component.java:4523)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Component.dispatchEvent(Component.java:4481)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:643)
at java.awt.EventQueue.access$000(EventQueue.java:84)
at java.awt.EventQueue$1.run(EventQueue.java:602)
at java.awt.EventQueue$1.run(EventQueue.java:600)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
at java.awt.EventQueue$2.run(EventQueue.java:616)
at java.awt.EventQueue$2.run(EventQueue.java:614)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:613)
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)
como o codigo esta bom teria com deixar sem esta exceção
this.ftCpf = new JFormattedTextField(Mascara.cpfMask());
this.ftCpf.setInputVerifier(new FormattedTextFieldVerifier());
evento
ftCpf.addFocusListener(new FocusAdapter() {
@Override
// au perder o focu
public void focusLost(FocusEvent e) {
//if(ftCpf.getText().indexOf(11)){
//ftCpf.grabFocus();
//}
// try{
boolean cpf =
cpf = ValidaDocumento.isValidCPF(ftCpf.getText().replace(".","").replace("-", ""));
if(cpf!=true){
lblCpfInvalido.setVisible(true);
ftCpf.grabFocus();
System.out.println("teste");
}else{
lblCpfInvalido.setVisible(false);
ftCpf.transferFocus();
}
}
//}
});
ACABEI EU MESMO RESOLVENDO COM UM TRY CATCH