문제

Java EE 사양은 다음과 같은 EJB 주입을 명시하고 있습니다.

@EJB MyInterface myBean;

엔터프라이즈 명명 컨텍스트, 즉 EN 항목을 생성합니다. java:comp/env/<FQN>.MyInterface/myBean. 이 컨텍스트 항목을 실제 값으로 바인딩하고 Mybean 필드 에이 값을 주입하는 것은 배치자에게 달려 있습니다.

이제 여기서 뭔가 빠진 느낌이 들었습니다.

컨텍스트 입력이 필요한 이유는 무엇입니까? 요청 된 EJB의 인스턴스가 주입되므로 컨텍스트의 항목이 필요한 이유는 무엇입니까? 컨텍스트 입력을 통해 주입이 발생하는 이유는 무엇입니까?

도움이 되었습니까?

해결책

수신 된 모든 답변은 문제를 해결하지 못했습니다. 주입 주석이 주입을 해결하기에 충분한 정보를 제공하는 경우 ENC 항목이 필요한 이유는 무엇입니까 (따라서 첫 번째 생각은 그것이 중복되었다고 생각했습니다).

대답은 배치 디스크립터에서 주입을 무시할 수 있다는 것입니다. EJB 표준이 개발자 역할을 정의하기 때문입니다.

"Bean 제공자"가 주입을 요청하고 기본값을 제공 할 수 있다고 가정합니다. 그러나 "응용 프로그램 어셈블러"는 이러한 값을 무시할 수 있습니다. "Bean Provider"는 주석 또는 XML을 사용하는 것으로 가정하고 "어셈블러"는 주로 XML을 사용하는 것으로 가정합니다.

이것이 EJB 표준이 ENC와 주입 사이의 이러한 관계를 정의하는 이유입니다.

다른 팁

상태가 많은 세션 Bean을 주입 해야하는 경우 EJB 인스턴스와 이전에 주입 된 EJB 의존성 (해당 인스턴스) 사이의 관계를 알고있는 컨텍스트가 필요할 것입니다.

어떻게 든 얻은 문자열로 조회를 허용하는 것입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top