Можно ли использовать Axis 2 wsdl2java для генерации кода на стороне клиента, использующего HTTPS? - PullRequest
1 голос
/ 22 мая 2009

Используя параметры по умолчанию, инструмент оси 2 wsdl2java принимает в качестве входных данных файл wsdl и генерирует код Java на стороне клиента, который связывается с конечной точкой SOAP с использованием протокола HTTP, как в примере ниже:

wsdl2java -uri MyService.wsdl

Я хотел бы знать, есть ли входной параметр, который можно передать в инструмент wsdl2java для генерации кода на стороне клиента, который обменивается данными через HTTPS с конечной точкой SOAP.

Ответы [ 2 ]

1 голос
/ 22 мая 2009

Мы используем Axis поверх HTTPS довольно регулярно. Как упомянул Тед, приведение в порядок сертификатов SSL (особенно если они подписаны самими собой) очень важно, так как фактически нарушает условия сделки.

С точки зрения кода, мы обычно генерируем наши заглушки Axis против простого сервиса HTTP. Вызов подкласса ServiceLocator, сгенерированный командой wsdl2java, будет иметь метод «getMyService», который принимает URL-адрес в качестве параметра в дополнение к методу, который не принимает параметров. В зависимости от точной версии Axis и названия вашего сервиса, имена классов могут немного отличаться. Но по большей части следующий пример демонстрирует, как легко изменить URL-адрес (HTTPS или HTTP) так, чтобы он указывал в любом месте при создании экземпляров объектов-заглушек.

MyServiceServiceLocator locator = new MyServiceServiceLocator();
MyService_PortType myservice = locator.getMyService(new URL("https://www.myservice.net/MyService.jws"));

Надеюсь, это поможет.

1 голос
/ 22 мая 2009

В следующем посте есть ваш ответ, я не буду заниматься плагиатом и копировать его. Вы можете извлечь эти аргументы из предоставленного муравья xml. Вам нужно беспокоиться о том, чтобы у Java были необходимые сертификаты. Я считаю, что сообщение говорит с клиентским кодом. URL-адрес https может также просто быть указан в WSDL как https.

http://article.gmane.org/gmane.comp.apache.webservices.axis.user/58499

...