[英]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.