Назад | Перейти на главную страницу

Отказано в разрешении с клиентом JAX-WS на сервере tomcat6

У меня странное поведение с 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