Olá galera, uma dúvida bem simples, vi em alguns outros tópicos mas não tive muito sucesso...
Estou querendo usar um TextField para receber apenas INT, mas acabei tendo essa mensagem de exceção:
java.lang.NumberFormatException: For input string: ""
Erro na Inserção: For input string: ""
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:493)
at java.lang.Integer.parseInt(Integer.java:514)
at CadastroAcao.btSalvarActionPerformed(CadastroAcao.java:494)
at CadastroAcao.access$200(CadastroAcao.java:25)
at CadastroAcao$3.actionPerformed(CadastroAcao.java:118)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2012)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2335)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:404)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:253)
at java.awt.Component.processMouseEvent(Component.java:6175)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
at java.awt.Component.processEvent(Component.java:5940)
at java.awt.Container.processEvent(Container.java:2105)
at java.awt.Component.dispatchEventImpl(Component.java:4536)
at java.awt.Container.dispatchEventImpl(Container.java:2163)
at java.awt.Component.dispatchEvent(Component.java:4362)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4461)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4125)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4055)
at java.awt.Container.dispatchEventImpl(Container.java:2149)
at java.awt.Window.dispatchEventImpl(Window.java:2478)
at java.awt.Component.dispatchEvent(Component.java:4362)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:604)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:185)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:177)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:138)
A linha 494:
acao.setCodAcao(Integer.parseInt(tf_codigo.getText().trim()));
Na classe Acao, eu estava tentando converter o inteiro para String e informar uma mensagem de erro, mais ou menos assim:
public void setCodAcao(int codAcao) throws NumberFormatException {
String as = Integer.toString(codAcao);
if (as != null && !as.equals("")) {
this.codAcao = codAcao;
}else {
throw new NumberFormatException ("Ação não pode ter código vazio ou nulo");
}
}
Lembrando que na classe CadastroAcao estou usando o try/catch;
O objetivo é apenas tratar a exceção informando ao usuário quando não tenho nada digitado no textfield se por acaso ele quiser registrar uma ação com campos vazios ou nulos...
Alguém ajuda aí por favor....
Abraço, vlw!