我正在使用'jaxrs-spec'来生成部署在JEE服务器(JBoss Wildfy)中的服务器存根。
由于我需要使用JAXB批注(例如@XmlRootElement)对生成的模型pojos进行批注,因此我启用了“ withXml”选项。这对于“ Java”语言非常有效,但似乎不可能带有“ jaxrs-spec” 。对吗?
结果,由于缺少JAXB批注,尽管yaml文件中定义了xml名称空间,但我的Web服务的jaxrs响应生成了错误的xml(即,没有名称空间声明)。
有人已经设法结合“ jaxrs-spec”语言生成jaxb注释吗?有什么解决方法吗?
伯纳德。
<plugin>
<groupId>io.swagger</groupId>
<artifactId>swagger-codegen-maven-plugin</artifactId>
<version>2.4.0</version>
...
<configuration>
...
<language>jaxrs-spec</language>
<generateModels>true</generateModels>
<withXml>true</withXml>
...
</configuration>
生成的模型示例:
@ApiModel
public class ReadingRequest {..}
预期:
@ApiModel
@XmlRootElement(namespace="...") // <= missing !
public class ReadingRequest {..}
答案 0 :(得分:0)
使用以下解决方法临时(?)解决了问题。
<configuration> <templateDirectory>src/main/resources/templates</templateDirectory> </configuration>