это загрузчик классов для разных приложений может быть разным? - PullRequest
0 голосов
/ 17 августа 2010

Я запутался в момент запуска моего приложения.Мое приложение состоит из EJB и сервлетов.Мне нужно знать, является ли загрузчик классов для этих типов приложений одинаковыми или разными.Я использую weblogic в качестве контейнера приложения.Пожалуйста, помогите мне.

Ответы [ 3 ]

2 голосов
/ 17 августа 2010

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

Да, существует системный загрузчик классов, которому делегируются все загрузчики классов веб-приложения.

Чтобы поместить ваш класс в этот загрузчик классов, вам нужно убедиться, что он находится в соответствующем пути к классам. Например, с Tomcat вы должны поместить JAR-файл в $ CATALINA_HOME / lib (... если я правильно помню).

При этом я не уверен, что совместное использование отдельных приложений несколькими веб-приложениями - это хороший дизайн.

1 голос
/ 17 августа 2010

WebLogic использует многоуровневый загрузчик классов.Как упаковано ваше приложение?Это EAR или WAR + JAR?

Эта ссылка будет полезна.

1 голос
/ 17 августа 2010

Вы обнаружите, что каждое приложение обычно загружается в собственный экземпляр загрузчика классов.Загрузчик классов будет классом, предоставляемым веб-контейнером, но для каждого работающего приложения будет один его экземпляр.Это позволяет приложениям быть изолированными друг от друга и загружать множество экземпляров независимо от того, используют ли они статические / переменные класса или синглтоны и т.д.

...