Я написал веб-приложение Grails для Tomcat, которое открывается и читает из базы данных Berkeley на ./data/transactions/foobar.
Этот код отлично работает в моей среде Eclipse.
Но когда я перемещаю его на сервер, он выдает это исключение. Я не уверен, где находится текущий рабочий каталог, когда я развертываю Grails в файле WAR в качестве веб-приложения webapps на сервере.
com.sleepycat.je.EnvironmentNotFoundException: (JE 4.1.10) ./data/transactions/Foobar
Home directory: ./data/transactions/Foobar ENV_NOT_FOUND:
EnvironmentConfig.setAllowCreate is false so environment creation is not permitted, but there are no log files in the environment directory. Environment is invalid and must be closed.
Мой установочный каталог Tomcat на сервере Linux - / usr / share / tomcat6. Корневой каталог веб-приложений - / usr / share / tomcat6 / webapps. Каталог WAR установлен в подкаталоге с именем "bridge". Путь WAR к моему приложению Grails находится в / usr / share / tomcat6 / webapps / bridge
. Я попытался установить./ data / transaction / Foobar как в / usr / share / tomcat6 / webapps, так и в / usr / share / tomcat6 / webapps / bridge, безуспешно.
Я также попытался поместить ./data/transaction/Foobar в базовый каталог установки / usr / share / tomcat6, но тоже безуспешно.
Следующие ошибки я вижу на сервере Tomcat:
Error 500: Executing action [index] of controller[com.ecmhp.ecmdatabridge.generators.GenerateEmiDigestsController]
caused exception: (JE 4.1.10) ./data/transactions/Foobar
Home directory: ./data/transactions/Foobar ENV_NOT_FOUND:
EnvironmentConfig.setAllowCreate is false so environment creation is not permitted, but there are no log files in the environment directory. Environment is invalid and must be closed.
Сервлет: grails
URI: /bridge/grails/generateEmiDigests/index.dispatch
Exception Message: (JE 4.1.10) ./data/transactions/Foobar
Home directory: ./data/transactions/Foobar ENV_NOT_FOUND:
EnvironmentConfig.setAllowCreate is false so environment creation is not permitted, but there are no log files in the environment directory. Environment is invalid and must be closed.
Caused by: (JE 4.1.10) ./data/transactions/Foobar
Home directory: ./data/transactions/Foobar ENV_NOT_FOUND:
EnvironmentConfig.setAllowCreate is false so environment creation is not permitted, but there are no log files in the environment directory. Environment is invalid and must be closed.
Любая идея, как я могу установить текущий рабочий каталог для мой Tomcat WAR, чтобы он находил файлы Berkeley DB ./data/transaction? Или я могу узнать, в каком текущем рабочем каталоге запущено мое приложение Grails?