예제
본 장에서는 AnyLink 웹 서비스 어댑터를 사용한 예제를 설명한다.
1. 개요
사용된 전문은 모두 XML 형식의 메시지를 사용한다.
다음은 웹 서비스 기본 거래 구성이다.
다음은 거래 순서를 수행하는 과정에 대한 설명이다.
-
Sample WebService Client를 통해 요청 입력 전문을 전송한다.
-
인바운드 어댑터로 전문 수신 후 서비스 플로우 수행한다.
-
서비스 플로우에서 요청 입력 전문을 요청 출력 전문으로 매핑한다.
-
아웃바운드 어댑터를 통해 요청 출력 전문을 Sample WebService Server로 전송한다.
-
Sample WebService Server에서 응답 입력 전문을 전송한다.
-
서비스 플로우에서 응답 입력 전문을 응답 출력 전문으로 매핑한다.
-
인바운드 어댑터로 응답 출력 전문을 Sample WebService Client로 전송한다.
2. 어댑터 생성
AnyLink WebAdmin에 로그인한 후 초기 화면에서 [구성관리] > [어댑터]를 선택한 후 어댑터 목록 화면의 [Add] 버튼을 클릭하면 어댑터 등록 화면이 나타난다. 어댑터 생성에 대한 자세한 내용은 어댑터 설정을 참고한다.
AnyLink WebAdmin의 접속 및 사용법에 관한 자세한 내용은 AnyLink WebAdmin 안내서를 참고한다. |
3. 엔드포인트 생성
어댑터 생성이 완료되면 [어댑터] 탭에서 등록된 어댑터를 조회하고, 조회된 어댑터를 클릭하면 어댑터 상세정보 화면으로 이동한다.
[엔드포인트 목록] 탭 아래 [Add] 버튼을 클릭하면 엔드포인트 등록 화면이 나타난다. 엔드포인트 생성에 대한 자세한 설명은 엔드포인트 설정을 참고한다.
3.1. 인바운드 엔드포인트 생성
다음은 웹 서비스 인바운드 엔드포인트를 등록하는 예제이다.
-
기본정보
인바운드 엔드포인트 등록 화면 - 기본정보항목 설정값 엔드포인트 아이디
WS_EP_IN
엔드포인트 이름
WS_EP_IN
엔드포인트 상태
Running
부팅 초기값
Running
통신 방향
Inbound
-
[연결정보] 탭
인바운드 엔드포인트 등록 화면 - 연결정보항목 설정값 WSDL
ib_bizTx.wsdl (스튜디오에서 생성한 인바운드 거래의 WSDL 파일명을 입력한다.)
context Path
/tutorial
URL
/WS_tutorial_biztx
바인딩 타입
SOAP
-
[상세설정] 탭
인바운드 엔드포인트 등록 화면 - 상세설정항목 설정값 거래그룹/거래
com.tmax.tutorial.webServiceTutorial.bizTx (거래그룹/거래 항목은 직접 입력해도 되고 스튜디오에서 거래그룹/거래 생성 후 배포한 리소스를 거래그룹/거래 선택 화면에서 선택하여도 무방하다.)
4. 스튜디오 리소스 생성
본 절에서는 스튜디오에서 리소스를 생성하는 방법에 대해서 설명한다.
AnyLink 스튜디오 사용법에 대한 자세한 내용은 AnyLink 스튜디오 안내서를 참고한다. |
4.1. 거래그룹 생성
거래그룹 네비게이터에서 프로젝트를 선택한 다음 컨텍스트 메뉴에서 [새로만들기] > [거래 / 거래그룹]을 선택한다.
항목 | 설정값 |
---|---|
패키지 이름 |
com.tmax.tutorial |
거래 ID |
webServiceTutorial |
거래 이름 |
웹서비스예제 |
4.2. 거래 생성
거래그룹 네비게이터에서 거래그룹을 선택한 다음 컨텍스트 메뉴에서 [새로만들기] > [거래 / 거래그룹]을 선택한다.
항목 | 설정값 |
---|---|
노드 타입 |
거래 |
거래 ID |
bizTx |
거래 이름 |
웹서비스거래 |
5. 웹 서비스 가져오기
본 절에서는 웹 서비스 가져오기 기능을 이용하여 아웃바운드 웹 서비스 서비스를 설정하는 방법에 대하여 설명한다. 자세한 설명은 WSDL 가져오기/내보내기를 참고한다.
다음의 과정으로 웹 서비스 가져오기를 수행한다.
-
거래그룹 네비게이터에서 거래를 선택한 다음 컨텍스트 메뉴에서 [가져오기]를 선택한다.
-
[AnyLink import] 메뉴의 [웹 서비스 가져오기]를 선택한다.
-
로컬 파일 시스템에 존재하는 WSDL 파일 경로를 입력하거나 URL을 입력하여 WSDL을 가져올 수 있다. 아웃바운드 서비스를 가져와야 하므로 아웃바운드 타입을 선택한다.
웹 서비스 가져오기 (2)본 예제에서는 다음 형식으로 서버 URL을 설정해서 WSDL 파일을 가져올 수 있다.
{$IP}:{$PORT}/{$CONTEXT_PATH}/{$URL}?wsdl
-
웹 서비스 가져오기를 통하여 생성될 리소스들의 경로를 선택한다.
웹 서비스 가져오기 (3) -
다음과 같이 리소스들이 생성되는 것을 확인할 수 있다.
웹 서비스 가져오기 결과 -
웹 서비스 아웃바운드 룰을 선택하여 엔드포인트를 설정한다.
웹 서비스 아웃바운드 룰
6. 스튜디오 리소스 설정
본 절에서는 생성한 리소스를 설정하는 방법에 대해서 설명한다.
AnyLink 스튜디오 사용법에 대한 자세한 내용은 AnyLink 스튜디오 안내서를 참고한다. |
6.1. 거래그룹 설정
다음은 거래그룹을 설정하는 예제이다. [파싱정보] 탭과 [파싱 옵션] 탭은 설정하지 않는다.
-
[거래그룹 정보] 탭
거래그룹 설정 - [거래그룹 정보]항목 설정값 요청 메시지
사용 안함
정상 응답 메시지
사용 안함
Bypass 설정
NO
XA 설정
NO
오류 응답 방식
NONE
-
[거래그룹 옵션] 탭
거래그룹 설정 - [거래그룹 옵션]항목 설정값 거래 플로우 타임아웃(ms)
60000
응답 유무
REQUEST_RESPONSE
거래 우선순위
MEDIUM
6.2. 거래 설정
다음은 거래를 설정하는 예제이다. [파싱정보] 탭과 [파싱 옵션] 탭은 설정하지 않는다.
-
[거래정보] 탭
거래 설정 - [거래정보]항목 설정값 요청 메시지
Xml메시지(XmlMessage)
정상 응답 메시지
Xml메시지(XmlMessage)
Bypass 설정
NO
XA 설정
NO
오류 응답 방식
PARENT
서비스 타입
FLOW
서비스 이름
WS_플로우(WS_FLOW_Message_STRT_Event_01480C)(랜덤으로 생성됨)
-
[거래 옵션] 탭
거래 설정 - [거래 옵션]항목 설정값 거래 플로우 타임아웃(ms)
미설정
타임아웃 설정 안함
체크
응답 유무
PARENT
거래 우선순위
MEDIUM
6.3. 메시지 설정
메시지 설정에 관한 자세한 내용은 AnyLink 스튜디오 안내서를 참고한다.
항목 | 설정값 |
---|---|
메시지 타입 |
XML |
필드1 |
header |
필드2 |
body |
6.4. 아웃바운드 룰 설정
아웃바운드 룰의 경우 웹 서비스 가져오기에서 설정하였으므로 별도의 설정은 하지 않는다.
6.5. 플로우 설정
다음의 과정으로 플로우를 설정한다.
-
플로우 그리기
-
변수 설정
-
메시지 이벤트 설정
-
아웃바운드 호출 설정
-
응답 호출 설정
플로우 그리기
다음은 예제에 대한 서비스 플로우이다.
변수 설정
변수 설정을 하기 위해 플로우 에디터 바탕의 컨텍스트 메뉴에서 [Property]를 선택한다.
메시지 이벤트 설정
플로우 에디터의 [메시지 이벤트] 컨텍스트 메뉴에서 [Property]를 선택한다. Event Preference 화면에서 [파라미터 설정]을 선택한다.
아웃바운드 호출 설정
다음의 과정으로 아웃바운드 호출을 설정한다.
-
플로우 에디터의 [아웃바운드 호출] > [아웃바운드 룰]의 컨텍스트 메뉴에서 [Property]를 선택한다. Activity Preference 화면에서 [파라미터 설정]을 선택한다.
아웃바운드 호출 - 파라미터 설정 -
Activity Preference 화면에서 [아웃바운드 룰(서비스) 설정]을 선택한다.
아웃바운드 호출 - 아웃바운드 룰(서비스) 설정 -
Activity Preference 화면에서 '요청 매핑 사용'과 '응답 매핑 사용'을 체크하고 [Mapping] 버튼을 클릭해서 각 매핑정보를 설정한다.
아웃바운드 호출 - 아웃바운드 룰(서비스) 설정 - 요청 매핑아웃바운드 호출 - 아웃바운드 룰(서비스) 설정 - 응답 매핑
응답 호출 설정
다음의 과정으로 응답 호출을 설정한다.
-
플로우 에디터의 [응답 송신] > [Reply 메시지]의 컨텍스트 메뉴에서 [Property]를 선택한다. Activity Preference 화면에서 [Reply Message]를 선택한다.
응답 호출 - Reply Message -
Activity Preference 화면에서 '서비스 매핑'을 체크하고 [Mapping] 버튼을 클릭해서 각 매핑정보를 설정한다.
Mapping 화면의 Source 영역의 컨텍스트 메뉴에서 [Add source]를 선택하여 ReqInHeader, ResInHeader, ResInBody를 선택한 후 매핑한다.
응답 호출 - Reply Message - 서비스 매핑 - Reply Mapping
7. 웹 서비스 내보내기
본 절에서는 웹 서비스 인바운드 거래를 위한 WSDL을 웹 서비스 내보내기 기능을 통하여 만드는 방법을 설명한다. 자세한 설명은 WSDL 가져오기/내보내기를 참고한다.
다음의 과정으로 웹 서비스 내보내기를 수행한다.
-
거래그룹 네비게이터에서 거래를 선택한 다음 컨텍스트 메뉴에서 [내보내기]를 선택한다.
-
[AnyLink Export] 메뉴의 [웹 서비스 내보내기]를 선택한다.
-
웹 서비스로 만들 거래를 선택한다.
웹 서비스 내보내기 (2) -
다음과 같이 ib_bizTx.wsdl이 자동적으로 생성되는 것을 확인할 수 있다.
웹 서비스 내보내기 결과