저는 Spring과 JSF2를 많이 사용하고 있으며 이들을 통합하는 가장 좋은 방법은 무엇인지 궁금해하고 있었습니까? 이제는 기본적으로 두 가지 방법이 있지만 두 가지 문제가 있습니다 :JSF2와 Spring3 통합 (AOP 포함)
a) 보통 @ManagedBean
을 사용하고 @ManagedProperty
을 사용하여 해당 빈에 Spring 서비스를 주입하십시오. 문제는 내가 사용할 수 없다는 것입니다. 봄에 AOP가 있기 때문에 @ManagedBean
분명히, 그것은 스프링 관리가 아니기 때문입니다. 나는 보통 사용자 정의 주석 @DatabaseOperation
으로 주석이 달린 모든 메소드에 arround-aspect를 사용합니다. 또 다른 예로는 Spring-Security의 @Secured
등이 있습니다. 내 프로젝트에서 AOP를 많이 사용하고 "최상위 레벨"에서 사용할 수 없다는 것이 실제로 나를 제한하고있다.
b) SpringBeanFacesELResolver
을 사용하여 Spring에서 관리하는 모든 것을 만드십시오. 프로 측면에서 AOP는 매력처럼 작동하지만 단점은 너무 크다.
- ViewScope 아니요. 생산 시스템에서이 https://github.com/michail-nikolaev/primefaces-spring-scopes과 같은 사용자 정의보기 범위 구현을 신뢰할 수 있는지 잘 모르겠습니다.
- 직렬화 할 수 없습니다. 그것은 이미 꽤 복잡하지만 AOP를 사용하면
org.springframework.aop.aspectj.AspectJPointcutAdvisor
이 Serializable이 아니기 때문에 작동하지 않습니다.
제 질문은 어떻게 해결합니까? JSF2와 Spring3.x를 어떻게 통합합니까? 나는 가능성을 주로 사용하고있다. b) 대부분 다음 프로젝트에서 세션 복제가 필요하다.
추가 제안 사항?