The Application Data Directory is the folder that OpenMRS uses for external storage of data. Typically, this will include things like OpenMRS modules, Lucene indexes, OpenMRS's runtime configuration properties and any attachments. Other files might be added here depending on which modules you have installed.
Default location
As of version 1.8, openmrs will put this directory in the current running directory. If you are using Tomcat, this will be a directory relative to your CATALINA_HOME
environment variable. If Tomcat was installed following the instructions on the Wiki, this should be either /opt/tomcat7/.OpenMRS on Linux or C:\Program Files\Apache\Tomcat 7.0\OpenMRS on Windows.
In version 1.7 and earlier, the default location is the home directory of the user running tomcat. ~/.OpenMRS on Linux or C:\Documents and Settings\yourusername\Application Data\OpenMRS on Windows.
Manually setting the location
You have several options if you want to have control over where this directory is:
- Add a key to your runtime properties file:
- application_data_directory=/my/custom/location/
- Setup the
CATALINA_OPTS
environment variable for the user running Tomcat to include-DOPENMRS_APPLICATION_DATA_DIRECTORY=<path>
. - Modify the conf/Catalina/openmrs/context.xml file in your tomcat (or other server) config:
<Context ...> ... <Parameter name="application.data.directory" value="/my/custom/location/" override="false"/> ... </Context>
(see http://tomcat.apache.org/tomcat-6.0-doc/config/context.html for more info)
- Modify the openmrs.war file: /WEB-INF/web.xml file
- Change the context parameter "application.data.directory" to whatever directory you want.
For Developers
There are several convenience methods to help developers findSee the methods:
OpenmrsUtil.getApplicationDataDirectory()
and
OpenmrsUtil.getDirectoryInApplicationDataDirectory(String folderName)