У меня есть приложение, в котором есть комбинация struts 1.1 и EJB 2, но теперь мы вводим в него новую часть - hibernate 3.2. DAO гибернации запускается параллельно с DAO сессионных компонентов EJB 2 с чистым JDBC. В этом случае меня беспокоит управление соединениями jdbc. Поскольку EJB 2.0 имеет управляемые контейнером соединения и транзакции. Но в случае гибернации мы начинаем и фиксируем транзакцию гибернации. Можно ли с уверенностью предположить, что с этой архитектурой не будет никаких проблем.
Нужна помощь в анализе.
PM
Я размышлял над той же проблемой, если модуль спящего режима, который может получить доступ к существующим таблицам, используется JDBC DAO, транзакция которого управляется Session Beans. Но вот мой подход:
У меня будет делегат, который вызывает сеансовый компонент EJB, и, поскольку этот компонент будет отвечать за управление транзакциями, я создам свои DAO в спящем режиме и буду вызывать их из этого сеансового компонента, что, как я предполагаю, не будет иметь никаких проблем.
Фабрика сеанса hibernate для этого приложения будет создана один раз с использованием плагина hibernate, который будет частью конфигурации struts config xml и будет сохранен как часть контекста сервлета, а затем класс действия передаст этот экземпляр sessionfactory из делегата сеансового компонента EJB. в спящий режим DAO.
Я предполагаю, что это будет чистый подход, поскольку транзакция будет управляться компонентом сеанса EJB, который развернут в веб-сфере. Поскольку управление пулами соединений JDBC настроено в веб-сфере и доступ к нему осуществляется с использованием источников данных, спящему режиму не нужно беспокоиться об этом.
Пожалуйста, помогите мне, если я на правильном пути со своими предположениями?