패키지 분리관련 트랜잭션 문의
- 작성자 :
- 김*현
- 작성일 :
- 2010-09-29 08:54:09
- 조회수 :
- 2,951
- 구분 :
- 실행환경
- 진행상태 :
- 완료
Q
안녕하세요.
9월 10일
현재 프로젝트를 진행하면서
기존 egovframework기본 패키지와 동일 레벨에
업무단 패키지(aa.bb.cc) 를 추가해서 사용중입니다.
---------------------------------------------
src-main-java-egovframework
-aa.bb.cc
---------------------------------------------
문제는 기본 패키지가 아닌 업무단 패키지에서 트랜잭션 테스트를 하면
트랜잭션 처리가 수행되지 않습니다.
추가적인 설정이 필요한지 확인 부탁드리겠습니다.
라고 질문을 올렸고
---------------------------------------------------------------
context-transaction.xml에 보시면 <aop:pointcut ../> 부분이 있는데..
여기에 expression 부분에.. egovframework 뿐만 아니라 aa.bb.cc도 "Or"로 추가되어 있어야 합니다.
----------------------------------------------------------------
라고 답변을 해주셨는데요...
저희도 or로 해당 패키지 및 해당 클래스까지 추가해보았는데
추가된 패키지에서는 트랜잭션 처리가 안되네요
불편하시겠지만 실제로 테스트를 해봐주시면 감사하겠습니다.
(기본 패키지내에서는 트랜잭션 처리가 됩니다)
확인 부탁드리겠습니다.
9월 10일
현재 프로젝트를 진행하면서
기존 egovframework기본 패키지와 동일 레벨에
업무단 패키지(aa.bb.cc) 를 추가해서 사용중입니다.
---------------------------------------------
src-main-java-egovframework
-aa.bb.cc
---------------------------------------------
문제는 기본 패키지가 아닌 업무단 패키지에서 트랜잭션 테스트를 하면
트랜잭션 처리가 수행되지 않습니다.
추가적인 설정이 필요한지 확인 부탁드리겠습니다.
라고 질문을 올렸고
---------------------------------------------------------------
context-transaction.xml에 보시면 <aop:pointcut ../> 부분이 있는데..
여기에 expression 부분에.. egovframework 뿐만 아니라 aa.bb.cc도 "Or"로 추가되어 있어야 합니다.
----------------------------------------------------------------
라고 답변을 해주셨는데요...
저희도 or로 해당 패키지 및 해당 클래스까지 추가해보았는데
추가된 패키지에서는 트랜잭션 처리가 안되네요
불편하시겠지만 실제로 테스트를 해봐주시면 감사하겠습니다.
(기본 패키지내에서는 트랜잭션 처리가 됩니다)
확인 부탁드리겠습니다.
A
안녕하세요.. 김영현님..
다음과 같이 expression을 정의하시면 같이 처리되도록 되어 있습니다. (물론 테스트된 예입니다.)
expression="execution(* egovframework.adt.sample..impl.*Impl.*(..)) or
execution(* egovframework.rte.fdl.excel.impl.*Impl.*(..))"/>
참고로.. Spring의 AOP의 경우는 반드시 Spring의 Bean방식으로 호출되어야 영향을 받습니다. (일반적은 java의 new를 통해 객체를 접근하면 AOP의 영향을 받지 않기 때문에.. transaction 처리도 반영되지 않습니다.
그럼.. 즐거운 하루되십시오.
감사합니다.
다음과 같이 expression을 정의하시면 같이 처리되도록 되어 있습니다. (물론 테스트된 예입니다.)
expression="execution(* egovframework.adt.sample..impl.*Impl.*(..)) or
execution(* egovframework.rte.fdl.excel.impl.*Impl.*(..))"/>
참고로.. Spring의 AOP의 경우는 반드시 Spring의 Bean방식으로 호출되어야 영향을 받습니다. (일반적은 java의 new를 통해 객체를 접근하면 AOP의 영향을 받지 않기 때문에.. transaction 처리도 반영되지 않습니다.
그럼.. 즐거운 하루되십시오.
감사합니다.