Получение доступа к переменным среды jndi в Tomcat LifecycleListener - PullRequest
0 голосов
/ 16 декабря 2009

Я использую LifecycleListener в tomcat для инициализации некоторых объектов, требуемых контекстами на моем веб-сервере. В LifecycleListener я хотел бы иметь доступ к переменным среды GlobalNamingResources, чтобы сохранить конфигурацию для сервера в файле server.xml. При попытке различных подходов я получаю следующую ошибку:

javax.naming.NameNotFoundException: Name java:comp is not bound in this Context

Я предполагаю, что jndi не инициализируется на этом этапе процесса запуска сервера. Любые идеи о том, как справиться с этим?

1 Ответ

1 голос
/ 17 декабря 2009

JNDI также устанавливается в LifecycleListener, но NamingContextListener является последним. Я не думаю, что вы можете изменить это.

Решение состоит в том, чтобы инициализировать приложение в ServletContextListener. Это всегда инициализируется после запуска всех LifecycleListener.

Вы можете импортировать весь глобальный контекст JNDI в веб-приложение, используя <ResourceLink>.

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