Использование JFormattedTextField не позволит вам отобразить JOptionPane с сообщением, так как вы услышите звуковой сигнал при попытке ввести дополнительные символы.Тем не менее, это, вероятно, более распространенный подход, а не отображение всплывающего окна каждый раз.
Однако, если вы действительно хотите всплывающее окно, вам необходимо использовать DocumentFilter.В разделе из учебника Swing по Реализация фильтра документов приведен пример того, как вы хотите.Все, что вам нужно сделать, это заменить «звуковой» код для отображения всплывающего окна.