[z/OS]

WebSphere Application Server 트랜잭션 BBOC, BBO$, BBO#

이 주제는 최적화된 로컬 어댑터가 도입되는 WebSphere® Application Server 트랜잭션인 BBOC, BBO$ 및 BBO#을 포함한 CICS®(Customer Information Control System) 제품에서 지원되는 방법을 설명합니다.

어댑터는 CICS 리젼에서 자원 관리자로 실행하도록 디자인되었습니다. CICS에서, 태스크 관련 사용자 종료(TRUE)가 자원 제공자를 위한 기본 차량입니다. TRUE 지원은 CICS 애플리케이션 스레드와 외부 자원 관리자 스레드 간의 경계를 제공합니다. 현재, DB2®, WebSphere MQ 및 TCP/IP 소켓이 TRUE 지원과 함께 CICS에서 사용됩니다. 최적화된 로컬 어댑터는 TRUE를 지원합니다.

CICS에서 실행하고 최적화된 로컬 어댑터 API를 이용하는 애플리케이션은 제공되는 스텁 루틴을 호출하여 그렇게 합니다. 스텁 루틴은 CICS 자원 관리자 인터페이스 모듈을 시작하여 최적화된 로컬 어댑터 TRUE 루틴의 이름 및 각 API에 특정한 매개변수를 전달합니다. CICS는 CICS 유지보수 OPENAPI TCB 중 하나에서 TRUE를 디스패치하고 API 호출이 완료될 때까지 실행합니다. 그런 다음 호출은 출력 매개변수와 함께 CICS로 다시 돌아갑니다. CICS TRUE 지원은 또한 애플리케이션이 정상적으로 종료하거나 이상 종료하거나 명시적 SYNCPOINT 호출을 CICS로 발행할 때처럼 트랜잭션 경계를 통해 알림을 제공합니다. 이 지원이 WebSphere Application Server로의 트랜잭션 컨텍스트의 전파 및 2단계 커미트에 사용되는 방법에 대한 자세한 내용은 "트랜잭션 전파"의 이 주제에 있는 섹션을 참조하십시오. 추가로, CICS의 경우 CICS 시작 중에 TRUE 프로그램을 자동으로 시작하는 데 사용될 수 있는 PLTPI(Program List Table Post-Initialization) 프로그램이 제공됩니다. PLTPI를 사용하지 않으면 CICS 트랜잭션, BBOC가 제공됩니다. 이 트랜잭션은 TRUE 모듈에 대한 추적을 시작, 중지, 사용 및 사용 안함으로 설정하는 데 사용될 수 있습니다.

CICS를 위한 WebSphere Application Server 제어 트랜잭션, BBOC

BBOC 트랜잭션은 CICS에서의 어댑터 지원을 위한 WebSphere 제어 또는 운영 트랜잭션입니다. WebSphere Application Server TRUE를 사용 설정 및 시작하고 API 및 WebSphere Application Server 인터페이싱 코드 디버깅을 위한 추적 레벨을 설정하는 데 사용됩니다. BBOC는 또한 CICS에서 등록 및 등록 취소를 설정하고, WebSphere Application Server 링크 서버 태스크를 시작 및 중지합니다. 이들 서버 태스크는 기존 CICS 프로그램 시작 및 어댑터를 통한 입력 매개변수를 갖는 COMMAREA 및 컨테이너로 데이터 전달을 위한 지원을 제공합니다. 이것은 3270 터미널에서 또는 순차적 SDSCI 유형 터미널로부터 발행될 수 있는 CICS 터미널 기반 트랜잭션입니다. BBOC에 대한 구문은 다음과 같이 설명됩니다.

BBOC<operation_name><parameters_separated_by_one_or_more_spaces>.

