59.12. 트랜잭션 지원
Camel 2.19에서 사용 가능
Camel CDI는 JTA를 사용하여 Camel 트랜잭션 클라이언트를 지원합니다.
이 지원은 선택 사항이므로 Maven을 사용할 때 종속성으로 JTA를 명시적으로 추가하여 애플리케이션 클래스 경로에 JTA를 포함해야 합니다.
<dependency>
<groupId>javax.transaction</groupId>
<artifactId>javax.transaction-api</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>javax.transaction</groupId>
<artifactId>javax.transaction-api</artifactId>
<scope>runtime</scope>
</dependency>
JTA 지원 컨테이너에 애플리케이션을 배포하거나 독립 실행형 JTA 구현을 제공해야 합니다.
트랜잭션 관리자는 Java :/TransactionManager 키를 사용하여 JNDI 리소스로 조회됩니다.
광범위한 배포 시나리오를 지원하기 위해 더 유연한 전략이 향후 추가됩니다.
59.12.1. 트랜잭션 정책 링크 복사링크가 클립보드에 복사되었습니다!
Camel CDI는 일반적으로 지원되는 Camel TransactedPolicy 를 CDI 빈으로 구현할 수 있습니다. 이러한 정책은 트랜잭션된 EIP를 사용하여 이름으로 검색할 수 있습니다. 예를 들면 다음과 같습니다.
다음과 같습니다.
지원되는 트랜잭션 정책 이름 목록은 다음과 같습니다.
-
PROPAGATION_NEVER, -
PROPAGATION_NOT_SUPPORTED, -
PROPAGATION_SUPPORTS, -
PROPAGATION_REQUIRED, -
PROPAGATION_REQUIRES_NEW, -
PROPAGATION_NESTED, -
PROPAGATION_MANDATORY.