Как получить всю информацию о связывании из WSDL с помощью API JAX-WS

Как получить все привязки, объявленные в WSDL с использованием API JAX-WS (реализация Metro)?

Вариант использования: я собираюсь разрешить пользователям моего приложения динамически вызывать веб-сервис. Для этого я сначала обнаруживаю привязки, затем порты, связанные с привязкой и т. Д. Во время выполнения.

Я просматривал документацию по Metro и обнаружил, что класс WSDLport может быть полезен для получения информации о порте, а затем связывания информации. Но есть идеи, как получить ссылку на этот класс в первую очередь?

1 ответ

В справочной документации по реализации JAX-WS есть несколько шагов, с помощью которых мы можем проанализировать WSDL во время выполнения, чтобы получить необходимую информацию. Но все эти методы возвращают представления XML, т.е. класс QName.


    WSDLModel model = WSDLModel.WSDLParser.parse(parser, null, true, new WSDLParserExtension[0]);
    //To get all service tags
    Map serviceMap = model.getServices();
    //To get all the bindings
    Map bindingInfomation = model.getBindings();
    //To get ports
    Map portMap = model.getPortTypes();
Другие вопросы по тегам