Переменная окружения не обнаружена Tomcat 7 в OpenShift
Я запускаю приложение JSF на картридже JBoss EWS 2.0 в OpenShift, и пришло время настроить приложение на работу в производственном режиме. Чтобы приложение было максимально переносимым, я бы хотел сделать это, установив faces.PROJECT_STAGE
переменная окружения.
Сначала я попробовал использовать rhc set-env ...
или же rhc env set ...
но ему не понравилась "точка" в имени переменной. Итак, я создал эту переменную среды:
rhc env set facesPROJECT_STAGE=Production -a myapp
а затем SSH'ed в мою учетную запись OpenShift, чтобы изменить файл facesPROJECT_STAGE
в .env/user_vars
в facesPROJECT_STAGE
, Бег rhc env list -a myapp
затем показывает мне:
faces.PROJECT_STAGE=Production
Однако, когда я перезапускаю свое приложение, оно не поднимает faces.PROJECT_STAGE
переменная окружения. Делать rhc app reload -a myapp
тоже не помогает Если это имеет какое-то значение, мое приложение в настоящее время не масштабируется автоматически.
1 ответ
Вы должны использовать системные свойства вместо переменных среды. Установить JAVA_OPTS_EXT
переменная среды для -Dfaces.PROJECT_STAGE=Production -a myapp
как это:
export JAVA_OPTS_EXT=-Dfaces.PROJECT_STAGE=Production
... и тебе надо идти. (Возможно, вам придется сделать что-то еще, чтобы сохранить это значение на все время для вашего процесса - и процессов, запущенных в будущем).