Что мне нужно сделать, чтобы развернуть одно и то же приложение EAR на одном сервере WebLogic?Как развернуть приложение EAR дважды на сервере WebLogic?
Что я имею в моем приложении:
- EJB слоя (EJB 2.0)
- WEB слоя (Struts, JSP)
- каротаж слой (log4j)
- DB слой (Oracle, данные источник создан в ВПУ)
- WLS 10.3.0
Что мне нужно:
- два экземпляра одного и того же приложения на ВПУ (уникальный URL (контекстно-корень) для каждого приложения), каждый экземпляр должен использовать другой источник данных и должны иметь различные конфигурации
Что такое моя проблема? Я не знаю, какие вещи я должен изменить в моем приложении для достижения своих целей:
- конфигурации баз приложения на многих файлах свойств, эти файлы находятся в одной директории, которая добавляется к WLS классам (они не в EAR-файле)
- многих классов являются статическими (все методы в классе являются статическими)
- статического экземпляр регистратора в каждом классе
- насчет объекта JNDI - я должен иметь разные имена для источников данных, сессия/лиц бобы и т. д.?
- Что такое контекст-корень и гиперссылки в jsp-файлах?
EDIT
мне нужно иметь два различных EAR файлов с уникальными именами и уникальных контекстно-корней. Каждое приложение будет подключено к уникальному источнику данных и будет иметь уникальную конфигурацию.
У меня есть некоторые вопросы, касающиеся изменений в моем приложении:
- насчет статических методов в моих классах? Документация WLS говорит, что каждое приложение получает свою собственную иерархию загрузчика классов. Должен ли я бояться конфликтов? У меня есть статика в клиентской части и в части сервера (EJB).
- как насчет имен EJB? Должен ли я иметь уникальные имена для каждого приложения? Должен ли я бояться конфликтов в дереве JNDI? Я использую методы
lookup
. - Что относительно статических регистраторов в моих классах? Могу ли я использовать тег
prefer-application-packages
вweblogic-application.xml
во избежание конфликтов?
Очень благодарен за помощью.
Этот вопрос действительно запутан ... Похоже, очень плохая практика развернуть одно и то же приложение дважды, чтобы использовать другой источник данных. Почему не просто два разных потока? Вы что-то пробовали и столкнулись с ошибками? Пока они называются по-разному, вы можете технически развернуть дважды –
Первое сообщение отредактировано. Есть идеи? – user3430447