Могут ли Spring RESTful-сервисы использовать WADL или что-то подобное? - PullRequest
2 голосов
/ 29 июня 2011

Положение:

Мы планируем создать набор новых сервисов, а также набор старых веб-сервисов SOAP (Spring, apache CXF). Наши клиенты привыкли использовать? Wsdl для получения wsdl, описывающего услугу и контент, который она будет принимать / возвращать.

Я смотрю на предоставление новых услуг через контроллеры пружины и URL-адреса RESTful. Однако не все запросы могут быть обработаны с помощью URL-адреса RESTful, поэтому нам все еще нужно иметь запрос полезной нагрузки и ответы. Я смотрю на использование @RequestBody и @ResponseBody и конвертеров сообщений Spring для автоматической (волшебной) обработки содержимого XML и JSON. Идея состоит в том, чтобы позволить пружине выполнять как можно большую часть подъема.

Проблема:

Я пытаюсь выяснить, возможно ли это, учитывая концепцию конвертера REST / Message, чтобы иметь возможность предоставить описание службы и ее данных запроса / ответа аналогично запросу? Wsdl. Я понимаю, что есть документы WADL, которые могут быть сгенерированы некоторыми системами, но они кажутся предложенными и еще не полностью приняты.

Кто-нибудь знает, может ли Spring генерировать WADL или что-то еще, что я могу использовать, чтобы позволить клиентам запрашивать структуры данных сервисов RESTful?

Ответы [ 3 ]

3 голосов
/ 06 марта 2012

SpringMVC не поддерживает автоматическую генерацию WADL, в основном потому, что не использует стандартный REST API JSR-311.
У меня есть запись в блоге с простым контроллером поколения WADL в Java:
Tuxgalaxy Запись в блоге .
Но Томаш Нуркевич также предоставляет контроллер поколения WADL в scala:
nurkiewicz Запись в блоге .

2 голосов
/ 29 июня 2011

Вы можете использовать CXF JAX-RS для своих REST-сервисов, поскольку вы уже используете его для SOAP (вы даже можете предоставить тот же сервис, что и SOAP и REST с CXF), а CXF дает вамWADL, который вы хотите, добавив? _Wadl & _type = xml

0 голосов
/ 26 мая 2014

Следующий код будет работать с Spring REST 4x и основан на предложенном коде от tuxgalaxy, представленном ниже https://jira.spring.io/browse/SPR-8705

http://javattitude.com/2014/05/26/wadl-generator-for-spring-rest/

...