다음을 통해 공유


메시지 컨텍스트 속성 사용 방법

시스템 속성은 대개 BizTalk 메시징 엔진 및 해당 구성 요소에서 내부적으로 사용하는 속성입니다. 일반적으로 엔진에서 해당 속성에 대해 설정한 값은 엔진의 실행 논리에 미칠 수 있는 영향을 고려할 때 변경하지 않는 것이 좋습니다. 그러나 변경할 수 있는 속성은 많이 있습니다.

다음 표에는 메시징 엔진이 승격할 수 있는 메시지 컨텍스트 속성 목록이 나와 있습니다. 이러한 속성을 사용하여 Microsoft BizTalk Server 송신 포트 및 오케스트레이션에서 필터 식을 만들 수 있습니다. 예를 들면 다음과 같습니다.

PortName = MyMessage(BTS.ReceivePortName);  
MyFileName = MyMessage(FILE.ReceivedFileName);  
MySubject= MyMessage(POP3.Subject);  

별도 표에는 일부 BizTalk 응용 프로그램에서 사용할 수 있지만 승격할 수 없는 추가 속성이 나와 있습니다.

속성 승격 시기와 위치 형식 Description
BTS.AckFailureCategory 승인 메시지를 MessageBox 데이터베이스로 게시하기 전 메시징 엔진에 의해 승격됩니다. xs:int 일시 중단의 장소와 이유를 제공하는 ErrorCategory를 식별합니다.
BTS.AckFailureCode 승인 메시지를 MessageBox 데이터베이스로 게시하기 전 메시징 엔진에 의해 승격됩니다. xs:string 일시 중단의 장소와 이유를 제공하는 ErrorCode를 식별합니다.
BTS.AckID 승인 메시지를 MessageBox 데이터베이스로 게시하기 전 메시징 엔진에 의해 승격됩니다. xs:string 원본 메시지의 MessageID 를 식별합니다.
BTS.AckInboundTransportLocation 승인 메시지를 MessageBox 데이터베이스로 게시하기 전 메시징 엔진에 의해 승격됩니다. xs:string 원본 메시지에서 InboundTransportLocation 을 식별합니다.
BTS.AckOutboundTransportLocation 승인 메시지를 MessageBox 데이터베이스로 게시하기 전 메시징 엔진에 의해 승격됩니다. xs:string 원본 메시지에서 OutboundTransportLocation 을 식별합니다.
BTS.AckOwnerID 승인 메시지를 MessageBox 데이터베이스로 게시하기 전 메시징 엔진에 의해 승격됩니다. xs:string 원본 메시지의 인스턴스 ID를 식별합니다.
BTS.AckReceivePortID 승인 메시지를 MessageBox 데이터베이스로 게시하기 전 메시징 엔진에 의해 승격됩니다. xs:string 원본 메시지에서 ReceivePortID 를 식별합니다.
BTS.AckReceivePortName 승인 메시지에 대해 메시징 엔진에 의해 승격됩니다. xs:string 원본 메시지에서 ReceivePortName 을 식별합니다.
BTS.AckSendPortID 승인 메시지를 MessageBox 데이터베이스로 게시하기 전 메시징 엔진에 의해 승격됩니다. xs:string 원본 메시지에서 SendPortID 를 식별합니다.
BTS.AckSendPortName 승인 메시지를 MessageBox 데이터베이스로 게시하기 전 메시징 엔진에 의해 승격됩니다. xs:string 원본 메시지에서 SendPortName 을 식별합니다.
BTS.AckType 승인 메시지를 MessageBox 데이터베이스로 게시하기 전 메시징 엔진에 의해 승격됩니다. xs:string 오케스트레이션의 승인 및 비승인을 모니터링하도록 허용합니다. 값은 승인일 경우 ACK이고 부정 승인일 경우 NACK입니다.
BTS.ActionOnFailure 이 속성은 BizTalk으로 메시지를 전송하도록 IBTTTransportBatch::SubmitMessage() API를 호출하기 전에 어댑터에 의해 설정될 수 있습니다. xs:int 수신 파이프라인에 오류가 발생한 경우 메시징 엔진의 동작을 제어합니다. 일반적으로 메시징 엔진은 보내지 못한 메시지를 일시 중단하지만 HTTP와 같은 일부 어댑터는 수신 파이프라인 오류 시 메시지를 일시 중단하는 대신 클라이언트에게 오류를 보고합니다.

유효한 값은

-기본. 속성이 없으면 메시징 엔진은 자동으로 메시지를 일시 중단하려고 시도합니다.
- 0. 메시징 엔진이 자동으로 엔진을 일시 중단하지 않아야 됨을 나타냅니다.

