I'm writing a Java servlet that needs to read some site-specific configuration data; I would like it to be easily accessible/modifiable by the sysadmins at deployment time. There is no sensible default, so the data needs to be provided by the site admin. It consists of a few string key/value pairs (think Properties). It would only be read once (at initialization time).
I'm aware of this SO question
and the ServletContext.getInitParameter()
mechanism, but as far as
my understanding goes, they require the data to be bundled in the
servlet package (either as a properties file, or specified in the
web.xml
), which makes it inconvenient to upgrade the servlet code.
Is there any "standard" interface for a servlet to get this kind of key/value configuration data? It would be ok if the programming interface is the same everywhere, but the actual way of setting the configuration data depends on the actual servlet container being used.
I'm looking preferably at portable solutions, but I'd be content with something that only works in Tomcat and Jetty.
Thanks!