Используя идею, что мы нашли в:Как EJB могут использовать весенние ботинки?
мы хотели использовать перехватчик для того, чтобы получить доступ к пружинным загрузкам зерна из EJBs. Но проблема в том, что на примере документации используется новый контекст.
Как EJB могут получить доступ к контексту загрузки весны?
Мы попытались это:
public class MySpringActuatorMetricsCoreTestInterceptor extends SpringBeanAutowiringInterceptor {
//Spring boot application context
@Autowired
ApplicationContext applicationContext;
@SuppressWarnings("resource")
@Override
protected BeanFactory getBeanFactory(Object target) {
return applicationContext.getAutowireCapableBeanFactory();
}
}
И EBJ выглядит следующим образом:
// ejb
@Stateless
// spring
@Interceptors(MySpringActuatorMetricsCoreTestInterceptor.class)
public class FirstBean {
[...]
Проблема заключается в том: контекст приложения не инициализирован, поскольку инициализация EJBs происходит до и как следствие -> исключение нулевого указателя.
Мы считаем, что существует два варианта: - Мы получаем контекст приложения как-то из весеннего ботинка. - Мы можем предоставить контекст, который мы могли бы создать MySpringActuatorMetricsCoreTestInterceptor в контексте весенней загрузки.
Есть ли решение? другой вариант?
Мы используем Glassfish 3.1
Спасибо!
EJBs и Spring Boot кажутся мне ортогональными. Мое предпочтение - Spring и Spring Boot. Отрежьте EJB. – duffymo
Я тоже не нашел пути, лучший вариант, вероятно, заключался бы в том, чтобы разоблачить услуги как услуги отдыха с использованием весеннего ботинка и весеннего отдыха. Потребление ejbs в весеннем ботинке однако возможно. – werner