클라이언트 응용프로그램이 웹 서비스로(부터) 송수신하는 메시지의 XML
태그를 사용자 정의할 수 있습니다.
웹 서비스에 포함되는 각각의 조작에 대해 워크벤치는 해당 조작의 입력 및
출력 XML 메시지에 대해 설명하는 디폴트 XML 스키마를 생성합니다. 웹 서비스
조작의 입력 메시지가 XML로 되어 있을 경우 이 디폴트 XML 스키마에 따라
메시지에 태그가 부착됩니다. 조작에 대해 웹 서비스가 생성하는 모든 출력
메시지에도 디폴트 XML 스키마에 따라 태그가 부착됩니다.
웹 서비스 조작에 대해 XML 입력 메시지, 출력 메시지 또는 두 유형의
메시지 모두의 XSL 변환을 구성할 수 있습니다. 이러한 XSL 변환은 입력 및
출력 메시지 플로우 중에 발생합니다.
사용자 정의 SOAP/HTTP 및 HTTP POST(text/xml) 메시지의 플로우에는
입력 메시지와 출력 메시지에 대해 각각 하나씩 두 개의 XSL 변환이 포함됩니다.
사용자 정의 HTTP GET/POST(url 인코딩됨) 메시지의 플로우에는 출력 메시지에
대한 하나의 XSL 변환만 포함됩니다.
다음 섹션에서는 지원되는 메시지 프로토콜을 사용하는 메시지에 대한
XSL 변환에 대해 설명합니다.
SOAP/HTTP 메시지 프로토콜을 사용하는 XSL 변환
이 섹션에서는
SOAP/HTTP 메시지의 디폴트 메시지 플로우에 대해 설명한 후 XSL 변환을 통합하는
플로우에 대해 설명합니다.
웹 서비스 조작의 디폴트 메시지 플로우(XSL 변환이 포함되어 있지 않음)에서는
다음 단계를 수행합니다.
- 클라이언트 응용프로그램이 웹 서비스의 조작에 액세스하는 SOAP/HTTP 메시지를
송신합니다. 메시지 본문은 XML로 되어 있으며 디폴트 스키마에 따라 태그가
부착됩니다.
- 웹 서비스가 메시지를 수신하며 조작에 있는 스토어드 프로시저 호출 또는
SQL문을 데이터베이스에 전달합니다.
- 웹 서비스가 데이터베이스에서 응답을 수신한 후 조작의 디폴트 XML 스키마에
따라 태그가 부착되는 XML 메시지에 응답을 패키지화합니다.
- 웹 서비스가 응답을 클라이언트 응용프로그램에 송신합니다.
XSL 변환 구성시 웹 서비스 조작의 메시지 플로우에서는
다음 단계를 수행합니다.
- 클라이언트 응용프로그램이 웹 서비스의 조작에 액세스하는 SOAP/HTTP 메시지를
송신합니다. 사용자 정의 XML 스키마에 따라 SOAP 본문의 XML 메시지에 태그가
부착됩니다.
- 메시지가 변환되어 디폴트 XML 스키마에 따라 태그가 부착됩니다.
- 웹 서비스가 메시지를 수신하며 조작에 있는 스토어드 프로시저 호출 또는
SQL문을 데이터베이스에 전달합니다.
- 웹 서비스가 데이터베이스에서 응답을 수신한 후 조작의 디폴트 XML 스키마에
따라 태그가 부착되는 XML 메시지에 응답을 패키지화합니다.
- 메시지가 변환되어 사용자 정의 XML 스키마에 따라 태그가 부착됩니다.
- 웹 서비스가 응답을 클라이언트 응용프로그램에 송신합니다.
그림 2. XSL 변환을 통합하는 메시지의 플로우
표 1. XSL 변환으로(부터)의 입력 및 출력 |
XSL 변환으로의 입력 |
XSL 변환으로부터의 출력 |
첫 번째 XSL 변환 |
사용자 정의 XML 스키마를 사용하는 SOAP 랩핑된
유효한 XML 문서 |
디폴트 XML 스키마를 사용하는 SOAP 랩핑된
유효한 XML 문서 |
두 번째 XSL 변환 |
디폴트 XML 스키마를 사용하는 SOAP 랩핑된
유효한 XML 문서 |
사용자 정의 XML 스키마를 사용하는 SOAP 랩핑된
유효한 XML 문서 |
다음 표에 설명된
것과 같이 웹 서비스 작성 시에는 다음 파일을 제공해야 합니다.
- 첫 번째 변환을 사용 가능으로 설정하려면 사용자 정의 XML 스키마를 디폴트
XML 스키마에 맵핑하는 XSL 파일 및 사용자 정의 XML 스키마의 사본을 웹 서비스에
제공해야 합니다.
- 두 번째 변환을 사용 가능으로 설정하려면 디폴트 XML 스키마를 사용자 정의
XML 스키마에 맵핑하는 XSL 파일 및 사용자 정의 XML 스키마의 사본을 웹 서비스에
제공해야 합니다.
표 2. 웹 서비스에 제공해야 하는
파일입력 메시지의 XSL
변환 |
출력 메시지의 XSL
변환 |
사용자 정의 XML 스키마(XSD 파일) |
XSL 파일 |
사용자 정의 XML 스키마(XSD 파일) |
XSL 파일 |
X |
X |
X |
X |
HTTP POST(text/xml) 메시지 프로토콜을 사용하는
XSL 변환
이 섹션에서는 HTTP POST(text/xml) 메시지의 디폴트
메시지 플로우에 대해 설명한 후 XSL 변환을 통합하는 플로우에 대해 설명합니다.
웹 서비스 조작의 디폴트 메시지 플로우(XSL 변환이 포함되어 있지 않음)에서는
다음 단계를 수행합니다.
- 클라이언트 응용프로그램이 웹 서비스의 조작에 액세스하는 HTTP POST(text/xml)
메시지를 송신합니다. 메시지는 XML로 되어 있으며 디폴트 스키마에 따라 태그가
부착됩니다.
- 웹 서비스가 메시지를 수신하며 조작에 있는 스토어드 프로시저 호출 또는
SQL문을 데이터베이스에 전달합니다.
- 웹 서비스가 데이터베이스에서 응답을 수신한 후 조작의 디폴트 XML 스키마에
따라 태그가 부착되는 XML 메시지에 응답을 패키지화합니다.
- 웹 서비스가 응답을 클라이언트 응용프로그램에 송신합니다.
XSL 변환 구성시 웹 서비스 조작의 메시지 플로우에서는
다음 단계를 수행합니다.
- 클라이언트 응용프로그램이 웹 서비스의 조작에 액세스하는 HTTP POST(text/xml)
메시지를 송신합니다. 사용자 정의 XML 스키마에 따라 메시지에 태그가 부착됩니다.
- 메시지가 변환되어 디폴트 XML 스키마에 따라 태그가 부착됩니다.
- 웹 서비스가 메시지를 수신하며 조작에 있는 스토어드 프로시저 호출 또는
SQL문을 데이터베이스에 전달합니다.
- 웹 서비스가 데이터베이스에서 응답을 수신한 후 조작의 디폴트 XML 스키마에
따라 태그가 부착되는 XML 메시지에 응답을 패키지화합니다.
- XML로 되어 있고 사용자 정의 XML 스키마에 따라 태그가 부착되거나
비XML 형식(예: HTML 또는 일반 텍스트)으로 되어 있도록 메시지가 변환됩니다.
- 웹 서비스가 응답을 클라이언트 응용프로그램에 송신합니다.
그림 4. XSL 변환을 통합하는 메시지의 플로우
표 3. XSL 변환으로(부터)의 입력 및 출력 |
XSL 변환으로의 입력 |
XSL 변환으로부터의 출력 |
첫 번째 XSL 변환 |
사용자 정의 XML 스키마를 사용하는
유효한 XML 문서 |
디폴트 XML 스키마를 사용하는 유효한
XML 문서 |
두 번째 XSL 변환 |
디폴트 XML 스키마를 사용하는 유효한
XML 문서 |
사용자 정의 XML 스키마를 사용하는 유효한
XML 문서 또는 비XML 문서 |
다음 표에 설명된
것과 같이 웹 서비스 작성 시에는 다음 파일을 제공해야 합니다.
- 첫 번째 변환을 사용 가능으로 설정하려면 사용자 정의 XML 스키마를
디폴트 스키마에 맵핑하는 XSL 파일만 웹 서비스에 제공해야 합니다. 사용자
정의 XML 스키마의 사본은 제공하지 않아도 됩니다.
- 두 번째 변환을 사용 가능으로 설정하기 위해 웹 서비스에 제공하는
파일이 사용자가 원하는 출력에 종속됩니다.
- XML로의 변환을 사용 가능으로 설정하려면 사용자 정의 XML 스키마를
디폴트 스키마에 맵핑하는 XSL 파일만 웹 서비스에 제공해야 합니다. 사용자
정의 XML 스키마의 사본은 제공하지 않아도 됩니다.
- 비XML 형식으로의 변환을 사용 가능으로 설정하려면 디폴트 XML 스키마를
비XML 형식에 맵핑하는 XSL 파일을 제공해야 합니다.
표 4. 웹 서비스에 제공해야 하는
파일입력 메시지의 XSL
변환 |
출력 메시지의 XSL
변환 |
사용자 정의 XML 스키마(XSD 파일) |
XSL 파일 |
사용자 정의 XML 스키마(XSD 파일) |
XSL 파일 |
|
X |
|
X |
HTTP GET/POST(url 인코딩됨) 메시지 프로토콜을
사용하는 XSL 변환
이 섹션에서는 HTTP GET(url 인코딩됨) 및 HTTP POST(url 인코딩됨)
메시지의 디폴트 메시지 플로우에 대해 설명한 후 XSL 변환을 통합하는 플로우에
대해 설명합니다.
웹 서비스 조작의 디폴트 메시지 플로우(XSL 변환이 포함되어
있지 않음)에서는 다음 단계를 수행합니다.
- 클라이언트 응용프로그램이 웹 서비스의 조작에 액세스하는 HTTP GET(url 인코딩됨) 또는
HTTP POST(url 인코딩됨) 메시지를 송신합니다. 메시지는 텍스트의 문자열에 있는
매개변수의 인코딩된 시퀀스입니다.
- 웹 서비스가 메시지를 수신하며 조작에 있는 스토어드 프로시저 호출 또는
SQL문을 데이터베이스에 전달합니다.
- 웹 서비스가 데이터베이스에서 응답을 수신한 후 조작의 디폴트 XML 스키마에
따라 태그가 부착되는 XML 메시지에 응답을 패키지화합니다.
- 웹 서비스가 응답을 클라이언트 응용프로그램에 송신합니다.
XSL 변환 구성시 웹 서비스 조작의 메시지 플로우에서는
다음 단계를 수행합니다.
- 클라이언트 응용프로그램이 웹 서비스의 조작에 액세스하는 HTTP GET(url 인코딩됨) 또는
HTTP POST(url 인코딩됨) 메시지를 송신합니다. 메시지는 매개변수를 인코딩합니다.
XSL 변환은 이러한 메시지에 대해 사용할 수 없습니다.
- 웹 서비스가 메시지를 수신하며 조작에 있는 스토어드 프로시저 호출 또는
SQL문을 데이터베이스에 전달합니다.
- 웹 서비스가 데이터베이스에서 응답을 수신한 후 조작의 디폴트 XML 스키마에
따라 태그가 부착되는 XML 메시지에 응답을 패키지화합니다.
- XML로 되어 있고 사용자 정의 XML 스키마에 따라 태그가 부착되거나
비XML 형식(예: HTML 또는 일반 텍스트)으로 되어 있도록 메시지가 변환됩니다.
- 웹 서비스가 응답을 클라이언트 응용프로그램에 송신합니다.
그림 6. XSL 변환을 통합하는 메시지의 플로우
표 5. XSL 변환으로(부터)의 입력 및 출력 |
XSL 변환으로의 입력 |
XSL 변환으로부터의 출력 |
첫 번째 XSL 변환 |
XSL 변환은
클라이언트 응용프로그램으로부터의 메시지에 대해 지원되지 않습니다. |
두 번째 XSL 변환 |
디폴트 XML 스키마를 사용하는 유효한
XML 문서 |
사용자 정의 XML 스키마를 사용하는 유효한
XML 문서 또는 비XML 문서 |
다음 표에 설명된
것과 같이 웹 서비스 작성 시에는 다음 파일을 제공해야 합니다.
- XML로의 변환을 사용 가능으로 설정하려면 사용자 정의 XML 스키마를
디폴트 스키마에 맵핑하는 XSL 파일만 웹 서비스에 제공해야 합니다. 사용자
정의 XML 스키마의 사본은 제공하지 않아도 됩니다.
- 비XML 형식으로의 변환을 사용 가능으로 설정하려면 디폴트 XML 스키마를
비XML 형식에 맵핑하는 XSL 파일을 제공해야 합니다.
표 6. 웹 서비스에 제공해야 하는
파일입력 메시지의 XSL
변환 |
출력 메시지의 XSL
변환 |
사용자 정의 XML 스키마(XSD 파일) |
XSL 파일 |
사용자 정의 XML 스키마(XSD 파일) |
XSL 파일 |
|
|
|
X |