2013-10-16 1 views
0

Я запускаю модуль EAR на Glassfish 3.1.2.2 и испытываю проблему, когда Deltaspike создает два экземпляра компонента (один в модуле ejb и один в веб-модуле).Vetoing CDI bean только для контекста веб-приложения

Я хотел бы наложить вето на этот компонент в веб-модуле

public class VetoAnnotatedTypeExtension implements Extension { 

    public <T> void processAnnotatedType(@Observes ProcessAnnotatedType<T> type) { 
     if (something?) { 
      type.veto(); 
     } 
    } 
} 

Есть ли предикат для something?, что я могу использовать, чтобы наложить вето, если в контексте веб-приложений?

+0

В этом контексте я не получил термин «вето». Что должно произойти? –

+0

См. Http://docs.oracle.com/javaee/6/api/javax/enterprise/inject/spi/ProcessAnnotatedType.html#veto() – anger

+0

Это больше похоже на проблему с вашей настройкой, а не с самой DeltaSpike. –

ответ

0

Уши всегда становятся хитрыми. Вы можете проверить класс загрузчика класса и посмотреть, откуда он. Это, наверное, единственная надежная вещь, которую вы могли бы сделать.

+0

Спасибо @LightGuard, я сделаю это. – anger

Смежные вопросы