다른 값은 나중에 사용할 수 있도록 예약되어 있습니다.
BTS.CorrelationToken 이 속성이 메시지 컨텍스트에 대해 설정되어 있으면 메시지 컨텍스트가 메시징 엔진에 의해 승격됩니다. 요청-응답 어댑터 또는 오케스트레이션이 MessageBox 데이터베이스로 요청 메시지를 전송하면 컨텍스트에 대해 이 속성이 암시적으로 설정됩니다. xs:string 응답을 요청-응답 포트로 라우팅하도록 설정합니다.
BTS.EpmRRCorrelationToken 요청-응답 메시지 실행 시 메시징 엔진에 의해 승격됩니다. 메시지가 MessageBox 데이터베이스로 전송되기 전에 속성이 승격됩니다. xs:int 메시징 엔진에서 내부적으로 사용합니다. 메시지의 요청-응답 스트림의 서버 이름, 프로세스 ID 및 고유 GUID를 지정합니다.
BTS.InboundTransportLocation 수신 어댑터에서 메시지를 수신한 후, 해당 메시지를 MessageBox 데이터베이스로 게시하기 전에 메시징 엔진에 의해 승격됩니다. xs:string 핸들러가 메시지를 수신한 위치(URI)를 지정합니다.
BTS.InboundTransportType 수신 어댑터에서 메시지를 수신한 후, 해당 메시지를 MessageBox 데이터베이스로 게시하기 전에 메시징 엔진에 의해 승격됩니다. xs:string 이 메시지를 수신하여 서버에 제출한 어댑터 유형(FILE, HTTP 등)을 지정합니다.
BTS.InterchangeSequenceNumber 수신 어댑터에서 메시지를 수신한 후, 해당 메시지를 MessageBox 데이터베이스로 게시하기 전에 메시징 엔진에 의해 승격됩니다. xs:int 교환에 있는 문서의 일련 번호를 나타냅니다. 문서가 개별 문서에 디스어셈블된 교환의 일부가 아닌 경우 이 값은 1이 됩니다. 속성은 오케스트레이션, 송신 파이프라인 및 송신 어댑터에서 읽을 수 있습니다.
BTS.IsDynamicSend 이 속성은 메시지 컨텍스트에서 설정할 수 있습니다. 승격되지 않고 송신 작업에만 적용됩니다. xs:boolean 송신 작업이 동적 송신 포트에서 이루어지는 경우 메시징 엔진에서 true 값으로 메시지 컨텍스트에 기록됩니다. 송신 파이프라인에서 정적 송신 포트의 속성을 동적으로 설정하려면 이 값을 true로 설정해야 합니다.
BTS.MessageDestination 이 속성은 디스어셈블러 파이프라인 구성 요소가 GetNext()에서 메시지를 반환할 때 수신 파이프라인에서 설정할 수 있습니다. xs:string 이 속성은 디스어셈블러의 복구 가능한 교환 처리를 지원하는 데 기본적으로 사용되며 메시지를 MessageBox에 게시할지 아니면 일시 중단 큐에 일시 중단할지를 제어합니다. 파이프라인이 교환에서 잘못된 메시지를 발견한 경우 MessageDestination을 SuspendQueue로 설정하면 해당 메시지를 일시 중단하고 처리를 계속할 수 있으며 엔진이 디스어셈블러에서 GetNext()를 호출할 때 메시지를 반환할 수 있습니다.

유효한 값은

-기본. 이 속성이 없으면 메시지는 올바른 메시지로 간주되어 MessageBox에 게시됩니다.
- SuspendQueue. 메시지를 일시 중단하도록 메시징 엔진에 지시합니다. 참고: 일시 중단된 메시지는 어댑터에서 제출한 메시지(예: 유선 메시지)가 아니라 파이프라인 후/매핑 메시지입니다.
BTS.MessageType 메시지를 구문 분석하는 동안 디스어셈블러 파이프라인 구성 요소에 의해 승격됩니다. xs:string 메시지 유형을 지정합니다. 메시지 유형은 문서 스키마 네임스페이스 및 문서 루트 노드 http://<MyNamespace>#<MyRoot>의 연결로 정의됩니다.
BTS.OutboundTransportLocation 이 속성이 메시지 컨텍스트에 대해 설정되어 있으면 메시지 컨텍스트가 메시징 엔진에 의해 승격됩니다. 이 속성은 오케스트레이션이 송신 포트로 메시지를 보내면 메시지 컨텍스트에 대해 암시적으로 설정됩니다. 오케스트레이션 또는 파이프라인에서 이 속성을 명시적으로 설정할 수도 있습니다. xs:string 메시지를 보낸 대상 위치 URI를 지정합니다. URI에는 http:// 같은 어댑터 접두사를 포함할 수 있습니다. 어댑터 전위는 메시지를 보낼 때 사용할 어댑터 유형을 결정하기 위해 메시징 엔진에서 사용합니다. 어댑터 접두사 및 BTS 둘 다인 경우 OutboundTransportType 속성은 BTS의 어댑터 유형으로 설정됩니다 . OutboundTransportType 은 항상 접두사에서 결정된 어댑터 유형보다 우선합니다.