매개변수는 다음과 같이 설명됩니다.
  • 등록 이름 - RGN

    RGN 매개변수는 12자 등록 이름입니다.

  • 디먼 그룹 이름 - DGN

    DGN은 등록할 8자 디먼 그룹 이름입니다.

  • 링크 리턴 시 동기화 - LSYNC

    LSYNC는 링크 서버의 대상 프로그램에 링크할 때 SYNCONRETURN 옵션이 사용되는지 여부를 제어합니다. LSYNC=Y일 때, 대상 프로그램이 링크될 때 SYNCONRETURN 옵션이 CICS로 전달되고, EXEC CICS LINK를 사용합니다. 이 옵션은 대상 프로그램이 다른 CICS 리젼에 있을 때 필요할 수 있습니다. 기본값은 LSYNC=N입니다.

  • 노드 약칭 - NDN

    NDN은 등록할 8자 노드 약칭입니다.

  • 서버 약칭 - SVN

    SVN은 8자 대상 서버 약칭입니다.

  • 서비스 이름 - SVC

    SVC는 최대 8자를 갖는 서비스 이름이며 *(별표)로 마스크될 수 있습니다. 이 매개변수는 *, abc*, *abc, abc*xyz, abc*xy*z 등을 지원합니다.

  • 최소 연결 - MNC

    MNC는 최소 연결입니다. 최소값은 0입니다. 값이 제공되지 않는 경우 이 값은 1로 기본 설정됩니다.

  • 최대 연결 - MXC

    MXC는 최대 연결입니다. 최대값은 99999입니다. 값이 제공되지 않는 경우 이 값은 10으로 기본 설정됩니다.

  • 보안 전파 - SEC

    SEC는 보안 전파이며 Y(예) 또는 N(아니오)입니다. SEC=N이 기본값입니다. SEC=N 및 CICS에서 WebSphere Application Server로의 호출의 경우, CICS 리젼 사용자 ID가 전파됩니다. SEC=N 및 WebSphere Application Server에서 링크 서버의 CICS로의 호출(BBO$ 태스크)의 경우, 링크 태스크가 링크 서버가 시작된 사용자 ID 아래에서 실행합니다. SEC=Y 및 CICS에서 WebSphere Application Server로의 호출의 경우, 태스크 레벨 사용자 ID가 WebSphere Application Server로 전파됩니다. SEC=Y 및 WebSphere Application Server에서 CICS로의 호출의 경우, 링크 서버가 WebSphere Application Server로부터 전파된 사용자 ID를 사용하여 링크 태스크(BBO#)를 시작하려고 시도합니다. 이것은 링크 서버가 실행 중인 사용자 ID가 EXEC CICS START TRAN('BBO#') USERID(<propagated_id>)를 발행하도록 허용하는 유효한 SURROGAT SAF 설정이 완료된 경우에만 작업합니다.

  • TXN

    TXN은 BBOC 트랜잭션에 의해 생성되는 등록의 트랜잭션 동작을 설명합니다.

    BBOC가 REGISTER 조작을 사용하여 등록을 작성할 때, TXN=Y은 이 등록을 사용하여 WebSphere Application Server에서 시작되는 모든 Java Platform, Enterprise Edition 애플리케이션이 현재 CICS 작업 단위와 결합해야 함을 알립니다. 이것은 CICS와 WebSphere Application Server 사이의 글로벌 트랜잭션을 작성하며, 이것은 CICS 애플리케이션이 EXEC CICS SYNCPOINT를 실행할 때 또는 CICS 태스크가 끝날 때처럼 동기점이 내재될 때 2단계 커미트 프로토콜을 사용하여 완료됩니다.

    BBOC가 START_SRVR 함수를 사용하여 링크 서버를 작성하는 데 사용될 때, TXN=Y는 서비스가 호출될 때 CICS 링크 서버 태스크가 현재 WebSphere Application Server 트랜잭션을 결합해야 함을 알립니다. 예를 들어, Java Platform, Enterprise Edition 애플리케이션이 자원 관리자 로컬 트랜잭션(RMLT)을 시작하고 최적화된 로컬 어댑터 JCA 어댑터를 사용하여 CICS 프로그램을 호출하는 경우, 링크 태스크는 로컬 트랜잭션을 결합한 후 대상 CICS 프로그램을 호출합니다. CICS 프로그램에서 수행되는 업데이트는 Java Platform, Enterprise Edition 애플리케이션이 commit 또는 rollback API를 사용하여 RMLT를 완료할 때까지 커미트 또는 백아웃되지 않습니다.

  • 링크 서버 CICS 트랜잭션 ID - STX

    STX는 사용할 링크 서버 CICS 트랜잭션 ID의 4자 이름입니다. STX의 기본값은 BBO$입니다.

  • 링크 태스크 트랜잭션 ID - LTX

    LTX는 사용될 링크 대상 프로그램 CICS 트랜잭션 ID의 4자 이름입니다. LTX의 기본값은 BBO#입니다. 이들 트랜잭션 이름이 사용자 제공 이름으로 대체되는 경우, BBO$(STX의 경우) 및 BBO#(LTX의 경우)과 동일한 프로그램 이름과 속성으로 정의되어야 합니다.

  • 추적 - TRC
    추적은 표에 나열되는 임의의 명령의 처리 중에 사용으로 설정되고 설정됩니다. 다음 세 가지 추적 레벨이 있습니다.
    • 0 = 없음 및 오류 메시지만
    • 1 = 기본
    • 2 = 상세
  • 임시 데이터 큐 - TDQ

    CICS의 추적 데이터가 요청되는 리젼 외부 TDQ에 기록됩니다. TDQ 매개변수는 어댑터 메시지가 기록될 CICS 리젼 외부 TDQ의 4문자 이름을 지정합니다. 4문자 이름이 제공되지 않는 경우 BBOQ 및 DD BBOOUT으로 기본 설정됩니다. 선택한 TDQ에 쓰기 문제점이 있는 경우, 메시지는 대신 CICS 리젼 stdout(tdq CESO dd CEEOUT)에 기록됩니다.

  • 재사용 - REU
    링크 서버가 SEC=N으로 실행할 수 있다고 판별되는 경우, 최상의 성능은 REU=Y BBOC START_SRVR 매개변수를 갖고 실행하여 달성됩니다. REU=Y는 링크 서버가 프로그램 호출 요청 사이에 프로그램 링크 호출 태스크(BBO# 트랜잭션)를 재사용하게 만듭니다.
    중요사항: 이 구성으로 링크 서버를 실행하는 경우, 개별 요청에 대해 별도의 LINK 트랜잭션 전달을 위한 최적화된 로컬 어댑터 JCA의 지원은 사용 불가능하고 이에 대한 요청 결과로 ResourceException이 다시 애플리케이션에 발생합니다. 또한 REU=Y 및 SEC=Y를 선택하려고 시도하면, 링크 서버는 전파 어설션된 ID를 갖는 각 요청에 대해 새 프로그램 링크 태스크를 시작해야 하므로 재사용 옵션은 No로 자동 설정됩니다.
  • 재사용 계수 - REUC
    CICS 링크 태스크(BBO#)가 활성으로 남고 재사용되는 요청 수를 입력하십시오. 이 계수에 도달되면 링크 태스크가 종료합니다. 최대값은 2147483648입니다.
    중요사항: 트랜잭션 시나리오의 경우, 링크 태스크는 개수에 도달하고 애플리케이션 서버로부터 다음 커미트가 수신된 후에 종료합니다.
  • 재사용 시간 - REUT
    CICS 링크 태스크(BBO#)가 활성으로 남고 재사용되는 시간(초)을 입력하십시오. 이 시간 간격이 만기할 때, 다음 요청이 수신되고 처리된 후에 링크 태스크가 종료합니다. 최대값은 2147483648입니다.
    중요사항: 트랜잭션 시나리오의 경우, 링크 태스크는 요청된 시간에 도달하고 애플리케이션 서버로부터 다음 커미트가 수신된 후에 종료합니다.
  • 링크 서버 임시 스토리지 큐 이름 목록 - LTSQ

    LTSQLIST_SRVR 조작에만 적용됩니다. LTSQ는 링크 서버의 목록 및 각각의 정보가 기록되는 CICS 임시 스토리지 큐의 이름입니다. 최대 8문자 길이의 문자열일 수 있습니다. 출력 레코드의 형식을 표시하는 C 헤더 파일이 /<install_root>/AppServer/util/zos/OLASamples/bboaapic.h에서 제공되고 tsq_record struct에서 설명됩니다.

표 1. BBOC. 다음 표는 BBOC 조작 이름, 설명 및 매개변수를 요약합니다.
조작 이름 약어 약어,

설명

매개변수
START_TRUE STR WebSphere Application Server TRUE를 시작합니다. TRC=0/1/2

TDQ=<tdqname>

STOP_TRUE PTR WebSphere Application Server TRUE를 중지합니다. TRC=0/1/2

TDQ=<tdqname>

REGISTER REG WebSphere Application Server 최적화된 로컬 어댑터 디먼 그룹, 노드 및 서버를 등록합니다. RGN=<name>

DGN=<name>

NDN=<name>

SVN=<name>

MNC=<minimum_number_ of_connections>

MXC=<maximum_number_ of_connections>

SEC=<yes|no>

TXN=<yes|no>

TRC=0|1|2

TDQ=<tdqname>

UNREGISTER   WebSphere Application Server 최적화된 로컬 어댑터에서 등록 해제합니다. RGN=<name>
START_SRVR STA 전달된 등록 이름에 대한 WebSphere Application Server 태스크를 시작합니다. RGN=<name>

DGN=<name>

NDN=<name>

SVC=<name>

SVN=<name>

MNC=<minimum_number_ of_connections>

MXC=<maximum_number_ of_connections>

SEC=<yes|no>

STX=<CICS_link_server_ transaction_ID>

LTX=<CICS_link_server_ transaction_ID>

TRC=0|1|2

TDQ=<tdqname>

REU=<yes|no>

REUC=<number_of_requests>

REUT=<number_of_seconds>

STOP_SRVR STP 등록 이름에 대한 WebSphere Application Server 태스크를 중지합니다. RGN=<name>

TRC=0/1/2

TDQ=<tdqname>

LIST_SRVR LST 전달된 등록 이름과 일치하는 모든 링크 서버를 나열합니다. 여기의 매개변수는 등록 이름을 포함하여 모두 선택사항입니다. 매개변수 없이 실행되면 모든 링크 서버의 목록을 리턴합니다. 또한 와일드카드를 갖는 RGN 매개변수를 전달할 수도 있습니다. 별표(*)는 해당 포인트 이후의 모든 문자가 유효함을 표시하고, 물음표(?)는 단일 문자가 임의의 문자일 수 있음을 의미합니다. LIST_SRVR 조작의 출력은 BBOQ 또는 TDQ 매개변수의 이름 지정된 임시 데이터 큐에 기록됩니다. LTSQ 매개변수가 전달되는 경우, 활성 링크 서버의 목록이 이름 지정된 CICS 임시 스토리지 큐에 기록됩니다. RGN=<name>

LTSQ=<tsqname>

TRC=<0/1/2>

TDQ=<tdqname>

CICS 시작 및 시스템 종료 중에 자동으로 BBOC 명령 실행

CICS가 시작할 때 자동으로 최적화된 로컬 어댑터 링크 서버를 시작할 수 있습니다. 이것은 링크 서버가 중지될 때까지 존재하는 장기 실행 태스크 BBO$를 시작합니다. CICS 시작 중에 BBOC 명령을 실행하기 위해, copyZOS.sh 스크립트에 의해 작성되는 로드 라이브러리에서 제공되는 두 개의 CICS PLTPI(Program List Table Post-Initialization) 프로그램이 있습니다. 이 로드 라이브러리는 CICS 시작 중에 BBOC 명령을 실행하는 데 사용될 수 있습니다. CICS 시작 중에 최적화된 로컬 어댑터 태스크 관련 사용자 종료(TRUE)를 사용으로 설정하려는 경우 BBOACPLT를 사용자의 CICS PLT에 2단계 또는 3단계 항목으로 추가하십시오.

두 번째 PLTPI 프로그램인 BBOACPL2가 제공되는데, PLT에(또한 2 또는 3단계에서) 추가될 때 INITPARM 데이터를 사용하여 CICS 시작 중에 BBOC 명령을 실행할 수 있게 합니다. INITPARM 안에서 명령 문자열(최고 60문자의 CICS 한계까지)을 전달할 수 있습니다. 다음 샘플 INITPARM 문자열이 BBOACPL2를 호출하고 디먼 그룹 이름 'DAE1', 노드 이름 'NODE1', 서버 이름 'SERVER1'을 갖는 등록 이름 'PAYROLL'에서 링크 서버를 시작하는 요청을 전달합니다. 이 링크 서버가 모든 서비스 이름에 대한 요청을 수신합니다(SVC=*).
INITPARM=(BBOACPL2='STA RGN=PAYROLL DGN=DAE1 NDN=NODE1 SVN=SERVER1 SVC=*') 
명령 문자열은 임의의 BBOC 명령일 수 있습니다. CICS 시작 중에 10개의 최소 연결 및 100개의 최대 연결로 구성되는 이름 WASAPP를 갖는 등록을 설정하려는 경우 다음을 지정하십시오.
INITPARM=(BBOACPL2='REG RGN=WASAPP DGN=DAE1 NDN=NODE1 SVN=SERVER1 MNC=10 MXC=100')
이 경우에 애플리케이션에서 등록 API를 사용해서는 안되며 대신 즉시 다른 API(예: Invoke, Connection Get, Send Request 등)를 사용해야 합니다.
중요사항: 프로그램당 단 하나의 INITPARM만 있을 수 있다는 점에서 CICS 제한사항이 있습니다(BBOACPL2). 그러므로 CICS 시작 매개변수에서 이를 한 번 수행할 수 있습니다.

BBOACPLTBBOACPL2 제공 PLTPI 프로그램에 대한 소스 및 JCL은 /<install_root>/AppServer/util/zos/OLASamples에서 파일 bboacplt.jclsampbboacpl2.jclsamp로서 제공됩니다. 또 다른 샘플 PLTPI 프로그램도 제공됩니다. /<install_root>/AppServer/util/zos/OLASamples/bboacpl3.jclsamp는 CICS 시작 중에 다중 BBOC 명령을 실행하는 방법을 보여주는 예제를 제공합니다.

또한 /<install_root>/AppServer/util/zos/OLASamples/DFHPLTOL.jclsamp에 포함된 이들 프로그램으로 PLT를 어셈블하는 방법을 보여주는 샘플 JCL도 있습니다.

CICS 시스템 종료 중 링크 서버 중지

CICS 시스템 종료 전에 모든 실행 중인 링크 서버를 등록 해제 및 중지할 필요가 있습니다. 그렇지 않으면 정상 시스템 종료가 계속하지 못할 수 있습니다. CICS 시스템 종료 전/중에 링크 서버를 등록 해제 및 중지하기 위해 다음 중 하나를 수행할 수 있습니다.

  • CICS 시스템 종료 전에 모든 CICS 링크 서버에 대해 BBOC STOP_SERVER 실행
  • IBM®이 제공하는 PLTSD(Program List Table shutdown) 프로그램 BBOACPLS를 시스템 종료 PLT에 추가합니다. 이 PLTSD는 BBOC LIST_SRVR을 실행하여 리젼에서 모든 실행 중인 링크 서버를 식별하며 각 서버에 대해 STOP_SRVR 조작을 실행합니다. 이를 PLT 시스템 종료 목록에 추가하는 방법을 보여주는 샘플 JCL이 /<install_root>/AppServer/util/zos/OLASamples/DFHPLTO2.jclsamp에 제공됩니다.
  • BBO$ 태스크 영구 제거
  • STOP_SERVER 문자열을 전달하여 각 링크 서버에 대해 BBOACNTL에 대한 CICS LINK를 EXEC(실행)하는 사용자 고유의 PLT 시스템 종료 프로그램 작성
  • CEMT P SHUT,IMMED 실행

EXEC CICS LINK PROGRAM('BBOACNTL')를 사용하여 프로그램에서 BBOC 명령 실행

EXEC CICS LINK PROGRAM('BBOACNTL')을 사용하고 COMMAREA에서 명령 문자열을 전달하여 사용자 프로그램에서 BBOC 조작을 구동할 수 있습니다. 전달된 COMMAREA의 명령 문자열의 길이가 268자보다 적은 경우 명령 실행의 결과만을 포함하는 문자열이 리턴됩니다. 길이가 268자보다 크거나 같은 경우, BBOC/BBOACNTL은 256 - 268 바이트의 정수 버전, 정수 리턴 코드 및 정수 이유 코드를 제공합니다. 다음은 버전 1 리턴 영역의 구조입니다.

/* Version 1 DFHCOMMAREA - for EXEC CICS LINK to BBOACNTL */

 struct inputCommarea {
   char command[256];
 };

 struct outputCommarea_v1 {
   char message[256];
   int version;
   int returnCode;
   int reasonCode;
 };

 struct BBOACNTL_Commarea {
   union {
     struct inputCommarea input;
     struct outputCommarea_v1 output;
   };
 };

268바이트보다 크거나 같은 COMMAREA가 BBOACNTL에 대한 입력으로 전달될 때, BBOC/BBOACNTL에 의해 실행된 조작의 버전, 리턴 코드, 이유 코드와 함께 이전에 표시된 영역이 뒤따르는 처음 256 바이트에서 메시지 응답을 얻습니다. 다음은 EXEC CICS LINK에서 BBOACNTL로의 지원되는 리턴 및 이유 코드입니다.

RC 0 RSN 0
	요청이 성공적으로 처리됩니다. 처음 256바이트의 응답 메시지가 추가 정보를 제공합니다. 응답에 대한 추가 정보에 대해서는 리턴된 메시지 ID를 사용하여 Information Center를 검색하십시오.
RC 4 RSN 0
   요청된 등록 이름과 일치하는 링크 서버가 없거나 이 리젼에서 실행 중인 링크 서버가 없습니다. 처음 256바이트의 응답 메시지가 추가 정보를 제공합니다. 응답에 대한 추가 정보에 대해서는 리턴된 메시지 ID를 사용하여 Information Center를 검색하십시오.
RC 8 RSN 0 이상
   요청 처리 중에 오류가 발생했습니다. 처음 256바이트의 응답 메시지가 추가 정보를 제공합니다. 응답에 대한 추가 정보에 대해서는 리턴된 메시지 ID를 사용하여 Information Center를 검색하십시오.
RC 12 RSN 0 이상
   요청 처리 중에 심각한 오류가 발생했습니다. 처음 256바이트의 응답 메시지가 추가 정보를 제공합니다. 응답에 대한 추가 정보에 대해서는 리턴된 메시지 ID를 사용하여 Information Center를 검색하십시오.

BBOACNTL에 대한 EXEC CICS LINK 호출에 대한 명령 문자열에서 LTSQ 매개변수를 전달하면 일치하는 활성 링크 서버의 목록이 LTSQ 매개변수에서 전달되는 CICS 임시 스토리지 큐에 기록됩니다. 목록에 있는 각 링크 서버에 대한 출력 레코드 형식이 /<install_root>/AppServer/util/zos/OLASamples/bboaapic.h에 있는 헤더에서 문서화되고 tsq_record struct에서 설명됩니다.

CICS에 대한 WebSphere Application Server LINK 서버 태스크, BB0$

CICS 트램잭션인 BBO$는 CICS에 대한 WebSphere Application Server 아웃바운드 호출 지원에 사용됩니다. 비터미널 트랜잭션으로서 백그라운드에서 실행하며 사용자가 지정한 등록 이름 및 서비스 이름에 대해 BBOC START_SRVR 조작을 사용하여 시작되는 서버 태스크의 인스턴스를 나타냅니다. 이 서버 태스크는 프로그램 LINK 호출 기능이나 최적화된 로컬 어댑터 API를 통해 WebSphere Application Server에서 기존 CICS 프로그램을 시작하는 기능을 제공합니다. 이 트랜잭션의 이름은 BBOC START_SRVR 명령(STX=xxxx)에서 제공될 수 있는 사용자 제공 이름에 의해 대체될 수 있습니다. 이것이 수행되는 경우 제공되는 트랜잭션 이름은 BBO$와 동일한 프로그램 이름 및 속성을 갖고 CICS에 정의되어야 합니다.

CICS에 대한 WebSphere Application Server 프로그램 LINK 호출 태스크, BBO#

CICS 트랜잭션인 BBO#은 CICS에 대한 WebSphere Application Server 아웃바운드 호출 지원에 사용됩니다. 프로그램 LINK 호출을 수행하기 위해 WebSphere Application Server 어댑터 서버 태스크인 BBO$에 의해 시작된 태스크의 인스턴스를 나타내는 비터미널 트랜잭션입니다. BBO$ 트랜잭션은 WebSphere Application Server에서 배치되는 애플리케이션으로부터 각 CICS 프로그램 링크 요청애 대한 BBO# 트랜잭션을 시작합니다.

이 트랜잭션의 이름은 BBOC START_SRVR 명령(예: LTX=xxxx)에서 제공될 수 있는 사용자 제공 이름에 의해 대체될 수 있습니다. 이것이 수행되는 경우, 제공되는 트랜잭션 이름이 BBO# 트랜잭션과 동일한 프로그램 이름 및 속성을 갖는 CICS에 정의되어야 합니다. 또는, 링크 트랜잭션의 4문자 이름이 JCA를 사용 중인 애플리케이션에 의해 WebSphere Application Server로부터 전달될 수 있습니다. 이 시나리오에서, 어댑터를 사용 중인 애플리케이션이 setLinkTaskTransid 메소드를 사용 중입니다.

WebSphere Application Server에서 CICS로 사용자 ID 어설션

이 서버 태스크는 CICS로의 WebSphere Application Server 호출로부터 사용자 ID의 전파 및 해당 ID의 어설션을 지원합니다. 어설션은 등록 태스크가 SEC=Y로 설정된 보안 매개변수와 함께 수행된 경우에만 수행됩니다. EXEC CICS START TRANSACTION(‘BBO#') USERID(<user_id>).

BBO$ 트랜잭션이 실행 중인 사용자 ID가 전달된 사용자 ID 대신 트랜잭션을 시작할 권한을 갖는지 확인하기 위해 SAF SURROGAT 클래스 정의가 정의되어야 합니다.

SEC=N과 함께 BBOC STRT_SRVR을 실행하는 경우, CICS로의 인바운드 요청과 연관된 사용자 ID는 BBOC 트랜잭션을 실행한 사용자 ID입니다.

샘플 BBOC 호출

다음은 다양한 태스크 및 구성이 CICS 어댑터 프로그램 링크 지원으로 수행될 수 있는 방법을 보여주는 BBOC 호출의 샘플입니다.
  • 어댑터 CICS TRUE 프로그램을 시작하십시오.

    bboc start_true

  • 어댑터 CICS TRUE 프로그램을 중지하십시오.

    bboc stop_true

  • 디먼 그룹 SY1에서 노드 SY1, 서버 BBOS001, 10개의 최대 연결, 5개의 최소 연결을 갖는 이름 CICS-HR1을 사용하여 등록하십시오. 트랜잭션을 no로 설정하고 보안 전파를 yes로 설정하십시오.

    bboc register rgn=CICS-HR1 svn=bbos001 dgn=sy1 ndn=sy1 mnc=5 mxc=10 txn=n sec=y

  • CICS-HR1 이름을 등록 해제하십시오.

    bboc unregister rgn=CICS-HR1

  • 10개의 최대 연결과 5개의 최소 연결을 갖는 디먼 그룹, 노드 및 서버를 갖고 등록 이름 CICSPAYR의 모든 서비스 및 프로그램 이름에 대해 서버 트랜잭션을 BBO$로서 시작하십시오. 트랜잭션을 no, 보안 전파를 yes로 설정하십시오.

    bboc start_srvr rgn=CICSPAYR svn=bbos001 dgn=sy1 ndn=sy1 mnc=5 mxc=10 sec=y

  • 등록 이름 CICSPAYR 아래에서 실행 중인 BBO$ 서버 트랜잭션을 중지하십시오.

    bboc stop_srvr rgn=CICSPAYR

  • 10개의 최대 연결과 5개의 최소 연결을 갖는 디먼 그룹, 노드 및 서버를 갖고 등록 이름 CICSPAY1 하에서 PAYR로 시작하는 서비스 및 프로그램 이름에 대해 서버 트랜잭션을 BBO$로서 시작하십시오. 트랜잭션은 no이고 보안 전파는 yes입니다.

    bboc start_srvr rgn=CICSPAY1 svn=bbos001 dgn=sy1 ndn=sy1 mnc=5 mxc=10 sec=y svc=PAYR*

  • 10개의 최대 연결과 5개의 최소 연결을 갖는 디먼 그룹, 노드 및 서버에 있는 모든 서비스 및 프로그램 이름에 대해 트랜잭션 ID가 PAY2이고 이름이 PAYROLL2인 등록에서 서버 트랜잭션을 시작하십시오. 트랜잭션 매개변수값은 yes, 보안 전파 값은 yes이고, 추적 레벨은 레벨 1로 설정됩니다.

    bboc start_srvr rgn=PAYROLL2 svn=bbos001 dgn=sy1 ndn=sy1 mnc=5 mxc=10 sec=y stx=PAY2 trc=1

  • PAY3의 트랜잭션 ID, PY3L의 링크 트랜잭션 ID 아래에서 서버 트랜잭션을 시작하십시오. 10개의 최대 연결과 5개의 최소 연결을 갖는 디먼 그룹, 노드 및 서버에서 PAYRL3으로 시작하는 서비스 및 프로그램 이름에 대해 이름 PAYROLL3으로 등록하십시오. 트랜잭션 매개변수값은 yes이고 보안 전파 매개변수값은 yes이며 추적이 레벨 1로 설정됩니다.

    bboc start_srvr rgn=PAYROLL3 svn=bbos001 dgn=sy1 ndn=sy1 mnc=5 mxc=10 sec=y svc=PAYRL3* stx=PAY3 ltx=PY3L trc=1

  • 이 CICS 리젼에서 실행 중인 모든 링크 서버 나열

    bboc list_srvr

  • CICSPAY1의 등록 이름을 갖는 이 CICS 리젼에서 실행 중인 모든 링크 서버 나열

    bboc list_srvr rgn=CICSPAY1

  • CICS의 등록 이름으로 시작하는 이 CICS 리젼에서 실행 중인 모든 링크 서버를 나열하고 목록을 MYSRVRS라는 임시 스토리지 큐에 복사

    bboc list_srvr rgn=CICS* ltsq=MYSRVRS

  • 'CICS' 및 'ZZZ' 및 그 뒤에 임의의 다른 문자가 뒤따르는 임의의 문자로 시작하는 등록 이름으로 시작하는 이 CICS 리젼에서 실행하는 모든 링크 서버 나열

    bboc list_srvr rgn=CICS?ZZZ*

CICS 채널 및 컨테이너 오브젝트 지원

32K보다 큰 메시지의 경우, WebSphere Application Server로부터 시작되는 CICS 애플리케이션 프로그램은 CICS 채널 및 컨테이너를 사용하여 데이터를 수신하고 응답 데이터를 전송해야 합니다. WebSphere Application Server에 배치되는 애플리케이션은 제공되는 JCA 프로그래밍 인터페이스를 사용하여 대상 프로그램으로 데이터를 전달하는 CICS 컨테이너의 이름 및 유형(BIT|CHAR) 및 애플리케이션에서 응답을 수신하는 컨테이너의 이름과 유형을 제공할 수 있습니다.

CICS로 채널 및 컨테이너를 전달하는 두 가지 방법이 있습니다. 두 경우 모두, ConnectionSpecImpl의 setUseCICSContainer() 메소드가 '1'로 설정되어야 합니다.
  • 단일 컨테이너를 전달하고 단일 컨테이너를 수신할 때, setLinkTaskReqContid, setLinkTaskRspContid, setLinkTaskReqContType(bit|char), setLinkTaskRspContType(bit|char) 메소드가 사용될 수 있습니다. 요청 및 응답 모두에 대해 채널 이름 IBM-WAS-ADAPTER가 사용됩니다. 이 채널 이름은 고정입니다.
  • 또는, JCA MappedRecord 인터페이스를 사용하여 대상 CICS 프로그램에서 하나 이상의 컨테이너를 전송 및 수신할 수 있습니다. MappedRecord를 사용할 때, ConnectionSpecImpl의 setLinkTaskChanID() 및 setLinkTaskChanType() 메소드를 사용하여 요청 및 응답 컨테이너를 보유하는 데 사용될 채널 이름뿐 아니라 채널에 포함될 컨테이너의 유형(bit 또는 char)을 설정하십시오.

    개별 요청 컨테이너의 이름은 put() 메소드를 사용하여 데이터를 MappedRecord에 추가하여 설정됩니다.

    MappedRecord의 키가 CICS 컨테이너 이름에 대응하며, 대응하는 값이 CICS에서 컨테이너를 채우는 데 사용됩니다. 키는 1 - 16문자 사이의 길이를 갖는 String 오브젝트여야 합니다. 값은 byte[] 또는 Rational® Application Developer 같은 도구 작업에 의해 생성되는 RecordBytes 오브젝트일 수 있습니다.

    응답 컨테이너 이름은 CICS 요청이 완료된 후 채널에서 추출되고, 클라이언트로 리턴되는 새 MappedRecord로 채워집니다.


주제 유형을 표시하는 아이콘 참조 주제



시간소인 아이콘 마지막 업데이트 날짜: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rdat_cics
파일 이름:rdat_cics.html