2014-01-20 1 views
0

@Inject으로 주입되는 하나의 속성을 가진 @SessionScoped bean을 가지고 있다고 가정 해 봅시다. 이 주입은 bean이 생성 될 때 성공합니다. 세션이 얼마 동안 사용되지 않았기 때문에 빈은 디스크에 직렬화되고 메모리에서 제거됩니다. 세션이 다시 사용되면 빈이 디스크에서 비 직렬화되고 다시 인스턴스화됩니다. 속성의 유형이 직렬화되지 않는 클래스였습니다.세션 빈 패시베이션 이후에 인젝션은 어떻게됩니까?

주입 된 속성은 어떻게됩니까? null이 유지됩니까? 그들은 다시 주사합니까?

이 사용 사례에 대한 특정 정보를 찾을 수 없습니다.

답변

1

실제로 주입되는 것은 속성 자체가 아니라 동적 프록시입니다. 즉, @SessionScoped bean이 비 직렬화되고 다시 사용될 때 속성이 다시 해석됩니다. 자세한 내용은 this post을 참조하십시오. 특정 용접이지만, 어떤 일이 발생했는지에 대한 좋은 아이디어를 제공합니다. 그러나 그것은 스펙에 의해 규정되어 있으므로 (5.4 절의 spec 참조) 다른 구현들도이를 수행 할 것입니다.

관련 문제