jaxb xjc -команда wsdl в неизвестном месте

#java #web-services #soap #jaxb #wsdl

#java #веб-сервисы #soap #jaxb #wsdl

Вопрос:

Я пытаюсь сгенерировать классы схемы из wsdl с помощью инструмента JAXB xjc, и я сталкиваюсь с приведенным ниже сообщением:

xjc -verbose -wsdl https://xyz/wsdl.aspx

анализ схемы…

компиляция схемы…

[ИНФОРМАЦИЯ] генерирующий код

неизвестное местоположение

Тем не менее, я попытался использовать другой URL-адрес wsdl, как показано ниже:

xjc -verbose -wsdl http://wsf.cdyne.com/WeatherWS/Weather.asmx?wsdl

анализ схемы…

компиляция схемы…

[ИНФОРМАЦИЯ] генерирующий код

неизвестное местоположение

comcdynewsweatherwsArrayOfForecast.java

comcdynewsweatherwsArrayOfWeatherDescription.java

comcdynewsweatherwsForecast.java

и т.д….

Для этого ‘Weather’ wsdl, хотя я заметил, что есть ‘неизвестное местоположение’, команда может успешно сгенерировать классы схемы.

Я попытался погуглить и сослаться на приведенный ниже сайт, но не смог найти ничего полезного по этому вопросу. https://jaxb.java.net/2.2.4/docs/xjc.html

Я не совсем понял из журнала xjc (в котором указано «неизвестное местоположение»), в чем именно проблема?

Если это проблема, то как она может генерировать классы схемы для второго ‘Weather’ URL wsdl?

Как мне устранить проблему и сгенерировать файлы схемы для первого URL (https://xyz/wsdl.aspx)?

Я пытался использовать ‘jaxb2-maven-plugin’ внутри eclipse, но не сгенерировал ни одного файла без каких-либо ошибок. Это также по той же причине?

Ответ №1:

Скорее всего, он жалуется на URL <wsdlsoap:address location =»…» /> и не может связаться со службой. Этот элемент находится внутри элемента wsdl:port, который находится внутри элемента wsdl:service.