【发布时间】:2015-07-26 11:54:41
【问题描述】:
我正在使用 java SimpleXML 来解析来自多个应用程序的 XML。
许多应用程序为这个假定的“标准”创建了古怪的 XML 实现,例如多次放入“启用”标签。
在这种情况下,我只想忽略第二个,因为它是一个错误并且与第一个具有相同的值,但是 SimpleXML 抛出异常“元素'已启用'已被使用”
如何防止这种情况发生?
这是被投诉的领域。
@Element(required = false)
protected boolean enabled = true;
XML 很大,所以不想发布它。有没有办法让 SimpleXML 报告导致错误的行号?
【问题讨论】:
-
你能举个例子吗?
-
更新显示java字段注释,但是大量的XML,所以宁愿追踪确切的行号来发布sn-p。有没有办法获取行号?
-
我还有一个问题。即使我使用的是 Root(strict = false) 和 read(strict=false),simplexml 仍然是严格的。我真的希望它忽略问题。
-
你不能先使用 XSLT 来预处理 XML 以删除重复的标签,然后使用 SimpleXML 来解析它...要使用 XSLT 删除重复的元素,你可以点击链接 stackoverflow.com/questions/10912544/…
-
接下来我会尝试这样做,但我希望首先让 SimpleXML 停止严格的验证。我似乎无法关闭它,但不知道为什么。我希望在非严格模式下它可能会简单地忽略该属性的第二个设置。任何想法为什么它可能会忽略我关闭严格的尝试?
标签: java xml xml-parsing simple-framework