Разрыв соединения в приложении Java Swing - PullRequest
0 голосов
/ 01 марта 2012

Я создал консольное приложение, в котором пытался создать сокет-соединение с сервером, используя

Java Class ServerConnect ----

InetAddress hostIpAddress= fnGetHostInetAddress(domainName);  
System.out.println(hostIpAddress.getHostAddress()+""+hostIpAddress.getHostName());  
Socket socket = new Socket(hostIpAddress,43);  

Правильно консольное Java-приложениесоздал соединение с сокетом, но ...

Когда я попытался сделать то же самое через приложение Swing, т.е., вызвав функцию класса ServerConnect для Socket Connection, это не сработало.Когда я пытался отлаживать Swing-приложение, элемент управления зависал в строке

Socket socket = new Socket(hostIpAddress,43);

и не двигался дальше, даже не выдавал никаких исключений. Я использую IDE NetBeans.Приведенный выше фрагмент кода написан в функции внутри класса потока ServerConnect, который реализует исполняемый интерфейс, метод run которого вызывает эту функцию.

вызов для запуска потока выполняется в методе actionPerformed кнопки.

Может кто-нибудь подсказать, в чем может быть проблема / ошибка.

Спасибо

1 Ответ

3 голосов
/ 01 марта 2012

Как вы получаете доменное имя в вашем приложении Swing?Вы уверены, что прочитали правильно?

Другая возможность состоит в том, что если вы вызываете этот код из потока рассылки событий Swing (EDT), например.от слушателя действия, это может расстроить EDT и вызвать некоторые проблемы.Попробуйте запустить его в новой теме.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...