Mathis Hofer wrote:
HiI have a question about looping through multiple nodes with HierarchicalConfiguration. This is how my data looks like: <image> <filename>foo.jpg</filename> <rank>0</rank> <tile> <point> <x>491</x> <y>559</y> </point> <point> <x>451</x> <y>612</y> </point> <point> <x>405</x> <y>779</y> </point> </tile> <tile> ... </tile> ... </image> <image> <filename>bar.jpg</filename> <rank>1</rank> ... <image> Now if I get the amount of images with getMaxIndex() I get 2, which is correct: int numImages = config.getMaxIndex("image"); But if I get the amount of tiles within the first image I get 0, although there are a few tiles: int numTiles = config.getMaxIndex("image(0).tile"); Also when trying to get the property I get the output from the else statement, so no collection is available: Object prop = config.getProperty("image(0).puzzletile"); if (prop instanceof Collection) { System.out.println("numTiles="+((Collection)prop).size()); } else { System.out.println("is not a Collection"); } What am I doing wrong? Maybe as an addition: The above data structure is simplyfied. The <image> is already in some other node. There are other single-properties (like integers and strings) on the same level as image which I can read out, so the path to it should be alright. I'm glad if someone can help me... Regards, Mathis
As a tip: When working with such complex structures you might want to have a look at the configurationsAt() method of HierarchicalConfiguration. It returns a collection of sub configurations, which is much easier to handle than looping through the nodes and constructing indices by hand.
Oliver --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