유효한 값은

BizTalk 메시지 큐: DIRECT=, PRIVATE=, PUBLIC=

파일: file://

FTP: FTP://

HTTP: http://https://

SMTP: mailto:

SOAP: SOAP://

SQL: SQL://
BTS.OutboundTransportType 이 속성이 메시지 컨텍스트에 대해 설정되어 있으면 메시지 컨텍스트가 메시징 엔진에 의해 승격됩니다. 이 속성은 오케스트레이션이 송신 포트로 메시지를 보내면 컨텍스트에 대해 암시적으로 설정됩니다. 오케스트레이션 또는 파이프라인에서 이 속성을 명시적으로 설정할 수도 있습니다. xs:string 메시지를 보내는 데 사용되는 어댑터 유형을 지정합니다. 사용 가능한 어댑터 유형은 FILE, FTP, HTTP, SMTP, SOAPSQL입니다.

이 속성에 설정하는 값과 주소에 지정하는 어댑터 전위는 대/소문자를 구분하지 않습니다.
BTS.PropertiesToUpdate 다시 전송하거나 일시 중단할 실패한 메시지의 일부 속성 값을 유지해야 하는 경우 어댑터가 이 속성을 설정합니다.

이는 메시지가 다시 전송되거나 다시 시작될 때 지정된 속성이 컨텍스트에 설정됨을 의미합니다.
xs:string 속성 이름, 네임스페이스 및 값을 나타내는 요소를 포함하는 XML 문자열이 들어 있습니다.
BTS.ReceivePortID 수신 어댑터에서 메시지를 수신한 후, 해당 메시지를 MessageBox 데이터베이스로 게시하기 전에 메시징 엔진에 의해 승격됩니다. xs:int 메시지가 수신된 수신 포트를 식별합니다.
BTS.ReceivePortName 수신 어댑터에서 메시지를 수신한 후, 해당 메시지를 MessageBox 데이터베이스로 게시하기 전에 메시징 엔진에 의해 승격됩니다. xs:string 메시지가 수신된 수신 포트의 간단한 표시 이름입니다.
BTS.RouteDirectToTP 루프백 또는 요청-응답을 실행할 메시지에 대해 메시징 엔진에 의해 승격됩니다. 메시지가 MessageBox 데이터베이스로 전송되기 전에 속성이 승격됩니다. xs:boolean 루프백 및 요청-응답 시나리오를 활성화하기 위해 메시징 엔진에서 내부적으로 사용합니다.
BTS.SPGroupID 오케스트레이션에서 송신 포트로 메시지가 송신될 때 메시징 엔진에 의해 승격됩니다. xs:string 송신 포트 그룹의 ID를 지정합니다.
BTS.SPID 오케스트레이션에서 송신 포트로 메시지가 송신될 때 메시징 엔진에 의해 승격됩니다. xs:string 송신 포트의 ID를 지정합니다.
BTS.SPName 간청-응답 송신 포트에서 응답 메시지를 게시할 때 메시징 엔진에 의해 승격됩니다. xs:string 간청-응답 송신 포트에서 응답 메시지에 등록하는 데 사용됩니다. 값은 송신 포트의 이름입니다.
BTS.SPTransportBackupID 오케스트레이션에서 송신 포트로 메시지가 송신될 때 메시징 엔진에 의해 승격됩니다. xs:string 송신 포트 백업 어댑터의 ID를 지정합니다.
BTS.SPTransportID 오케스트레이션에서 송신 포트로 메시지가 송신될 때 메시징 엔진에 의해 승격됩니다. xs:string 송신 포트 기본 어댑터의 ID를 지정합니다.
BTS.SuspendAsNonResumable 이 속성은 SubmitMessage()를 호출하기 전에 어댑터가 설정하거나 송신 포트로 메시지를 송신하기 전에 오케스트레이션에서 설정할 수 있습니다. 참고: SubmitRequestMessage()는 이 속성을 무시합니다. 양방향 메시지는 항상 다시 시작할 수 없는 것으로 일시 중단됩니다. xs:boolean 메시지가 실패했을 때 메시징 엔진에서 메시지를 다시 시작 불가능 상태로 일시 중단할지 여부를 제어합니다. 일반적으로 메시지는 다시 시작 가능 상태로 일시 중단되지만 이것이 적절하지 않은 경우도 있습니다. 예를 들어 순차적 송신 포트나 수신 포트의 경우 메시지를 다시 시작하면 메시지 순서가 흐트러집니다.

