Troubleshooting Documentum xDB
Cannot save the file. DTD factory class
org.apache.xerces.impl.dv.dtd.DTDDVFactoryImpl
does not extend from
DTDDVFactory
Question:
I am able to access my XML Database in the Data Source Explorer and
open files for reading but when I try to save changes to a file back into the database,
I
receive the following error: "Cannot save the file. DTD factory class
org.apache.xerces.impl.dv.dtd.DTDDVFactoryImpl
does not extend from
DTDDVFactory
." How can I fix this?
Answer:
xhive.jar
contains a MANIFEST.MF with a classpath:
Class-Path: core/antlr-runtime.jar core/aspectjrt.jar core/fastutil-shrinked.jar core/google-collect.jar core/icu4j.jar core/lucene-regex.jar core/lucene.jar core/serializer.jar core/xalan.jar core/xercesImpl.jarSince the driver was configured to use
xhive.jar
directly from the xDB
installation (where many other jars are located), core/xercesImpl.jar
from the xDB installation directory is loaded even though it is not specified in the
list of jars from the data source driver configuration (it is in the classpath from
xhive.jar
- MANIFEST.MF). A simple workaround for this
issue is to copy ONLY the jar files used in the driver configuration to a separate
folder and configure the data source driver to use them from there.