[英]Unmarshalling, xml to java, invalid enum values are getting ignored that are not defined in XSD
我的XSD
文件仅定义5种类型:
<xs:simpleType name="Types">
<xs:restriction base="xs:string">
<xs:enumeration value="TypeA" />
<xs:enumeration value="TypeB" />
<xs:enumeration value="TypeC" />
<xs:enumeration value="TypeD" />
<xs:enumeration value="TypeE" />
</xs:restriction>
</xs:simpleType>
但是,假设某个用户发送“ TypeF
”,这是不是有效的类型,然后unmarshalling
,使用JAXB,完全忽视了价值,我想验证这个值和用户发送错误请求异常。 我如何确定如果用户在XML
中输入了无效的Type,它不会被忽略?
您可以在Unmarshaller
上指定ValidationEventHandler
的实例,并在handleEvent
方法上返回false,以使JAXB无效值失败。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.