자카르 커넥터
Jakarta Connectors![]() |
자카르타 커넥터(JCA, 이전 Java EE Connector Architecture 및 J2EE Connector Architecture)는 엔터프라이즈 애플리케이션 통합(EAI)의 일부로 애플리케이션 서버와 엔터프라이즈 정보 시스템(EIS)을 연결하기 위한 자바 프로그래밍 언어 도구다.JDBC는 Java 애플리케이션을 데이터베이스에 연결하기 위해 특별히 사용되는 반면, JCA는 레거시 시스템과의 연결을 위한 보다 일반적인 아키텍처다.JCA는 JSR 16(JCA 1.0), JSR 112(JCA 1.5), JSR 322(JCA 1.6)로 자바 커뮤니티 프로세스에 따라 개발되었다.
JCA 및 자바 EE
J2EE 버전 1.3은 JCA 버전 1.0을 지원하도록 애플리케이션 서버를 요구한다. J2EE 버전 1.4는 JCA 버전 1.5를 지원하도록 애플리케이션 서버를 요구한다. Java EE 버전 6은 JCA 버전 1.6을 지원하도록 애플리케이션 서버를 요구한다.
계약
자카르타 커넥터 아키텍처는 호환되는 애플리케이션 서버를 EIS에 연결하기 위한 표준을 정의한다.자카르타 EE 애플리케이션 서버와 리소스 어댑터 간의 표준 시스템 수준 계약 집합을 정의한다.J2EE Connector Architecture 버전 1.0에 의해 정의된 시스템 계약은 다음과 같은 규격으로 설명된다.
- 연결 관리
- 연결 관리는 애플리케이션 서버가 기본 EIS에 연결을 풀링하고 애플리케이션 구성요소가 연결할 수 있도록 한다.이는 수많은 클라이언트를 지원할 수 있는 확장 가능한 애플리케이션 환경으로 이어진다.
- 거래관리
- 트랜잭션 관리는 애플리케이션 서버가 트랜잭션 관리자를 사용하여 여러 리소스 관리자 간의 트랜잭션을 관리할 수 있도록 한다.또한, 본 계약은 외부 거래 관리자의 참여 없이, EIS 자원 관리자에 의해 내부적으로 관리되는 거래를 지원한다.
- 보안관리
- 보안 관리는 EIS에 대한 보안 위협을 줄이고, EIS가 관리하는 귀중한 정보 자원을 보호한다.
JCA 버전 1.5는 다음과 같은 시스템 계약을 규격에 추가한다.
- 수명주기 관리
- 라이프사이클 관리를 통해 애플리케이션 서버는 리소스 어댑터의 라이프 사이클을 시작부터 업그레이드까지 관리할 수 있다.이 계약은 애플리케이션 서버가 배포 또는 애플리케이션 서버 시작 중에 리소스 어댑터 인스턴스를 부트스트랩하고 리소스 어댑터 인스턴스가 철회되거나 순차적으로 종료되는 동안 이를 알리는 메커니즘을 제공한다.
- 작업관리
- 작업 관리는 실행을 위해 작업 인스턴스를 애플리케이션 서버에 제출하여 리소스 어댑터가 작업(네트워크 끝점 모니터링, 애플리케이션 구성 요소 호출 등)을 수행할 수 있도록 한다.애플리케이션 서버는 제출된 작업 인스턴스를 실행하기 위해 스레드를 발송한다.이를 통해 리소스 어댑터는 스레드를 직접 생성하거나 관리하는 것을 피할 수 있으며, 애플리케이션 서버는 스레드를 효율적으로 풀링하고 런타임 환경을 보다 효과적으로 제어할 수 있다.리소스 어댑터는 작업 인스턴스가 실행되는 트랜잭션 컨텍스트를 제어할 수 있다.
- 거래유입관리
- 트랜잭션 유입 관리를 통해 리소스 어댑터는 가져온 트랜잭션을 애플리케이션 서버로 전파할 수 있다.또한 이 계약은 자원 어댑터가 EIS에 의해 개시된 거래 완료 및 충돌 복구 호출을 전송할 수 있도록 하며, 가져온 거래의 원자성, 일관성, 분리 및 내구성(ACID) 속성을 보존할 수 있도록 한다.
- 메시지유입관리
- 메시지 유입 관리를 통해 리소스 어댑터는 특정 메시징 스타일, 메시지 의미론 및 메시지 전달에 사용되는 메시징 인프라와 관계없이 애플리케이션 서버에 상주하는 메시지 끝점에 메시지를 비동기적으로 전달할 수 있다.이 계약은 또한 자원 어댑터와 함께 Java EE 호환 애플리케이션 서버에 광범위한 메시지 제공자(JMS(Java Message Service), JAXM(Java API for XML Messaging, JAXM 등)를 연결할 수 있는 표준 메시지 제공자 플러그빌리티 계약 역할도 한다.
EIS 통합
JCA 어댑터는 Siebel Systems, SAP AG, Great Plains Systems, Oracle Applications 등과 같은 다양한 엔터프라이즈 정보 시스템과 통합되도록 구축될 수 있다.Siebel은 Java, C++, 와 같은 다양한 플랫폼과 통합할 수 있는 API를 제공한다.NET, Visual Basic 등Java의 경우, 'Java Data Bean'(JDB)이라는 인터페이스를 제공한다.Siebel 어댑터는 JDB API를 통한 데이터 액세스를 제공한다.Great Plains Systems는 다른 플랫폼과 통합하기 위해 eConnect라고 불리는 인터페이스를 제공한다.SAP는 SAP Java Connector(SAP JCo)라고 하는 Java에 대한 인터페이스를 제공한다.
외부 링크
- 공식 웹사이트
- J2EE Connector 홈페이지는 많은 유용한 정보를 포함하고 있다.
- JCA, JMS, 웹 서비스 중에서 선택한다는 IBM의 기사도 그렇다.
- JSR 112 (JCA 1.5)
- JSR 322: Java EE Connector Architecture 1.6(JCA 1.6)
- JSR 16(JCA 1.0)
- http://www.onjava.com/pub/a/onjava/2004/03/24/j2eeca.html