Использование Enunciate с Grails

Я создаю веб-API в стиле RESTful. Конечно, в Grails есть хорошая поддержка для создания веб-сервисов REST. Высказывать утверждения о помощи в части API, где важны такие вещи, как документация, клиентские библиотеки и т. д. .

Цель этого поста - предложить опыт использования Enunciate с Grails или идеи о том, как это можно сделать.

Их совместное использование вызывает две основные проблемы:

  1. Enunciate работает с JAX-RS, а не с собственной реализацией REST от Grails. К счастью, доступен плагин JAX-RS, но я не уверен, сможет ли Enunciate с ним работать.

  2. Классы домена Grails находятся в Groovy, а Enunciate работает с исходным кодом Java (пример) .


person Gaurav    schedule 04.08.2011    source источник


Ответы (1)


Enunciate работает как с исходным кодом Java, так и с байт-кодом, скомпилированным Java. Но если у вас нет исходного кода Java, Enunciate не сможет извлекать материал из ваших JavaDocs для улучшения созданной документации. Учитывая это, должен (теоретически) быть способ применить Enunciate к скомпилированному байт-коду Groovy, но ваша документация не будет такой богатой, потому что Enunciate не сможет увидеть вашу документацию JavaDoc. Я говорю «теоретически», потому что у меня нет личного опыта в этом, и я не знаю, насколько болезненно это делать.

На странице ENUNCIATE-356 есть открытая проблема, чтобы исследовать эту сложность. Обратите внимание, что ENUNCIATE-356 зависит от ENUNCIATE-584, который в ближайшее время может получить больше внимания, поскольку его ведет ENUNCIATE-585 по мере перехода от использования APT (представленного в Java 5, устаревшего в Java 7) к инструменту Javac (представленного в Java 6). Было бы интересно узнать, поддерживает ли инструмент Javac языки, отличные от Java, и в этом случае мы получим поддержку Groovy бесплатно.

person Ryan Heaton    schedule 04.08.2011