Каков наилучший способ передачи аргументов экземпляру tomcat? - PullRequest
1 голос
/ 11 мая 2009

Как лучше всего передать аргументы экземпляру tomcat? Доступны ли аргументы командной строки для всех приложений в контейнере? Могу ли я передать аргументы конкретным приложениям? Нужно ли управлять этим через встроенный сервер приложений?

EDIT: Чтобы уточнить, я хочу передать параметр, чтобы указать используемые конфиги. Иногда это может указывать набор файлов конфигурации, которые могут различаться в зависимости от среды.

Ответы [ 4 ]

3 голосов
/ 12 мая 2009

вы можете добавить -Dmy.config.var = configA и -Dmy.config.var = configB и к CATALINA_OPTS (каждый раз, когда вам нужно) и прочитать их из Java через System.getProperty ("my.config.var" «). Это не переменные среды.

2 голосов
/ 12 мая 2009

Я считаю, что лучший способ настроить его - использовать файлы server.xml и context.xml. Это место для добавления конфигурации JNDI. У вас может быть свой файл context.xml для каждого приложения. В вашем файле WAR поместите его в каталог META-INF, и Tomcat импортирует его.

0 голосов
/ 12 мая 2009

Вещи, которые нужно волшебным образом перейти в веб-приложение, должны быть помещены в JNDI. Это позволяет вам помещать и извлекать объекты в «глобальную хеш-таблицу» где-то снаружи.

Если все, что вам нужно сделать, это указать имя файла конфигурации, тогда передайте свойство (-Dfoo = bar).

0 голосов
/ 12 мая 2009

Все могут видеть общую системную среду через стандартный механизм свойств Java. Также переменная окружения CATALINA_OPTS может использоваться для передачи аргументов в JVM.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...