powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Инекция бина в EntityListeners
7 сообщений из 7, страница 1 из 1
Инекция бина в EntityListeners
    #38220418
Atum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GlassFish 3.1 + Derby 10 + org.eclipse.persistence.jpa.PersistenceProvider

что хочу сделать : систему логирования любых изменений бина при записе его в БД .

Есть бизнес бин Message

Так вот MessageLogFacade logFacade = null и почему то не инициируется в классе MessageHistory !? вопрос почему?

Код: java
1.
2.
3.
4.
5.
6.
@Entity
@EntityListeners({MessageHistory.class})
@Table(name = "MESSAGE")
@XmlRootElement
@NamedQueries({
 public class Message implements Serializable {



есть
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
public class MessageHistory{
  @Inject
   private MessageLogFacade logFacade;
   
   private MessageLog messageLog;
    
    @PostPersist
    @PostUpdate
    public void prePersist(Message message) {
       
        messageLog = new MessageLog(message);
        logFacade.create(messageLog);
        
    }
}




Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
@Stateless
public class MessageLogFacade extends AbstractFacade<MessageLog> {
    @PersistenceContext(unitName = "WebPU")
    private EntityManager em;

    @Override
    protected EntityManager getEntityManager() {
        return em;
    }

    public MessageLogFacade () {
        super(MessageLog.class);
    }
    
}
...
Рейтинг: 0 / 0
Инекция бина в EntityListeners
    #38220434
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поверхностное гугление сообщает что GF 3.1 реализует спеку JPA 2.0, в которой CDI в EntityListeners не предусмотрен.
...
Рейтинг: 0 / 0
Инекция бина в EntityListeners
    #38220554
Atum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да , вы правы , нужно ждать JPA 2.1

а пока пользоваться по старинке :

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
   public static BeanManager getMessageLogFacade() {
        try {
            InitialContext initialContext = new InitialContext();
            return (MessageLogFacade) initialContext.lookup("java:comp/MessageLogFacade");
        } catch (NamingException e) {
            e.printStackTrace();
            return null;
        }
    }
...
Рейтинг: 0 / 0
Инекция бина в EntityListeners
    #38220567
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот такой вот хваленый JEE CDI. Мвухаха в лицо всем тем кто пишет "Spring IoC больше не нужен, ведь у нас есть CDI".
...
Рейтинг: 0 / 0
Инекция бина в EntityListeners
    #38221149
marx_freedom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

да там кажется и ee8 спринг не догонит :)
...
Рейтинг: 0 / 0
Инекция бина в EntityListeners
    #38221263
Atum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Последнее время мне все же спецификация jee CDI в связке jsp+srvlet+ejb3.1 lite + orm нравится больше чем Spring IoC с его набором библиотек и кучей зависимостей и кучей xml файлов .

Удобно когда выбираешь jboos 7 или GlassFish 3.1 и больше ни каких дополнительных библиотек тебе уже и не надо

размер war прилоежения 10 мб ... в противовес Spring где все те же 10 мб + куча библиотек размером в 120 и более Мб.


И пусть пока Spring немного пошустрее чем EJB ,
но эта разница уже не в 10 раз как раньше , а примерно 1.5 , там где спринг дает 10мс, EJB - 15 мс.

что уже радует ... так же плюсом EJB - я считаю стройность с которой можно выстроить приложение.
...
Рейтинг: 0 / 0
Инекция бина в EntityListeners
    #38222699
WGA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WGA
Гость
BlazkowiczВот такой вот хваленый JEE CDI. Мвухаха в лицо всем тем кто пишет "Spring IoC больше не нужен, ведь у нас есть CDI".А Spring такое умеет?
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Инекция бина в EntityListeners
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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