Resteasy - 从Javadoc和Annotations生成REST文档

时间:2012-01-03 08:29:40

标签: java rest jax-ws jax-rs resteasy

我想找到一种从Java代码(WADL或HTML)生成漂亮的REST API文档的方法 - 基于JAXB,JAX-RS注释和java doc注释(不需要doclet)。

这是我的项目环境

  • Spring,没有XML注释
  • Rest-easy as REST provider
  • JAXB和JAX-RS注释
  • MSON中的休息API的Mime类型

3 个答案:

答案 0 :(得分:14)

尝试Enunciate

  

Enunciate是一个显着增强Java Web服务API的引擎。   这很简单。您使用标准Java技术开发Web服务API,并将Enunciate附加到您的构建过程。突然间,您的Web服务API具有一些非常令人印象深刻的功能:

     
      
  • 从JavaDocs中删除服务的完整HTML文档。
  •   
  • 客户端库(例如Java,.NET,iPhone,Ruby,Flex,AJAX,GWT等),适用于希望与您的API进行交互的开发人员。
  •   
  • 接口定义文档(例如WSDL,WADL,XML-Schema等)
  •   
  •   

答案 1 :(得分:10)

作为Enunciate的替代方案,您可能还会考虑MireDot。它源于我们在自己公司内部使用的工具,并且可以免费用于开源项目。它完全符合您的描述:它结合了jaxrs注释和现有的javadoc注释来生成rest api。它可以作为maven插件使用,您只需添加到项目中即可。 Jaxb注释在撰写本文时尚未得到支持,但该工具正在积极开发中,我们根据建议/请求/反馈选择要实现的功能。

答案 2 :(得分:1)

Java Compiler API允许您编写解析Java源代码并执行自己处理的代码。

这是instructional article,其中包含有关解析注释的信息。

我猜你可以使用这些API提取所需的原始信息。然而,这将产生语法事实 - REST URL和操作和参数,用户也将受益于服务作者可以(应该?)在Java Doc中提供的其他解释。

完整的解决方案可能是解析注释和java文档并将两者结合起来。