Tratamento de Exceção omitir ou retirar ele[RESOLVIDO]

0 respostas
jorgereidinaldo

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

Criado 28 de janeiro de 2012
Respostas 0
Participantes 1