Этот вопрос все зависит от следующего:
- Версия JDK вашего компилятора Java.
- Ваша версия WSDL (есть 1.0, 1.2 и 2.0).
По сути, если вы используете аннотации Java для создания веб-сервисов, то вам потребуются связанные с Java 5 библиотеки веб-сервисов (которые поддерживают аннотации).
Некоторые статьи об использовании веб-служб Java с аннотациями (JAX-WS):
Я начну с создания клиента Web-сервиса с Java, который не поддерживает аннотации. Хорошо известным клиентом, генерирующим WSDL для Java, является Apache Axis (последняя версия 1.4 выпущена 22 апреля 2006 года). Это в основном берет определение WSDL и генерирует его обратно клиенту. Он поддерживает старую версию WSDL (1.0) и аварийно завершает работу, если вы используете более новые версии WSDL (1.2 и 2.0).
Что это в основном делает, он берет ваш WSDL и генерирует Java-прокси, который связывается с вашей веб-службой. Он может разрешать связь как на основе RPC, так и на основе XML.
Для Java, который поддерживает аннотации, есть два способа сделать это:
- Использование собственной команды Java wsimport (исполняемый файл находится в папке
JDK_HOME/bin/
).
- Использование сторонних библиотек, таких как Apache Axis 2 (который эффективно заменяет Apache Axis и поддерживает WSDL версии 2.0) или Apache CXF (который поддерживает WSDL до 1.2).
Чтобы использовать wsimport, вам в основном нужно перейти к команде оболочки (или написать скрипт) и эффективно сделать что-то из этого:
wsimport -d [outputdir] wsdl_file
и ваш java-прокси будет найден в папке [outputdir]
.
wsimport
находится в JDK 1.6 (я не знаю, существует ли он в более ранних версиях). Больше источника здесь и здесь .
Для Apache Axis, Apache Axis 2 или Apache CXF существует файл класса WSDL2Java
, который выполняет генерацию исходного кода.
Вот руководство по использованию WSDL2Java
в Apache CXF и в Apache Axis 2 .
Надеюсь, это поможет вам так же, как я потратил 30 минут на работу, занимаясь этим. : -)