Совместное использование загрузчиков классов приложений на weblogic - PullRequest
3 голосов
/ 12 мая 2010

В моем проекте есть несколько развернутых артефактов в виде ear-файлов. Насколько я понимаю, у каждого из ушей будет свой загрузчик классов. Можно ли указать weblogic использовать один и тот же загрузчик классов для каждого из этих развертываемых объектов.

Какие факторы мне нужно учитывать при внесении этого изменения?

1 Ответ

3 голосов
/ 15 мая 2010

Причина, по которой каждое приложение (EAR) имеет свой собственный загрузчик классов, заключается в изоляции и независимости приложений. Предположим, вам нужен какой-нибудь общий модуль для всех EAR?

Если каждое приложение должно иметь общий загрузчик классов (и общие разделяемые библиотеки), есть 3 способа сделать это:

  1. Добавьте общие JAR-файлы в системный загрузчик классов (идея BAD), как отмечено здесь. http://download.oracle.com/docs/cd/E11035_01/wls100/programming/classloading.html#wp1096756

  2. Создайте общий JAR / EAR и разверните его как общую библиотеку, как описано здесь. http://download.oracle.com/docs/cd/E11035_01/wls100/programming/libraries.html#wp1071514

  3. Если несколько приложений имеют общие элементы и не предназначены для того, чтобы быть независимыми модулями, объедините их в один EAR

...