<snip> >> >>> >>> *[2] Inclusion of DatabaseConfiguration in configuration.xml* >>> It woould be nice to introduce something like <database> tag in >>> configuration.xml. The content of the tag would be connection string >>> for the database. Example: >>> >>> <?xml version="1.0" encoding="ISO-8859-1" ?> >>> <configuration> >>> <xml fileName="prop1.xml"/> >>> <xml fileName="prop2.xml"/> >>> <properties fileName="prop3.properties"/> >>> <database >>> connect="jdbc:mysql://delovc10.noviforum.si/feeds?user=foo&password=bar"/> >>> >>> </configuration> >> >> Of course, DatabaseConfiguration should be supported. In addition I >> would like to have a mechanism for defining custom tags and including >> user defined configuration classes. > > When I work with (unknown) XML files, the first thing it comes to my > mind is: "Is there a schema for it?". It really helps building XML > files and preventing run time errors. I can make XML Schema for > configuration.xml, and when consolidated with you and other > developers, should be made available at some URL. Schema can be > flexible about additional elements you are mentioning.
If a schema is capable to deal with the required flexibility, it would be really cool to have one. However the XML can become very variable: One feature that is already supported is the ability of setting properties on the newly created Configuration objects. For instance you can write something like that: <properties fileName="..." lineDelimiter=";" throwExceptionOnMissing="true"/> Here for each property of a concrete configuration implementation a corresponding attribute can be specified (this is internally handled by Commons-Digester ATM). There are requests to enhance this initialization syntax to also support more complex objects, e.g. reloading strategies. To handle this in a generic way I think about implementing a mechanism that allows to declare arbitrary objects to be created including their initialization parameters. Could a schema handle such stuff? Oliver --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
