繁体   English   中英

使用ServiceMix 7 M3和CXF生成的WADL中缺少方法ID属性

[英]Missing method id attribute in generated WADL with ServiceMix 7 M3 and CXF

我们正在使用ServiceMix 7.0.0.M3,并使用CXF WADL生成器。 现在,生成的WADL在resource> method标签中似乎没有'id'属性。 例如,以下WADL中的第四行没有'id'属性。

<resources base="http://localhost:8181/api/rest/box">
   <resource path="/">
      <resource path="boxes">
         <method name="GET">
            <request>
               <param name="language" style="header" type="xs:string"/>
               <param name="includeInactive" style="query" type="xs:boolean"/>
            </request>
            <response>
               <representation mediaType="application/json;charset=utf-8" element="prefix1:BoxRestResponse"/>
            </response>
         </method>
      </resource>

如果要用Jersey生成WADL,我将获得一个'id'属性,其中包含相应Java方法的名称。

<resources base="http://localhost:8181/api/rest/box">
   <resource path="/">
      <resource path="boxes">
         <method name="GET" id="getBoxes">
            <request>
               <param name="language" style="header" type="xs:string"/>
               <param name="includeInactive" style="query" type="xs:boolean"/>
            </request>
            <response>
               <representation mediaType="application/json;charset=utf-8" element="prefix1:BoxRestResponse"/>
            </response>
         </method>
      </resource>

我们的前端开发工具之一期望'id'属性存在。

是否可以将CXF WADL生成器配置为包括方法id属性?

我找到了。 将WadlGenerator配置属性'addResourceAndMethodIds'添加到CXF蓝图文件时,将生成ID:

   <bean id="wadlGenerator" class="org.apache.cxf.jaxrs.model.wadl.WadlGenerator">
        <!-- properties: Method Summaries @ https://cxf.apache.org/javadoc/latest/org/apache/cxf/jaxrs/model/wadl/WadlGenerator.html -->
        <property name="linkJsonToXmlSchema" value="true" />
        <property name="useJaxbContextForQnames" value="true" />
        <property name="addResourceAndMethodIds" value="true" />
    </bean>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM