основанные на интерфейсе Java / Groovy веб-сервисы - PullRequest
3 голосов
/ 18 мая 2011

По моему опыту, большинство технологий распределенных объектов (RMI, CORBA и т. Д.) Работают примерно так:

  • определяют интерфейс службы
  • пишут реализацию интерфейса
  • использовать инструмент (rmic, компилятор IDL и т. Д.), Который генерирует код, который позволяет клиенту получить ссылку на реализацию интерфейса с определенной конечной точкой (URL).

Важным моментом является то, что интерфейс сервиса является общим контрактом, которого должны придерживаться и клиент, и сервис.Я посмотрел на metro , и, похоже, он не следует этому шаблону.

Я ищу альтернативные предложения, которые поддерживают этот вид веб-службы на основе интерфейса.развитие.К сожалению, я обязан использовать SOAP, поэтому библиотеки, которые поддерживают только RESTful-сервисы, мне не нужны.

В идеале я хотел бы следовать код-сначала, а не контракт-сначала, т.е.Я определяю (Java) интерфейс службы, и WSDL генерируется из этого, а не наоборот.

Особенно приветствуются решения, которые поддерживают определение или реализацию службы с использованием Groovy (вместо Java).

Ответы [ 2 ]

2 голосов
/ 18 мая 2011

Метро это хорошо (+1), но Apache CXF Simple Frontend делает еще один шаг: вам не нужно ничего комментировать.Он генерирует WSDL, клиенты и серверы из простых интерфейсов Java.

2 голосов
/ 18 мая 2011

Metro позволяет вам аннотировать данный метод, помещать подсказку или две о конечных точках в файлы конфигурации контейнера сервлета, а затем автоматически генерировать WSDL по запросу.

Это очень хорошо, и избавляет вас от необходимости создавать полный WSDL для демонстрации одного или двух методов.

...