我正在使用JAXB javax.xml.bind.Marshaller编组XML并将XSD验证作为其中的一部分。
我要成为元帅的对象是如下所示的复杂类型 我有类似下面的复杂课程
class A{
private B b;
private C c;
}
其中B和C是其他类。
如果XSD验证失败,我在配置的javax.xml.bind.ValidationEventHandler中收到正确的错误消息。
但问题是,我的 locator.object 只有B或C,其中XSD验证失败。
[severity = FATAL_ERROR,message = cvc-maxLength-valid:对于类型为'#AnonType_xxxxx'的maxLength'1',长度='4'的值'test'不是facet-valid。,locator = [url = NULL,线= -1,柱= -1,节点= NULL,的对象= com的.....ç@ 1f4304be 下,字段=空]]
在这里,有没有什么方法与上面的消息一起,我总能获得一个完整的类对象,即 object = com ..... A @ 1f4304be ,以便我可以投射它并用于我的进一步业务处理。
挑战是B类是唯一包含用户唯一标识符的类,因此只要C类出现故障,我就无法找到哪个用户,因为C类没有任何唯一性有关用户的信息。
寻求建议和解决方案!