java как проверить, включен ли CDI? - PullRequest
0 голосов
/ 21 апреля 2020

как проверить, включен ли CDI в текущей среде (SE или EE)? Если включено, CDI должен использоваться для создания экземпляра класса (например, Foo), в противном случае используйте новый Foo ().

Foo foo;
if (isCDIEnabled()) {
  // how to get CDI container from current environment
  foo = cdiContainer.select(Foo.class).get();
}
else
   foo = new Foo();

Как реализовать

 private boolean isCDIEnabled() {
     // how?
 }

1 Ответ

1 голос
/ 21 апреля 2020

Если у вас есть cdi api в вашем классе, попробуйте это:

    try{
        CDI.current();
    }catch(IllegalStateException e){
        // no cdi available 
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...