유효한 값은

-False. 메시지가 다시 시작 가능 상태로 일시 중단됩니다(기본값).
-사실. 메시지가 다시 시작 불가능 상태로 일시 중단됩니다.
BTS.SuspendMessageOnRoutingFailure 수신 어댑터에서 메시지를 수신한 후, 해당 메시지를 MessageBox 데이터베이스로 게시하기 전에 메시징 엔진에 의해 승격됩니다. xs:boolean 들어오는 메시지에 라우팅 오류가 발생할 경우 수행될 동작을 지정합니다.

유효한 값은

- 기본값/False입니다. 속성이 없거나 False로 설정되어 있으면 라우팅 오류가 발생할 경우 엔진에서 어댑터에 이를 알립니다.
-사실. 라우팅 오류가 발생하면 라우팅 엔진에서 자동으로 메시지를 일시 중단합니다. 참고: 일시 중단된 메시지는 어댑터에서 제출한 메시지(예: 유선 메시지)가 아니라 파이프라인 후/매핑 메시지입니다.

이외에도 이 네임스페이스에는 일부 BizTalk 응용 프로그램에 유용한 정보를 전달하는 다른 많은 속성이 있습니다.

속성 승격 시기와 위치 형식 Description
BTS.AckDescription 승인 메시지를 MessageBox 데이터베이스에 게시하기 전 메시징 엔진에 의해 설정됩니다. xs:string 일시 중단의 장소와 이유를 제공하는 ErrorDescription을 식별합니다.
BTS.EncryptionCert 승격할 수 없습니다. xs:int 암호화 인증서에 해당하는 손 도장(Thumbprint)을 식별합니다. 서명되고 암호화된 메시지를 수신하는 요청-응답 포트에서 응답 암호화를 수행하려면 파이프라인의 MIME/SMIME Encoder 파이프라인 구성 요소 앞에 있는 오케스트레이션 또는 사용자 지정 파이프라인 구성 요소에서 이 속성을 설정합니다.
BTS.InterchangeID 서버에 도착하는 각 메시지에 대해 메시징 엔진에서 설정합니다. xs:string 동일한 교환 메시지에서 생성된 문서의 그룹화에 사용되는 고유 ID를 정의합니다.
BTS.Loopback 루프백 실행을 위해 요청 메시지를 전송할 때 어댑터에서 설정합니다. xs:boolean 루프백 실행을 위해 메시지를 서버로 전송해야 하는지 여부를 정의합니다. 루프백 실행에서는 요청 메시지가 MessageBox 데이터베이스에 게시되고 여기서 메시지는 응답으로 수신 어댑터로 직접 라우팅됩니다.
BTS.SignatureCertificate 서버로 메시지를 전송할 때 일부 어댑터에 의해 설정됩니다. 이 속성은 Party Resolution 파이프라인 구성 요소에서 사용됩니다. xs:string BizTalk Server에서 수신한 메시지에 서명하는 데 사용된 서명 인증서의 손 도장(Thumbprint)을 식별합니다.
BTS.SourcePartyID 들어오는 메시지에 대해 파티가 식별된 후 Party Resolution 파이프라인 구성 요소에 의해 설정됩니다. xs:string BizTalk 파티 ID
BTS.SSOTicket 수신 어댑터가 이 속성을 지원하는 경우 서버에 메시지를 게시할 때 속성이 설정됩니다. xs:string 티켓에는 현재 사용자의 암호화된 도메인 및 사용자 이름과 티켓 만료 시간이 포함됩니다. 티켓은 대상 엔드포인트에 대한 인증 수행 시 사용자의 자격 증명을 가져오기 위해 SSO 사용 어댑터에서 사용합니다.
BTS.WindowsUser 서버로 메시지를 전송할 때 일부 어댑터에 의해 설정됩니다. 이 속성은 Party Resolution 파이프라인 구성 요소에서 사용됩니다. xs:string 서버로 전송할 메시지의 사용자 계정을 지정합니다.

파이프라인 구성 요소 및 어댑터와 관련된 속성 및 속성 스키마에 대한 자세한 내용은 다음 항목을 참조하십시오.

참고 항목

BizTalk 메시지 컨텍스트 속성 정보
식을 사용하여 동적 포트에 값을 할당하는 방법