Я занят проектом для школы, в котором я использую InputDialogbox, чтобы получить имя хоста от пользователя, чтобы установить соединение с клиентским сокетом.
Есть две вещи, которые меня немного озадачивают.
Сначала я устанавливаю соединение на стороне сервера, а затем устанавливаю соединение с клиентом следующим образом.
input = JOptionPane.showInputDialog(null, "Please enter host name to access" +
"server(dotted number only)...see number on frame", "name",
JOptionPane.INFORMATION_MESSAGE);
clientSocket = new Socket(input, 7777);
что меня так озадачивает, если я нажимаю клавишу ввода в диалоговом окне, не вводя никаких данных ... т.е. без указания IP-адреса соединение с сокетом устанавливается независимо. Почему это так?
Чтобы преодолеть эту «проблему», я решил попытаться заставить пользователя сделать запись в диалоговом окне
if(input.equals(""))
{
throw new EmptyFieldsException();
}
Дело в том, что теперь, если я нажимаю на кнопку отмены, я получаю исключение NullPointerException.
Как я могу отменить диалоговое окно без получения этого исключения?
С уважением
Arian