HTTPRequestResponse
HTTPRequestResponse 샘플에서는 Microsoft BizTalk Server ISAPI(Internet Server Application Programming Interface) 필터를 사용하여 ASP.NET 애플리케이션이 BizTalk Server 오케스트레이션과 통신할 수 있도록 하는 방법을 보여 줍니다.
이 샘플의 용도
이 샘플에서 ASP.NET 애플리케이션은 BizTalk Server ISAPI 필터에 요청을 제출합니다. 그런 다음 오케스트레이션이 이 메시지를 사용하고 동기화 응답을 통해 ASP.NET 응용 프로그램에 반환합니다. BizTalk Server ISAPI 필터를 사용하여 BizTalk Server 오케스트레이션과 ASP.NET 애플리케이션 간의 통합을 달성합니다.
이 샘플에서는 다음 단계 시퀀스를 사용하여 BizTalk Server 및 ASP.NET PO(애플리케이션 교환 구매 주문) 및 PO 승인 메시지를 확인합니다.
HTTP 요청을 사용하는 ASP.NET 애플리케이션은 XML PO 메시지를 BizTalk Server 제출합니다.
BizTalk Server XML PO 메시지를 수신하고 XML PO 승인 메시지를 생성한 다음 해당 메시지를 HTTP 응답의 ASP.NET 애플리케이션으로 다시 보냅니다.
ASP.NET 응용 프로그램은 XML PO 승인 응답을 받고 응답에서 추출한 상태 정보로 웹 양식을 새로 고칩니다.
이 샘플이 있는 위치
<샘플 경로>\AdaptersUsage\HTTPRequestResponse\
다음 표는 이 샘플의 파일을 보여 주고 각각의 용도에 대해 설명합니다.
파일 | Description |
---|---|
Cleanup.bat | 어셈블리를 배포 취소 및 GAC(전역 어셈블리 캐시)에서 제거하고, 송신 및 수신 포트를 제거하고, 필요한 경우 Microsoft IIS(인터넷 정보 서비스) 가상 디렉터리를 제거합니다. |
HTTPRequestResponse.btproj, HTTPRequestResponse.sln | HTTP 요청을 받고, PO 메시지를 처리하고, 응답을 생성하는 BizTalk 프로젝트에 프로젝트와 원본 파일을 제공합니다. |
HTTPRequestResponseBinding.xml | 포트 바인딩과 같은 자동화된 설치를 제공합니다. |
POAck.xsd, POSchema.xsd | PO 승인 및 PO .xml 파일용 스키마를 각각 제공합니다. |
POReceiveOrchestration.odx | PO를 수신하고, 처리하고, PO 승인을 발급하는 BizTalk Server 오케스트레이션을 제공합니다. |
Setup.bat | 이 샘플을 빌드하고 초기화합니다. |
\RequestResponse 폴더에서 AssemblyInfo.cs, default.aspx, default.aspx.cs, Global.asax, Global.asax.cs, RequestResponse.csproj, RequestResponse.csproj.webinfo, RequestResponse.sln, Web.config |
프로젝트 및 솔루션 파일, ASPX 파일, Microsoft Visual C# .NET 원본 파일 등 이 샘플의 드라이버 역할을 하는 ASP.NET 응용 프로그램을 구성하는 파일이 포함되어 있습니다. |
이 샘플 빌드 및 초기화
HTTPRequestResponse 샘플을 빌드 및 초기화하려면 다음 절차를 사용합니다.
이 샘플을 빌드 및 초기화하려면 다음을 수행하십시오.
명령 창에서 다음 폴더로 이동합니다.
< 샘플 경로>\AdaptersUsage\HTTPRequestResponse
다음 작업을 수행하는 Setup.bat 파일을 실행합니다.
이 샘플을 제어하는 데 사용되는 ASP.NET 응용 프로그램을 컴파일 및 구성합니다.
참고
IIS 관리자에서 애플리케이션 풀을 만드는 동안 DefaultAppPool .NET Framework 버전을 .Net Framework v4.0으로 설정합니다.
이 샘플에서 사용되는 BizTalk Server 오케스트레이션을 컴파일하고 배포합니다.
이 샘플에 대한 Microsoft Visual Studio 프로젝트를 컴파일하고 배포합니다.
필요한 BizTalk Server 포트를 만들고 바인딩합니다.
BizTalk Server 오케스트레이션을 시작합니다.
중요
사용자 환경을 반영하려면 웹 응용 프로그램을 구현하는 샘플 코드(Default.aspx.cs)를 변경해야 합니다.
< http:// server name>/<virtual dir>/BTSHTTPReceive.dll 여기서
<servername>
은 게시할 웹 서버의 이름이고<
가상 dir>
은 이 파일이 있는 가상 디렉터리입니다.참고
이 샘플을 실행하기 전에 빌드 및 초기화 과정에서 BizTalk가 오류를 보고하지 않았는지 확인해야 합니다.
참고
Setup.bat 파일을 실행하지 않은 채 이 샘플에서 프로젝트를 열고 빌드하려는 경우 먼저 .NET Framework Strong Name 유틸리티(sn.exe)를 사용하여 강력한 이름 키 쌍을 만들어야 합니다. 이 키 쌍을 사용하여 결과 어셈블리를 등록합니다. 또한 해당 프로젝트를 빌드하기 전에 RequestResponse.csproj 파일에서 default.aspx.resx 및 Global.asax.resx에 대한 참조를 수동으로 제거해야 합니다.
참고
Setup.bat가 변경한 내용을 실행 취소하려면 Cleanup.bat를 실행합니다. Setup.bat를 두 번째로 실행하기 전에 Cleanup.bat를 실행해야 합니다.
참고
HTTP 수신 어댑터를 사용하도록 IIS를 구성 및 설정해야 합니다. 자세한 내용은 HTTP 수신 위치에 대해 IIS를 구성하는 방법을 참조하세요.
setup.bat 파일은 이 샘플에 대한 가상 디렉터리가 기본 웹 사이트와 연결된 IIS 응용 프로그램 풀에서 실행되도록 구성합니다. BizTalk 격리 호스트 사용자 및 IIS_IURS 사용자 그룹의 사용자 컨텍스트에서 실행되도록 이 샘플에 대한 가상 디렉터리를 구성하려면 새 IIS 애플리케이션 풀에서 실행되도록 가상 디렉터리를 구성해야 합니다. 다음 단계를 완료하여 가상 디렉터리가 새 IIS 응용 프로그램 풀에서 실행되도록 구성합니다.
참고
다른 SDK 샘플에 사용할 새 응용 프로그램 풀을 이미 만든 경우에는 아래의 마지막 단계를 진행해도 됩니다.
시작 메뉴를 클릭하고 모든 프로그램, 관리 도구를 차례로 가리킨 다음 IIS(인터넷 정보 서비스) 관리자를 클릭합니다.
IIS(인터넷 정보 서비스) 관리자에서 애플리케이션 풀 폴더로 이동합니다.
애플리케이션 풀 폴더를 마우스 오른쪽 단추로 클릭하고 새로 만들기, 애플리케이션 풀...을 클릭합니다.
애플리케이션 풀 ID의 이름(예: BizTalkSDKSamples)을 입력하고 새 애플리케이션 풀에 기본 설정 사용 옵션이 선택되어 있는지 확인하고 확인을 클릭하여 새 애플리케이션 풀을 만듭니다.
새 애플리케이션 풀을 마우스 오른쪽 단추로 클릭한 다음 속성을 클릭합니다.
속성 대화 상자의 ID 탭을 클릭하고 이 애플리케이션 풀이 실행되는 ID를 BizTalk 격리 호스트 사용자 사용자 그룹의 구성원인 사용자로 변경합니다. 또한 이 사용자는 로컬 IIS_IURS 사용자 그룹의 구성원이어야 합니다.
이 SDK 샘플에 대한 가상 디렉터리가 새 응용 프로그램 풀에서 실행되도록 구성합니다. 애플리케이션 풀 설정은 가상 디렉터리 속성 대화 상자의 가상 디렉터리 탭에서 사용할 수 있습니다. 이 샘플에 대해 만든 가상 디렉터리는 HttpRequestResponseSample입니다.
이 샘플 실행
HTTPRequestResponse 샘플을 실행하려면 다음 절차를 사용합니다.
이 샘플을 실행하려면
인터넷 Explorerhttp://localhost/RequestResponse/.
웹 양식에서 필요한 필드를 완료한 다음 주문 배치 를 클릭하여 주문을 제출합니다.
응답을 수신하고 나서 웹 양식을 새로 고칠 때 주문 상태를 관찰합니다.
의견
이 샘플에서 사용되는 BTSHTTPReceiveISAPI 확장은 단일 컴퓨터 기본 설치에서 작동하도록 구성됩니다. 추가 구성을 위해 이 샘플을 확장하려면 HTTP 어댑터를 참조하세요.
이 샘플을 웹 양식을 통해 또는 일반적으로 HTTP를 통해 BizTalk Server 데이터를 제출하는 데 필요한 애플리케이션으로 확장할 수 있습니다. 이 샘플의 ASP.NET 애플리케이션 부분을 확장하면 데이터를 BizTalk Server 제출하기 전에 추가 정보를 쿼리하고 다른 전처리를 수행할 수 있습니다.