Brilliant! Yeah, this is a great extension to my paltry start... :) Thanks,
Ted Kirby On 3/3/07, David Jencks <[EMAIL PROTECTED]> wrote:
Following Ted Kirby's idea of property substitution in config.xml files (GERONIMO-2735) I applied and modified his patch. Jason Dillon had a jexl expression evaluator lying around so I replace the evaluation code in the patch with the jexl stuff, so now you can use expressions in your substitutions. The substitutions are in a new file, default location var/config/ config-substitutions.properties. This is used to evaluate expressions in config.xml. I implemented a small example in geronimo- jetty6-jee5 for the jetty connectors, using hostName httpPort httpsPort portOffset. You can override a value in the properties file with an environment variable or a system property. Therefore, to start a server on a different set of jetty connector ports, you can say: java -DportOffset=1 -jar bin/server.jar --long
I particularly like how this elegantly addresses the multiple server instances port numbering issues, to make it very easy to define multiple server instances. Just give a server name and port offset, and you are set. Now, if I can only locate where port 4200 is set... :) (See my user posting here http://article.gmane.org/gmane.comp.java.geronimo.user/5966 .) Ted Kirby
If this generally seems like a good idea and no one has a better idea I'll go through the config.xmls and use substitutions more systematically in a few days. One question I have is whether it's really a good idea to use environment variables for substitutions. I really don't know and would appreciate more informed opinions. Also, you can specify an alternate properties file on the command line with java -Dorg.apache.geronimo.config.substitutions.file=where.ever.you.want Many thanks to ted for coming up with the original patch and pushing for it. thanks david jencks
