Что лучшие инструменты должны использовать для генерации файлов WSDL из файлов класса Java?
Столкновение с некоторыми проблемами с помощью Java2WSDL и задаваясь вопросом, каковы мои другие опции. Последняя проблема - то, что это не кодирует Строку [] как массив/последовательность. Проникает в WSDL как тип xsd:string
Лучшим я думаю - хороший чистый WSDL и использованный.NET и другими клиентами Java очень легко.
Мой любимый метод - просто использовать NetBeans для создания веб-службы. Затем я использую редактор графического интерфейса для определения своих методов и т. Д., А затем пишу код для логики веб-службы. NetBeans автоматически сгенерирует WSDL для вас, когда вы перейдете по URL-адресу http: // localhost / Application / MyService? WSDL (или вы также можете экспортировать его).
Когда я делаю это и определяю возвращаемый тип как String []
, полученный complexType выглядит следующим образом:
<xs:complexType name="response">
<xs:sequence>
<xs:element name="return" type="xs:string" nillable="true" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
Я думаю, это то, что вам нужно.
Какие инструменты лучше всего использовать для генерации WSDL файлов из файлов классов Java?
Самым простым способом будет аннотирование вашего класса Java аннотациями JAX-WS. Вот (базовый) пример:
package helloservice.endpoint;
import javax.jws.WebService;
@WebService
public class Hello {
private String message = new String("Hello, ");
public void Hello() {}
@WebMethod
public String sayHello(String name) {
return message + name + ".";
}
}
WSDL будет генерироваться динамически во время выполнения (но вы также можете сгенерировать и развернуть статическую версию).
См. Создание простой веб-службы и клиента с помощью JAX-WS в Учебниках Java EE.