@XmlElement(name =“”,required = true)无法与springboot验证程序一起使用

时间:2019-05-18 15:03:28

标签: spring-boot validation jaxb

最初,我有一个旧的xsd,然后我使用xjc生成了类。我正在尝试使用基于JaxB批注的验证,但似乎验证正在忽略要求。一些xml节点是强制性的,但由于验证器未使用@XMLElement中标记的required,因此对象将进入后端系统,然后失败。

@XmlElement(name =“”,required = true)

@Configuration
public class AppConfig {

    @Bean
    public JaxbAnnotationModule jaxbAnnotationModule() {
        return new JaxbAnnotationModule();
    }

    @Bean
    public ObjectMapper objectMapper() {
        ObjectMapper mapper = new ObjectMapper();
        mapper.registerModule(new JaxbAnnotationModule());
        mapper.setAnnotationIntrospector(new JaxbAnnotationIntrospector(mapper.getTypeFactory()));
        mapper.setSerializationInclusion(Include.NON_NULL);
        return mapper;
    }
}

使用

完成的验证
@Autowired
private Validator validator;
...Some code...
Set<ConstraintViolation<Request>> violations = validator.validate(request);

0 个答案:

没有答案