Генерация Java-классов из WSDL через Java-программу - PullRequest
3 голосов
/ 23 марта 2010

Я использовал инструмент командной строки wsimport для создания классов, но я хочу сделать это из кода Java.Есть идеи?

Ответы [ 3 ]

2 голосов
/ 23 марта 2010

Можно вызвать метод WsImport main():

import com.sun.tools.ws.WsImport;

...

String[] args = {"put", "your", "arguments", "here"};
WsImport.main(args);

Я думаю, что это то, что делает задача Ant .


Обновление: Я не уверен, что понимаю, что вы пытаетесь сделать (и я не думаю, что вы хотите сгенерировать исходный код и скомпилировать его во время выполнения).

Если вопрос на самом деле касается динамического вызова, то интерфейс динамического вызова (DII) JAX-WS - это объект javax.xml.ws.Dispatch.Проверьте Динамический интерфейс отправки JAX-WS .

0 голосов
/ 23 марта 2010

То, что вы пытаетесь достичь, не является типичным потоком Java Web Services. Но этого можно добиться с помощью языка Groovy на основе динамической JVM , используя модуль GroovyWS .

0 голосов
/ 23 марта 2010

Вы можете использовать задачу wsimport ant программно.

Это можно сделать с помощью класса задач - com.sun.tools.ws.ant.WsImport. Создайте его экземпляр, установите его свойства (как определено в документации по задаче) и вызовите метод execute().

...