SOAP to JDBC Interface 개발방법입니다.
Sync 방식으로 타겟쪽에 Insert가 잘되었는지 Response Message를 받아 확인하는 Interface 입니다.
타겟쪽 테이블입니다.
테이블 명은 HEAD_TABLE입니다.
이 구조에 맞추어 WSDL을 작성하도록 할 것입니다.
<< Enterprise Services Builder >>
먼저 소스쪽 오브젝트 부터 생성합니다.
Sync 방식이기 때문에
1. Data Type (Request, Response) 두개
2. Message Type (Request, Response ) 두개
3, Service Interface 한개
순으로 만듭니다.
1. Data Type 만들기
(1) Request Data Type : SOAP2JDBC_OUT_DT
SOAP방식은 Element Name에 구애받지 않으므로 최상위 엘리먼트 이름은 임의적으로 LIST로 주었습니다.
LIST에는 여러값이 들어오게 되므로 1..unbounded로 줍니다.
하위 엘리먼트는 타겟쪽 테이블의 필드와 같이 ID, H_INDEX, DATA1, DATA2를 생성합니다.
ID와 H_INDEX는 키값이기 때문에 1로 주고, DATA는 필수값이 아니기때문에 0..1로 줍니다.
(2) Response Data Type : SOAP2JDBC_OUT_DT_RE
Response Data Type의 이름은 Request Data Type의 이름에서 _RE만 붙여 만들었습니다.
이름에는 상관 없지만 Response Data Type의 최상위 엘리먼트 뒤에는 반드시 소문자로 _reponse를 붙여줘야합니다.
2. Message Type 만들기
(1) Request Message Type : SOAP2JDBC_OUT_MT
Request Data Type을 Load하여 Request Message Type을 생성합니다.
(2) Response Message Type : SOAP2JDBC_OUT_MT_reponse
Response Data Type을 Load하여 Response Message Type을 생성합니다.
Response Message Type 이름의 뒤에는 반드시 소문자로 _reponse를 붙여줘야합니다.
3. Service Interface 만들기 : SOAP2JDBC_OUT
Outbound / Synchronous를 선택하고,
Request/Response에 맞는 메시지타입을 load하여 생성합니다.
소스쪽 오브젝트 생성이 완료되었습니다.
다음은 타겟쪽 오브젝트를 생성할 차례입니다.
타겟쪽도 마찬가지로
1. Data Type (Request, Response) 두개
2. Message Type (Request, Response ) 두개
3, Service Interface 한개
순으로 만듭니다.
1. Data Type 만들기
(1) Request Data Type : SOAP2JDBC_IN_DT
타겟쪽은 JDBC이기 때문에 JDBC Adapter의 Document Format에 따라 작성해야하므로 반드시 아래 구조와 같이 만들어줘야합니다.
action에는 INSERT, UPDATE, DELETE, UPDATE_INSERT, SELECT, SQL_QUREY와 같이 어떤 쿼리를 이용할 것인지가 들어가고,
action은 Element가 아닌 Attribute로 작성해줘야합니다.
table에는 이용할 테이블명이 들어갑니다.
access의 하위엘리먼트에는 이용할 필드명이 들어갑니다.
자세한 JDBC Adapter의 Document Format내용은 아래 문서에서 확인 하시면됩니다.
[[ Document Formats for the JDBC Adapter ]]
(2) Response Data Type : SOAP2JDBC_IN_DT_RE
마찬가지로 Document Format에 따라 작성하였습니다.
최상위 엘리먼트에는 역시 _reponse를 붙여줍니다.
insert_count라는 엘리먼트를 생성하면 JDBC Adapter가 INSERT 횟수를 카운트 하여 response 해줍니다.
이 내용 역시, 링크의 문서에서 확인하시면 됩니다.
[[ Document Formats for the JDBC Adapter ]]
2. Message Type 만들기
(1) Request Message Type : SOAP2JDBC_IN_MT
Request Data Type을 Load하여 Request Message Type을 생성합니다.
(2) Response Message Type : SOAP2JDBC_IN_MT_reponse
Response Data Type을 Load하여 Response Message Type을 생성합니다.
Response Message Type 이름의 뒤에는 반드시 소문자로 _reponse를 붙여줘야합니다.
3. Service Interface 만들기 : SOAP2JDBC_IN
Inbound / Synchronous를 선택하고,
Request/Response에 맞는 메시지타입을 load하여 생성합니다.
이제 소스쪽과 타겟쪽의 오브젝트 생성을 모두 마쳤으니 서로 매핑을 해줄 차례입니다.
매핑은
1. Message Mapping ( Request, Response) 두개
2. Operation Mapping 한개
순으로 만듭니다.
1. Message Mapping
(1) Request Message Mapping : SOAP2JDBC_MM
action에는 INSERT를, table에는 타겟쪽 테이블명인 HEAD_TABLE을 매핑합니다.
LIST와 access를 매핑해주고 하위 엘리먼트들도 각각 연결 시킵니다.
(2) Response Message Mapping : SOAP2JDBC_MM_RE
2. Operation Mapping : SOAP2JDBC_OM
Operration Mapping은 다음과 같이 Outbound / Inbound Service Interface를 먼저 Load하고,
Request/Response 탭에 맞는 Message Mapping을 할당해줍니다.
매핑까지 완료하고 <Enterprise Services Builder>에서 해야할 일은 모두 마쳤습니다.
다음은 <Integration Builder>에서 오브젝트를 생성해야합니다.
<< Integration Builder >>
Integration Builder에서는
1. Communication Channel (Sender, Receiver) 두개
2. Receiver Determination
3. Interface Determination
4. Sender Agreement
5. Receiver Agreement
순으로 오브젝트를 생성하겠습니다.
1. Communication Channel
(1) Sender Channel : KAY_SOAP2JDBC_SOAPSender
특별한 입력사항은 없고, Sync이므로 Quality of Service는 Best Effort를 선택한다.
(2) Receiver Channel : KAY_SOAP2JDBC_JDBCReceiver
DB 접속 정보를 입력해 줍니다.
2. Receiver Determination
3. Interface Determination
4. Sender Agreement
5. Receiver Agreement
Integration Builder 오브젝트 생성이 끝나면 모든 준비가 완료되었습니다.
WSDL 생성방법은 아래 링크를 참조하시면 됩니다.
[[[XI/PI] SOAP Sender Channel의 WSDL 만드는 방법]]
'EAI > XI/PI' 카테고리의 다른 글
[XI/PI] Dual Stack object to Single Stack object (Directory Content Migration Tool) (0) | 2015.01.19 |
---|---|
[XI/PI] XML Validation 사용하기 (0) | 2014.04.25 |
[XI/PI] SXMB_MONI에서 로그를 커스터마이징하여 보는 방법 (0) | 2014.04.25 |
[XI/PI] ABAP Proxy to XI SOAP - 첨부파일 Attachment (0) | 2014.04.15 |
[XI/PI] Message Mapping 제거 (0) | 2014.04.15 |