Пустой диалог ошибки при запуске в случае UnknownHostException - PullRequest
0 голосов
/ 05 октября 2010

Когда я запускаю многофункциональное клиентское приложение с JNLP, оно выполняет некоторые запросы к удаленным серверам.Некоторые из этих запросов предназначены для проверки наличия серверов или их отсутствия.Если они недоступны, клиент ловит, например, UnknownHostException, и это вполне допустимый и ожидаемый случай.

Однако, если я укажу настройки прокси в Панели управления Java (Windows-> Пуск-> Настройка-> Панель управления-> Java), при запуске появится следующее сообщение об ошибке:

alt text

Как вы могли видеть, этот диалог совершенно бесполезен, и он не помогает выяснить, в чем дело.Также я попытался установить уровень трассировки в консоли Java на 5, но он также не дал мне никакой полезной информации.

Это диалоговое окно появляется вместе с исключением, которое перехватывается в стартовом приложении.Я повторяю , он перехватывается сразу после его выброса экземпляром HttpClient (commons-httpclient-3.1), и это диалоговое окно не отображается приложением (более того, оно имеет совершенно другой внешний вид).Вот цитата из кода:

    try {
        HttpClient client = new HttpClient(connectionManager);
        GetMethod getMethod = new GetMethod();
        getMethod.setPath(targetUrl.getPath());
        HostConfiguration hostConfiguration = getHostConfiguration();
        client.executeMethod(hostConfiguration, getMethod);
    } catch (Exception e) {
        // some logging
    }

executeMethod бросает UnknownHostException или ConnectTimeoutException здесь.

Если я включаю «Прямое соединение» в диалоговом окне «Панель управления Java-> Настройки сети», проблема не воспроизводится, но проблема в том, что не всегда возможно использовать прямое соединение, иногда требуется прокси-сервер.

Я обнаружил, что проблема не воспроизводима на Java 1.6, но, к сожалению, я должен решить ее как-то без обновления.Я понимаю, что это очень странная проблема и больше похожа на ошибку в JVM, но я надеюсь, что вы могли бы посоветовать мне что-нибудь, чтобы как-то подавить эти раздражающие диалоги.

1 Ответ

0 голосов
/ 05 октября 2010

Похоже, я наконец-то нашел ответ. Здесь ребята столкнулись с довольно похожей проблемой, которая связана с настройками прокси и происходит только с Java 1.5. Я также использую «Использовать скрипт автоматической настройки прокси». И этот сценарий не может вернуть правильный результат для некоторых узлов, которые я проверял, поэтому он вернул ошибку.

Насколько я понимаю, ошибка Java Webstart является основной причиной.

...