Hi, I appoligize for the format of this posting. I was not subscribed when I sent the original so I pasted the previous message into this one.
I have attaced a set of XML files which help describe the possible issue I found. Here is the configuration file which loads three XML files. =============<snip>================ <?xml version="1.0" encoding="UTF-8"?> <configuration> <header> <result> <expressionEngine config-class=" org.apache.commons.configuration.tree.xpath.XPathExpressionEngine"/> </result> </header> <xml config-name="ServerConfig3" fileName="TableSet3.xml"> <reloadingStrategy config-class=" org.apache.commons.configuration.reloading.FileChangedReloadingStrategy" refreshDelay="2000"/> </xml> <xml config-name="ServerConfig1" fileName="TableSet1.xml"> <reloadingStrategy config-class=" org.apache.commons.configuration.reloading.FileChangedReloadingStrategy" refreshDelay="2000"/> </xml> <xml config-name="ServerConfig2" fileName="TableSet2.xml"> <reloadingStrategy config-class=" org.apache.commons.configuration.reloading.FileChangedReloadingStrategy" refreshDelay="2000"/> </xml> </configuration> File #1 <?xml version="1.0" encoding="UTF-8"?> <ServerConfig1> <datagroup> <table name="table1" permission="group-A"> Data from file 1, table 1 </table> <table name="table2" permission="group-B"> Data from file 1, table 2 </table> <table name="table3" permission="group-C"> Data from file 1, table 3 </table> </datagroup> <userperm> <allowed rank="manager" /> </userperm> </ServerConfig1> File #2 <?xml version="1.0" encoding="UTF-8"?> <ServerConfig2> <datagroup> <table name="table4" permission="group-D"> Data from file 2, table 4 </table> <table name="table5" permission="group-E"> Data from file 2, table 5 </table> <table name="table6" permission="group-F"> Data from file 2, table 6 </table> </datagroup> <userperm> <allowed rank="manager" /> </userperm> </ServerConfig2> File #3 <?xml version="1.0" encoding="UTF-8"?> <ServerConfig3> <datagroup> <table name="table7" permission="group-G"> Data from file 3, table 7 </table> <table name="table8" permission="group-H"> Data from file 3, table 8 </table> <table name="table9" permission="group-I"> Data from file 3, table 9 </table> </datagroup> <userperm> <allowed rank="manager" /> </userperm> </ServerConfig3> =============<snip>================ Each XML file has a unique filename and a unique root node. The nodes within each XML file are the same but the data is different. I use a CombinedConfiguration to load the XML files. Because the root node is not retained as a key the only the first XML file is accessabel in the CombinedConfiguration. Is this a bug or is it that a CombinedConfiguration cannot be used for XML files which are too similar? Thanks, Tom DeBruycker Tom DeBruycker wrote:
Hi, I have a question about what seems to be the design choice to ignore the root node of XML files when creating the keys for a configuration. It seems that the root node is part of what contributes to the uniqueness of the
XML
file. If the root is ignored isn't it possible that nodes could be inadvertently combined? This could just be my lack of understanding for the XMLConfiguration design. If someone would explain the design choice I would appreciate it. Thanks in advance. Tom
Can you give an example for what you mean by "inadvertently combined"? I guess the original idea was just convenience: Because the root element of a XML configuration typically is not changed during property access, there does not seem to be much value in requiring it to be part of the keys. Oliver