Generate wadl from existing CXF rest service

2019-09-17 15:14发布

我有工作与CXF实现JAX-RS服务。 我怎样才能生成WADL? 或者是有什么像球衣HTTP://path.to.your/restapp/application.wadl在那里了吗? 有一个Maven插件一样的WSDL,Java到WSDL? 我寻找答案找不到。

Answer 1:

如果您使用的是最新CXF的版本,正好砸在服务用?_wadl参数。



Answer 2:

有很多可能的方式利用CXF生成WADL:

  1. 您可以发送REST调用(使用邮差 ,例如)到基REST URL,它会自动从那里所有的服务创建WADL。 它可以帮助构建REST API。 例如:
    • http://app.com/purchase/?_wadl -创建WADL转让API
    • http://app.com/profile/?_wadl -创建WADL用户配置文件API
  2. CXF 3.0.0和2.7.11介绍java2wadl插件在构建时生成WADL。 详细clould找到这里 。
  3. CXF关于WADL的所有可用功能都位于在CXF文档 。

WADL已经产生之后,它会是不错的XML转换到更可读的形式。 一,我找到了解决办法是使用XSL来生成HTML。 我从使用XSL github上的项目 。 步骤XSL链接到XML并生成HTML漂亮的报告:

  1. 下载wadl.xsl;
  2. 复制wadl.xsl到包含由CXF生成wadl.xml文件的文件夹;
  3. 添加所需的头wadl.xml到文件的开始:

    <?xml version="1.0" encoding="UTF-8"?>

    <?xml-stylesheet type="text/xsl" href="wadl.xsl"?>

  4. 在wadl.xml生成替换<application ...>头使用<wadl:application xmlns:wadl="http://wadl.dev.java.net/2009/02" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://wadl.dev.java.net/2009/02 wadl.xsd ">

  5. 添加到每个标签“WADL”命名空间。 例如:

    <resource> - > <wadl:resource>

    </resource> - > </wadl:resource>

  6. 使用IE打开wadl.xml

  7. 你会得到这样的事情(example_wadl.xml从GitHub的项目 ):



文章来源: Generate wadl from existing CXF rest service
标签: java cxf jax-rs