如何解决带有 JAXB 生成类的 swagger 2
@XmlAccessorType(XmlAccesstype.FIELD)
@XmlType(name = "MyResponse",propOrder = {
"member1","member2","member3"
})
public class MyResponse implements Serializable {
<... other class members; setters/ getters ...>
}
@XmlAccessorType(XmlAccesstype.FIELD)
@XmlType(name = "myRequest",propOrder = {
"test1","test2","test3"
})
public class MyRequest implements Serializable {
<... other class members; setters/ getters ...>
}
但是,swagger 2(版本 3.0.0)生成的示例值如下
<?xml version="1.0" encoding="UTF-8"?>
<JAXBElement«MyRequest»>
<name>
<localPart>jhgkhgk</localPart>
<namespaceURI>gfjgfj</namespaceURI>
<prefix>gfjhgfj</prefix>
</name>
<nil>true</nil>
<MyRequest>
<test1>string</test1>
<test2>string</test2>
<test3>string</test3>
</MyRequest>
</JAXBElement«MyRequest»>
如何强制 swagger 生成示例值
<MyRequest>
<test1>string</test1>
<test2>string</test2>
<test3>string</test3>
</MyRequest>
我的控制器类
public @ResponseBody JAXBElement<MyRequest> test(
@RequestBody JAXBElement<MyResponse> message) {
}
更新一号
只要找出那个推
@ApiImplicitParams({
@ApiImplicitParam(
name = "message",dataTypeClass = MyResponse.class,examples = @io.swagger.annotations.Example(
value = {
@ExampleProperty(value = "{'property': 'test'}",mediaType = "application/xml")
}))
})
在我的控制器之上给出了所需结果的 1/2,现在需要计算 如何添加命名空间
解决方法
找到了解决方案 - 放弃 SpringFox 并使用 springdoc-openapi-ui 代替(如果您是 一个 Java 开发人员)这很容易,即
@io.swagger.v3.oas.annotations.parameters.RequestBody(content = @Content(examples = {
@ExampleObject(
name = "Person sample",summary = "person example",value ="my custom example to be executed")}))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。