Dear Wiki user, You have subscribed to a wiki page or wiki category on "Tomcat Wiki" for change notification.
The "HowTo" page has been changed by hotmaz. The comment on this change is: added a new method for loading properties from WebApp by Maz. http://wiki.apache.org/tomcat/HowTo?action=diff&rev1=88&rev2=89 -------------------------------------------------- See AntDeploy == How do I load a properties file? == - Here are the two most popular ways:: + Here are the three most popular ways:: + * Use a classloader's getResource to get an url to the properties file and load it into the Properties. The properties file must be located within the webapp classpath (i.e. either WEB-INF/classes/... or in a jar. + A challenge is to get the classloader when you are in a static initializer: + {{{ + public class Config { + private static java.util.Properties prop = new java.util.Properties(); + private static loadProperties() { + // get class loader + ClassLoader loader = Config.class.getClassLoader(); + if(loader==null) + loader = ClassLoader.getSystemClassLoader(); + + // assuming you want to load application.properties located in WEB-INF/classes/conf/ + String propFile = "conf/application.properties"; + java.net.URL url = loader.getResource(propFile); + try{prop.load(url.openStream());}catch(Exception e){Syste,.err.println("Could not load configuration file: " + propFile);} + } + } + }}} + + This method even works in a standalone java application. So it is my preferred way. * Use a `ResourceBundle`. See the Java docs for the specifics of how the `ResourceBundle` class works. Using this method, the properties file must go into the `WEB-INF/classes` directory or in a jar file contained in the `WEB-INF/lib` directory. --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org