Theodor Keinstein
Theodor Keinstein

Reputation: 1643

Java and XML: How to get list of included files

I have problem with by Xinclude or as an entity included files. I need to know, which files have been included by parser. Example:

<?xml version="1.0" ?>
<!DOCTYPE docBookChapter [
    <!ENTITY externalFile SYSTEM "entityIncluded.xml">
]>
<chapter xmlns="http://www.w3.org/1999/xhtml"
xmlns:xi="http://www.w3.org/2001/XInclude">
    <title>Third chapter</title>
    <xi:include href="xIncluded.xml"/>
    <chapter>
        &externalFile;</chapter>
</chapter>
The parser creates DOM successfully, but how to get names of files included? The element xi:include is already replaced with content of file.

Upvotes: 1

Views: 410

Answers (1)

Andreas Dolk
Andreas Dolk

Reputation: 114767

Extend DefaultHandler and @Overwrite the resolveEntity method. Your implementation will simply print or log the publicId/systemId and return null, so the SAXParser will use the default behaviour to resolve the entities.

Pass your DefaultHandler subclass with the SAXParser constructor.

Upvotes: 1

Related Questions