JOptionPane.showMessageDialog com LostFocus

Alguem sabe como faz para um LostFocus nao mostrar várias vezes a mesma mensagem, exemplo:

private void jTextField1FocusLost(java.awt.event.FocusEvent evt) {                                      
        try {
            if (jTextField1.getText().trim().length() == 0) {
                throw new Exception("campo obrigatorio");
            }
        } catch (Exception ex) {
            jTextField1.requestFocus();
            JOptionPane.showMessageDialog(null, ex.getMessage());
        }
    }                                     

essa mensagem dispara 4 vezes dessa forma, o que eu quero fazer eh que ao sair do campo valide se esta nulo, caso esteja mostre a mensagem e o foco permaneca no campo.