在 CXF 中公开 RAML 合约而不是 WADL

Expose RAML contract instead WADL in CXF

我是 REST 世界的新手,在我看到的大多数 CXF 示例中,有一个配置可以在发布时在 REST 服务中公开 WADL。

类似

Available RESTful services:
Endpoint address: http://localhost:8080/ouat-servicesImpl/api
WADL : http://localhost:8080/ouat-servicesImpl/api?_wadl

然后,当点击

<application>
  <grammars/>
  <resources base="http://localhost:8080/ouat-servicesImpl/api">
    <resource path="/topics">
      <method name="POST">
        <request>
          <representation mediaType="application/json"/>
        </request>
        <response>
          <representation mediaType="application/json"/>
        </response>
      </method>
    </resource>
  </resources>
</application>

我正在学习 RAML 及其在合约创建方面的优势。有没有办法在这个 CXF "home" 服务页面中公开 RAML 合约?还是我混合了 RAML 和 WADL 的概念/目的?实际上我认为这两种方式都是公开服务契约的方式,但我认为 RAML 更完整

假设您将 CXF 服务打包为 WAR,根据我正在从事的真实项目,以下是实现目标的方法:

奖励积分: