Я написал собственный MBean, который развертывается в Tomcat 6. Одной из его задач является запрос значения базы данных. Я делаю это, загружая ресурс базы данных с помощью JNDI — ресурс определен в файле Tomcat server.xml.
Проблема в том, что когда я создаю экземпляр javax.naming.InitialContext
, он выдает ClassNotFoundException
, так как не может найти org.apache.naming.java.javaURLContextFactory
. Этот класс находится в catalina.jar
и загружается обычным загрузчиком классов. Баночка, содержащая мой код MBean, загружается общим загрузчиком классов.
Любые идеи относительно того, как я могу обойти это?
Обратите внимание: мой MBean загружается с помощью ContextListener, который я определил в файле tomcat/conf/web.xml
. Я также определил его в веб-приложении web.xml
, что не имеет значения. Я не могу переместить свою банку, чтобы ее загружал общий загрузчик классов, поскольку он зависит от классов, загружаемых общим загрузчиком классов.
Заранее спасибо,
Воля