2014-03-28 5 views
0

@Inject 의 서브 클래스로 상태 비 저장 세션 빈을 사용할 수 있습니까?JBoss AS7 @ 빈을 밸브에 넣기

JBoss를 7.1.1로 사용하고 있습니다.

내 코드는 다음과 같습니다

...

public class myValve extends AuthenticatorBase { 

    @Inject AuthController controller; 

    //some code ... 

} 

컨트롤러 객체가 NullPointerException로 연결 사용.

답변

1

컨트롤러가 null이면 myValve 객체 자체가 주입되지 않았 음을 의미합니다.

이 코드가, 예를 들면, 소급 CDI 컨텍스트 기존 객체를 추가 할 수있다 : 주사가 수행 된 코드의 실행 후

public <T> void addToCDI(T object) { 
    BeanManager beanManager = BeanManagerProvider.getInstance().getBeanManager(); 
    AnnotatedType<T> annotatedType = beanManager.createAnnotatedType((Class<T>)bject.getClass()); 
    InjectionTarget<T> injectionTarget = beanManager.createInjectionTarget(annotatedType); 
    CreationalContext<T> context = beanManager.createCreationalContext(null); 
    injectionTarget.inject(object, context); 
} 

.

+0

답변 해 주셔서 감사합니다. 그것은 작동합니다. – Johannes