Не рекомендуется редактировать файл wsdl.
ботаем с wsdl поставщика услуг, который не может быть обнаружен по соображениям безопасности, и они предоставляют нам кучу файлов, включая wsdl, xsd и т. Д. Нам необходим доступ к API поставщика. По этим причинам мы сделали следующие вещи:
Мы создали клиент веб-службы, используя форму Netbean 8.0расположение на рабочем столе (локальный файл)Используя сгенерированный код клиента, мы вызвали API, используя следующий кодURL url = new URL("http://serverip:port/payment/services/MgrService");
MgrService svc = new MgrService(url);
Response response = svc.getMgrServicePort().apiRequest(request);
но получать эти исключения
com.sun.xml.internal.ws.wsdl.parser.InaccessibleWSDLException: 2 counts of InaccessibleWSDLException.
java.io.IOException: Server returned HTTP response code: 500 for URL: http://serviceip:port/payment/services/MgrService
java.io.IOException: Server returned HTTP response code: 500 for URL: http://serviceip:port/payment/services/MgrService?wsdl
at com.sun.xml.internal.ws.wsdl.parser.RuntimeWSDLParser.tryWithMex(RuntimeWSDLParser.java:260)
at com.sun.xml.internal.ws.wsdl.parser.RuntimeWSDLParser.parse(RuntimeWSDLParser.java:231)
at com.sun.xml.internal.ws.wsdl.parser.RuntimeWSDLParser.parse(RuntimeWSDLParser.java:194)
at com.sun.xml.internal.ws.wsdl.parser.RuntimeWSDLParser.parse(RuntimeWSDLParser.java:163)
at com.sun.xml.internal.ws.client.WSServiceDelegate.parseWSDL(WSServiceDelegate.java:348)
at com.sun.xml.internal.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:306)
at com.sun.xml.internal.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:215)
at com.sun.xml.internal.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:196)
at com.sun.xml.internal.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:192)
at com.sun.xml.internal.ws.spi.ProviderImpl.createServiceDelegate(ProviderImpl,.java:104)
at javax.xml.ws.Service.<init>(Service.java:77)
По Wireshark мы заметили, что он вызываетполучить метод без мыльного тела, куда надо только позвонитьпочтовый метод , Мы проверили API, используя soapUI, сервис в порядке. Мы также получили успешный ответ, используя необработанный XML-запрос на мыло.
Можно ли работать ссгенерированный клиент как дляJAX-WS и Spring WS когда WSDL не обнаруживается? или это работает только сJAX-WSфайл wsdl. Если так, то нужно ли нам редактировать wsdl? или какой-то другой подход