Я пытаюсь внедрить EJB в ClientResponseFilter, используя джерси. Однако EJB всегда нулевой. Я читал некоторые ресурсы в Интернете, но ни одно из найденных решений не сработало (также я не хочу присматривать за своим компонентом с помощью InitialContext). Вот мой фильтр
@Provider
public class MyResponseFilter implements ClientResponseFilter {
private static final Logger LOGGER = LoggerFactory.getLogger(MyResponseFilter.class);
@EJB
private MyBean myBean;
@Override
public void filter(ClientRequestContext requestContext, ClientResponseContext responseContext) throws IOException {
...
// using myBean always throws NullPointerException
myBean.someMethod();
}
}
Код для MyBean:
@Startup
@Singleton
public class MyBean extends SomeAbstractClass {
...
}
Я также попытался добавить провайдера в качестве ресурса с resources.add(MyResponseFilter.class);
, но это также не сработало. Может ли кто-нибудь помочь мне в решении этой проблемы? Я хотел бы использовать MyBean
как есть, поскольку он используется во многих других местах, и я не уверен, что смогу уловить все побочные эффекты, которые может иметь его изменение.
Спасибо!