我正在尝试为我们的API生成swaggger文档。
我所做的是基于 org.apache.cxf.jaxrs.swagger.Swagger2Feature
<bean id="MySwagger2Feature" class="org.apache.cxf.jaxrs.swagger.Swagger2Feature" abstract="true">
<property name="scanAllResources" value="true"/>
<property name="title" value="Swagger API for Restful Services"/>
<property name="description" value="Swagger API for Restful Services"/>
<property name="version" value="1.0.0"/><!--TODO:: version -->
<property name="prettyPrint" value="true"/>
</bean>
,然后为每个Service(Endpoint)创建一个单独的bean,以扩展父bean。
<bean id="dashboardSwagger" parent="MySwagger2Feature">
<property name="basePath" value="/services/rest/dashboard"/>
</bean>
<bean id="usersSwagger" parent="MySwagger2Feature">
<property name="basePath" value="/services/rest/users"/>
</bean>
然后将它们添加到<property name="features">
,但是问题在于所有服务都返回相同的swagger.json,而这是按字母顺序排在第一位的。
所以我搜索了互联网,一些开发人员说我应该添加
<property name="usePathBasedConfig" value="true" />
每个子bean。当我这样做时,所有服务现在都将返回此swagger.json文件。
{
"swagger": "2.0"
}
请提出任何建议。