У меня странное поведение с java-клиентом, который использует заглушки веб-сервиса, сгенерированные wsimport.
Клиент что-то сказал о
Got Permission denied: connect while opening stream from http://dev:8080/LicenseServer/services/ServerImpl?wsdl
Но я могу открыть URL-адрес в своем веб-браузере, и wsdl отображается правильно. Также я могу управлять Soap11Binding / HttpSoap11Endpoint из моего браузера.
Подсказка может заключаться в том, что имя хоста "dev" разрешено C: \ Windows \ System32 \ driver \ etc \ hosts.
Запуск java-клиента из той же сети, что и сервер, не вызывает проблем.
Может быть, процесс инициализации заглушки полагается на «реальное» разрешение DNS имени хоста?
Эта проблема не была связана с jax-ws или wsdl. Просто дело в том, что стеки jre7 и ipv6stacks несовместимы на большинстве устройств. Смотрите также https://forums.oracle.com/forums/thread.jspa?threadID=2395610 или http://jonathangiles.net/blog/?p=1126
Я решил это, поставив -Djava.net.preferIPv4Stack=true
к моим аргументам JVM