Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Почему ehcache.xml тянется из shared/lib, а не WEB-INF/classes? / 8 сообщений из 8, страница 1 из 1
27.08.2007, 18:19:14
    #34756038
Vetal
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему ehcache.xml тянется из shared/lib, а не WEB-INF/classes?
Всем здравствуйте!

Есть проблема. Я использую такой портал, как jetspeed (он работает как сервлет. Сервер - tomcat 5.5.20). Он использует ehcache, и его ehcache.xml лежит в каталоге <tomcat_home>/webapps/jetspeed/WEB-INF/classes.

Много моих приложений также используют ehcache. И мой ehcache.xml лежит в файле <tomcat_home>/shared/lib/my-persistence.jar.

Так вот, проблема в том, что web-приложение jetspeed почему-то подтягивает ehcache.xml из shared/lib/my-persistence.jar, а не из webapps/jetspeed/WEB-INF/classes.

А мне нужно, чтобы были отдельные настройки ehcahe для jetspeed, и отдельные для моих приложений.

Объясните, пожалуйста, как мне это сделать?

Всем заранее спасибо!
...
Рейтинг: 0 / 0
27.08.2007, 18:27:06
    #34756056
expp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему ehcache.xml тянется из shared/lib, а не WEB-INF/classes?
написано здесь
убери его из shared клади в каждый web-app
...
Рейтинг: 0 / 0
27.08.2007, 19:35:51
    #34756238
Vetal
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему ehcache.xml тянется из shared/lib, а не WEB-INF/classes?
exppнаписано здесь
убери его из shared клади в каждый web-app
Вот это ж.па... У меня 30 приложений, каждое из которых использует эту библиотеку. И это только начало проекта. А библиотека эта меняется почти каждый день. Это что же - каждый день ее раскидывать во все эти папки???

И еще один момент. В приведенной вами ссылке написано следующее:
Therefore, from the perspective of a web application, class or resource loading looks in the following repositories, in this order:

/WEB-INF/classes of your web application
/WEB-INF/lib/*.jar of your web application
Bootstrap classes of your JVM
System class loader classses (described above)
$CATALINA_HOME/common/classes
$CATALINA_HOME/common/endorsed/*.jar
$CATALINA_HOME/common/lib/*.jar
$CATALINA_BASE/shared/classes
$CATALINA_BASE/shared/lib/*.jar
То-есть, здесь написано, что вначале все-таки ищет в папке приложения, а потом уже во всех остальных. Но вы говорите противоположное, и моя реальная ситуация подтвердила то, что Вы сказали. Получается, ошибка в томкетовской документации?

Так все же, где же истина?
...
Рейтинг: 0 / 0
28.08.2007, 10:03:34
    #34756940
rogov_vasya
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему ehcache.xml тянется из shared/lib, а не WEB-INF/classes?
Не мудри. Положи все в корень проекта <tomcat_home>/webapps/jetspeed/WEB-INF/lib. И все проги, что будут по иерархии ниже(tomcat_home>/webapps/jetspeed/proj1, tomcat_home>/webapps/jetspeed/proj2), получат доступ к твоим библиотекам.

Сколькораз вы читали "А сейчас можете откинутся на спинку вашего кресла..."? И вам это не надоело?
...
Рейтинг: 0 / 0
28.08.2007, 11:31:22
    #34757283
expp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему ehcache.xml тянется из shared/lib, а не WEB-INF/classes?
Vetal
То-есть, здесь написано, что вначале все-таки ищет в папке приложения, а потом уже во всех остальных. Но вы говорите противоположное, и моя реальная ситуация подтвердила то, что Вы сказали. Получается, ошибка в томкетовской документации?

Так все же, где же истина?
угу ...
Код: plaintext
As mentioned above, the web application class loader diverges from the default Java 2 delegation model (in accordance with the recommendations in the Servlet Specification, version 2.3, section 9.6). When a request to load a class from the web application's WebappX class loader is processed, this class loader will look in the local repositories first, instead of delegating before looking. All other class loaders in Tomcat 4 follow the usual delegation pattern.

похоже на то что сначала ваш класс грузится старшим загрузчиком (из shared) другим приложением, после этого WebAppCL не будет его грузить т.к. он уже есть в кэше родительского класслоадера

авторВот это ж.па... У меня 30 приложений, каждое из которых использует эту библиотеку. И это только начало проекта. А библиотека эта меняется почти каждый день. Это что же - каждый день ее раскидывать во все эти папки???
думаю тут проблема решается ant/mavenом или linkами Linux а (или эклипсными)
...
Рейтинг: 0 / 0
28.08.2007, 15:16:25
    #34758481
Vetal
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему ehcache.xml тянется из shared/lib, а не WEB-INF/classes?
Вот что нашел в оффициальной документации ( Class loading and Class Loaders ):

Loading of ehcache.xml resources
If the configuration is otherwise unspecified, ehcache looks for a configuration in the following order:

Thread.currentThread().getContextClassLoader().getResource("/ehcache.xml")
ConfigurationFactory.class.getResource("/ehcache.xml")
ConfigurationFactory.class.getResource("/ehcache-failsafe.xml")
Ehcache uses the first configuration found.

Note the use of "/ehcache.xml" which requires that ehcache.xml be placed at the root of the classpath, i.e. not in any package.

Я вот только все равно не понимаю, какая в этом случае последовательность каталогов, где ищется ehcache.xml? Можете разьяснить?
...
Рейтинг: 0 / 0
28.08.2007, 16:14:50
    #34758749
expp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему ehcache.xml тянется из shared/lib, а не WEB-INF/classes?
думаю отрабатывает этот

авторThread.currentThread().getContextClassLoader().getResource("/ehcache.xml")
...
Рейтинг: 0 / 0
28.08.2007, 16:26:27
    #34758795
expp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Почему ehcache.xml тянется из shared/lib, а не WEB-INF/classes?
попробуйте в RemoteDebug поставить breakpoint
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Почему ehcache.xml тянется из shared/lib, а не WEB-INF/classes? / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]