CICS 환경의 Java 프로그램은 TCP/IP 소켓을 열고 외부 프로세스와 통신할 수 있습니다. 다른 언어의 CICS 프로그램에서 사용할 수 없는 다른 엔터프라이즈 애플리케이션에 연결하기 위해 Java 프로그램을 게이트웨이로 사용합니다. 예를 들어, 원격 서블릿 또는 데이터베이스와 통신하도록 Java 프로그램을 작성할 수 있습니다.
이 연결이 CICS와 통합되어 분산된 트랜잭션과 ID 전파 같은 엔터프라이즈 품질 서비스를 제공하는 경우가 있습니다. 또는 분산된 트랜잭션이나 CICS가 제공하는 다른 서비스 없이 연결을 사용하는 경우도 있습니다. 필요한 연결 유형에 따라 CICS가 기본적으로 지원하지 않는 엔터프라이즈 애플리케이션과 연결을 지원하는 써드파티 공급업체 제품을 이용할 수 있습니다.
일반적으로, CICS 환경의 JVM은 기능 면에서 일괄처리 모드 JVM과 비슷합니다. 일괄처리 모드 JVM은 CICS 환경 외부에서 독립형 프로세스로 실행되고 일반적으로 UNIX System Services 명령행에서 또는 JCL 작업을 통해 시작됩니다. 일괄처리 모드 JVM과 작동되는 대부분의 애플리케이션도 CICS의 JVM에서 동일한 범위로 실행할 수 있습니다. 예를 들어, 써드파티 JDBC 드라이버를 사용하여 IBM 이외 데이터베이스와 통신하기 위해 일괄처리 모드 Java 애플리케이션을 작성한 경우, 동일한 애플리케이션이 CICS의 JVM에서 작동할 가능성이 높습니다. CICS의 JVM에서 IBM 이외 JDBC 드라이버 같은 공급업체 제공 코드를 사용할 경우, CICS의 JVM에서 실행되는 코드를 지원하는지 여부를 판별하기 위해 공급업체에 문의하십시오.
일부 일괄처리 모드 애플리케이션은 CICS가 JVM을 재사용하는 방식 때문에 CICS의 JVM에서 호스팅될 때 다른 방식으로 작동할 수 있습니다. 정적 변수에 저장된 데이터는 JVM 사용 전체에서 지속됩니다. CICS에서 Java 애플리케이션 동작에 대한 자세한 정보는 CICS의 JRE(Java Runtime Environment)의 내용을 참조하십시오.
CICS 환경의 JVM에서 실행되는 일괄처리 모드 애플리케이션은 일반적으로 CICS의 기능을 이용하지 않습니다. 예를 들어, CICS의 Java 프로그램이 써드파티 JDBC 드라이버를 사용하여 IBM 이외 데이터베이스의 레코드를 업데이트할 경우 CICS는 이 활동을 인식하지 않고 업데이트를 현재 CICS 트랜잭션에 포함하려고 하지 않습니다.