#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.