다음을 통해 공유


스키마 확인 프로그램 구성 요소(BizTalk Server 샘플)

스키마 확인자 구성 요소 샘플에서는 BizTalk Server 플랫 파일 디스어셈블러 구성 요소의 기능을 확장하는 방법을 보여 줍니다.

플랫 파일 디스어셈블러 구성 요소를 사용하려면 일반적으로 디자인 타임에 구문 분석 스키마를 정의해야 합니다. 따라서 동일한 수신 위치에서 서로 다른 여러 플랫 파일 문서를 받으려는 경우에는 일반적으로 플랫 파일 디스어셈블러를 스키마당 하나씩 수신 파이프라인에 포함합니다. 런타임에는 파이프라인 검색 메커니즘을 사용하여 올바른 디스어셈블러 구성 요소가 선택됩니다. 하지만 해당되는 모든 디스어셈블러 구성 요소를 검색하면 파이프라인 성능이 저하되므로 플랫 파일 스키마가 많은 경우에는 이 방법의 비용이 커집니다.

이 샘플의 용도

Schema Resolver Component에서는 플랫 파일 디스어셈블러에 대해 스키마를 선택하는 다른 방법을 보여 줍니다. 이 샘플에서는 네 개의 스키마를 정의하며 각 스키마에 대한 메시지의 처음 두 글자는 고유해야 합니다. 고유한 처음 두 글자와 해당 스키마 사이에 매핑이 정의됩니다. Schema Resolver Component는 입력 메시지가 제공되면 처음 두 글자를 읽어 해당 문서에 사용할 스키마를 결정하고, 메시지 컨텍스트에 스키마 정보를 저장한 다음 표준 플랫 파일 디스어셈블러 구성 요소를 호출합니다. 표준 플랫 파일 디스어셈블러 구성 요소는 메시지 컨텍스트에서 스키마 정보를 읽고 그 스키마를 사용하여 문서를 구문 분석합니다.

이 샘플이 있는 위치

<샘플 경로>\Pipelines\SchemaResolverComponent\

다음 표는 이 샘플에 사용되는 파일을 보여 주고 각각의 용도에 대해 설명합니다.

파일 Description
SchemaResolverSample.sln 사용자 지정 파이프라인 구성 요소를 실행하는 BizTalk 프로젝트에 대한 솔루션입니다.
SchemaResolverSample.btproj 사용자 지정 파이프라인 구성 요소를 실행하는 BizTalk 프로젝트입니다.
SchemaResolverRP.btp 사용자 지정 구성 요소를 포함하는 수신 파이프라인입니다.
PurchaseOrder.xsd, PurchaseRequest.xsd, SalesOrder.xsd, SalesRequest.xsd 플랫 파일 스키마입니다.
POInstance.txt, PRInstance.txt, SOInstance.txt, SRInstance.txt 해당 플랫 파일 문서 인스턴스입니다.
SchemaResolverFlatFileDasm.sln 파이프라인 구성 요소의 구현에 대한 솔루션입니다.
SchemaResolverFlatFileDasm.csproj 파이프라인 구성 요소의 구현에 대한 C# 프로젝트입니다.
SchemaResolverFlatFileDasmComp.cs 파이프라인 구성 요소의 구현입니다.
SeekableReadOnlyStream.cs 구성 요소에서 사용하는 검색 가능한 읽기 전용 스트림의 구현입니다.
VirtualStream.cs 파이프라인 구성 요소에서 사용되는 가상 스트림의 구현입니다.

이 샘플 빌드 및 초기화

다음 절차에 따라 Schema Resolver Component 샘플을 빌드 및 초기화합니다.

이 샘플을 빌드 및 초기화하려면 다음을 수행하십시오.

  1. 명령 창에서 다음 폴더로 디렉터리를 변경합니다(cd).

    <샘플 경로>\Pipelines\SchemaResolverComponent

  2. 다음 작업을 수행하는 Setup.bat 파일을 실행합니다.

    • 구성 요소를 빌드합니다.

    • 구성 요소 어셈블리를 BizTalk \Pipeline 구성 요소 폴더에 복사합니다.

    • 샘플 BizTalk 프로젝트를 빌드 및 배포합니다.

    • 수신 위치 및 송신 포트를 구성하고 시작합니다.

    참고

    이 샘플을 실행하기 전에 빌드 및 초기화 프로세스 동안 보고된 오류가 없는지 확인해야 합니다.

이 샘플 실행

다음 절차에 따라 Schema Resolver Component 샘플을 실행합니다.

이 샘플을 실행하려면

  1. POInstance.txt, PRInstance.txt, SOInstance.txt 및 SRInstance.txt 파일을 수신 위치 <설치 경로>\SDK\Samples\Pipelines\SchemaResolverComponent\In에 놓습니다.

  2. Installdir>\SDK\Samples\Pipelines\SchemaResolverComponent\Out 폴더에 기록<된 4개의 .xml 파일을 관찰합니다.

참고 항목

파이프라인(BizTalk Server 샘플 폴더)