Is there any way to just ignore an element from Jaxb parsing? I have a large XML file, and if I could ignore one of the large, complex elements, then it would probably parse a lot quicker.
It would be even better if it could not even validate the element contents at all and parse the rest of the document even if that element is not correct.
ex:this should only generate Foo.element1 and Foo.element2
<foo>
<element1>I want this</element1>
<element2>And this</element2>
<bar>
<a>ALL of bar should be ignored</a>
<b>this also should be ignored</b>
<c>
<x>a lot of C that take time to process</x>
</c>
<c>
<x>a lot of C that take time to process</x>
</c>
<c>
<x>a lot of C that take time to process</x>
</c>
<c>
<x>a lot of C that take time to process</x>
</c>
</bar>
</foo>
Assuming your JAXB model looks like this:
@XmlRootElement(name="foo")
public class Foo {
@XmlElement(name="element1")
String element1;
@XmlElement(name="element2")
String element2;
@XmlElement(name="bar")
Bar bar;
}
then simply removing the bar
field from Foo
will skip the <bar/>
element in the input document.
Alternatively, annotated the field with @XmlTransient
instead of @XmlElement
, and it will also be skipped.