@RestController也接受不需要的标签

爱你

我使用spring boot创建了spring REST Web服务。它在requestbody中接受XML。问题是,它也接受不需要的标签并给出结果,我想对此加以限制并通知用户。如何在到达控制器之前或通过任何其他方式针对xsd验证请求正文(xml)。请提出建议。

控制器:

@PostMapping(value = "/webservice/{text}", produces = { MediaType.APPLICATION_XML_VALUE })
    public ServiceResult processRequest(@PathVariable("text") String text,
            @RequestBody Request Request) {

豆子:

@XmlRootElement(name="Request")
@XmlType(propOrder = {"requestHeader", "requestBody"})
public class Request implements Serializable {

    private RequestHeader requestHeader;
    private RequestBody requestBody;

    @XmlElement(name="RequestHeader")
    public RequestHeader getRequestHeader() {
        return requestHeader;
    }

    public void setRequestHeader(RequestHeader requestHeader) {
        this.requestHeader = requestHeader;
    }

    @XmlElement(name="RequestBody")
    public RequestBody getRequestBody() {
        return requestBody;
    }

    public void setRequestBody(RequestBody requestBody) {
        this.requestBody = requestBody;
    }
}
洛普申

然后,您可能想对不需要的标签失败:https : //fasterxml.github.io/jackson-databind/javadoc/2.0.0/com/fasterxml/jackson/databind/DeserializationFeature.html#FAIL_ON_UNKNOWN_PROPERTIES另外,如果可以使用Bean验证以验证值。但是,此验证与xsd无关

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章