Памылка пры стварэнні класаў Java з WSDL з дапамогай wsimport

Я займаюся распрацоўкай вэб-службы з дапамогай JAX-WS . Пасля публікацыі вэб-службы, калі я спрабаваў генераваць кліенцкія заглушкі з дапамогай wsimport я знайшоў наступнае пытанне.

C:\Documents and Settings\vberi\prac_workspace_27_05_2013\WS-Client\src>wsimport
 -s . http://ntlnvn.bmb.com:8080/WS/Greeting?wsdl

разбору WSDL ...

[ERROR] file:/C:/Documents%20and%20Settings/vberi/prac_workspace_27_05_2013/WS-C
lient/src/ûs

недасяжны

    Failed to parse the `WSDL`.

**I am able to open wsdl through http://mtlnvn.bmb.com:8080/WS/Greeting?wsdl**

1

6 адказы

Паспрабуйце наступныя крокі:

  1. <�р> Перайсці да WSDL файл http://www.webservicex.net/geoipservice. ASMX? WSDL
  2. Пстрыкніце правай кнопкай мышы захаваць як (захоўваючы яго на лакальным кампутары), даць некаторы імя сказаць geoipservice (за выключэннем тыпу будзе XML-дакумент па змаўчанні, так што не захаваць як geoipservice.xml снова)

  3. Зараз увядзіце wsimport geoipservice.xml у ЦМД, вы атрымаеце згенераваны клас.

2
дададзена
калісьці вам трэба паўтарыць той жа шлях для залежнасцяў XSD. Напрыклад, вам прыйдзецца захаваць LOCALHOST: 8080/MyAPI XSD = 1 як лакальны XSD файл і адаптаваць бацькоўскі XML-элемент «імпарту»: (атрыбут «месцазнаходжанне») да імя файла XSD замест LOCALHOST URL ..
дададзена аўтар boly38, крыніца

Я працую на той жа падручнік, і сутыкнуўся з той жа праблемай. Зрабіў усё, прапанаванае ў гэтых адказах.

Тое, што спрацавала для мяне было выдалення «<�моцны> -s. " частка з каманды wsimport.

Калі я пабег

wsimport http://localhost:8080/WS/Greeting?wsdl command, all the files got created without an issue.

Спадзяюся, што гэта будзе працаваць для іншых.

1
дададзена

Being new to developing Webservices using JAX-WS, I was facing a similar issue, and was following this tutorial

Рашэнне Вы можаце паспрабаваць гэта: -

o As said in one of the answers, correct the url, between ntlnvn and mtlnvn

o Make sure the project name should not contain spaces or special characters like - _ . , don't know the exact reason for it, but renaming the project has worked for me once. Maybe the wsimport command has problem dealing with spaces and special characters .

o Most important, which worked for me is that change the build command to:-

<�Код> wsimport -keep http://mtlnvn.bmb.com:8080/WS/Greeting?wsdl

0
дададзена

Тыя крокі, якія я зрабіў:

1.- Каб пераканацца, што ваша злучэнне нармальна і вэб-сэрвіс даступны: Адкрыць WSDL ў браўзэры (як вы гэта рабілі). Акрамя таго, вы можаце праверыць яго з завітком.

2.- To make sure that your configuration is all ok: You can test wsimport with another url, for example: wsimport -d C:\deleteFolder -verbose -B-XautoNameResolution http://www.xmlme.com/WSAmazonBox.asmx?WSDL

Мая канкрэтная праблема заключалася ў тым, што я выкарыстоўваю імя хаста (хост-файл з акна). Я змяніў імя для IP і ў мяне была іншая іншая праблема (не ўдалося прачытаць дакумент WSDL). Магчыма, гэта магло б дапамагчы.

Іншы тэст я зрабіў для завяршэння працы сервера. Я быў трохі шакаваны, калі я зразумеў, што памылка была такой жа! ([...] недасяжная, не ўдалося разабраць WSDL).

0
дададзена

Я мяркую, што сувязь пры ўмове, даступная толькі ўнутры вашай сеткі.

Я лічу, што праблема можа быць памылкай друку. ntlnvn супраць mtlnvn. Першая літара не тое ж самае.

0
дададзена

У мяне была такая ж праблема, і рашэнне, каб выдаліць усе прабелы з вашага шляху праекта. Пасля змены ён працаваў добра.

У вашым выпадку шлях павінен быць:

    C:\Documents_and_Settings\vberi\prac_workspace_27_05_2013\WS- Client\src>wsimport...

Вядома, гэта не можа быць, то вы павінны змяніць шлях праекта.

Праблема ў mentoined тут

0
дададзена