다음을 통해 공유


8단계: BTARN 데이터베이스에서 메시지 보기

이 단계에서는 SQL Query Analyzer를 사용하여 Microsoft® BizTalk Accelerator for RosettaNet(BTARN) 데이터베이스에 저장된 LOB(기간 업무) 메시지를 확인하여 루프백 시나리오가 제대로 작동하는지 확인합니다.

LOB 애플리케이션 유틸리티가 LOB 메시지를 생성하고 BTARN에 제출한 후 초기자(홈) 및 응답자(파트너)에 대해 다음 이벤트가 발생합니다.

초기자 워크플로

  • SubmitRNIF는 BTARN DATA 데이터베이스의 MessagesFromLOB 테이블에 LOB 메시지를 제출합니다.

  • SQL 어댑터 수신 위치는 메시지를 선택하고 MessageBox 데이터베이스에 전달합니다. SQL 어댑터는 저장 프로시저를 실행하는 GetMessagesFromLOB 한 번에 하나의 메시지를 선택합니다.

  • 프라이빗 초기자는 MessageBox 데이터베이스에서 메시지를 선택한 다음 추가 승격된 컨텍스트 속성을 사용하여 MessageBox 데이터베이스에 다시 삭제합니다.

  • 퍼블릭 초기자는 구독 필터에 따라 MessageBox 데이터베이스에서 메시지를 선택합니다.

  • HTTP 송신 포트는 구독에 따라 RNIFSend 파이프라인을 사용하여 메시지를 선택합니다. BTARN 보관 데이터베이스의 MessageStorageOut 테이블에 메시지를 저장하여 부인하지 않으면 메시지를 RNIFSend.aspx 페이지로 보냅니다.

  • RNIFSend.aspx 페이지는 메시지의 최종 대상(파트너 organization URL)을 포함하는 쿼리 문자열 변수가 있는 MIME로 인코딩된 메시지를 받습니다.

    응답자 워크플로

  • BTARN은 MIME 디코딩된 래퍼가 제거된 RNIFReceive.aspx 페이지로 RNIF 메시지를 보냅니다. 메시지는 동기 또는 비동기로 식별된 다음 동기 또는 비동기 수신 위치(RNIF_Sync_Receive 또는 RNIF_Async_Receive)로 전달됩니다.

  • HTTP 수신 위치는 먼저 BTARN 보관 데이터베이스의 부인을 위해 메시지의 유선 형식을 MessageStorageIn 테이블에 저장합니다. HTTP 수신 위치는 디코딩하고 암호를 해독하고(RNIF 2.0의 경우) 서명의 유효성을 검사하고, XML 메시지 파트를 디스어셈블하고, 서명을 기반으로 권한을 부여한 다음, 올바른 승격된 속성을 사용하여 MessageBox 데이터베이스에 삭제합니다.

  • 공용 응답자는 구독에 따라 메시지 파트를 선택한 다음 올바른 RNIF 표준에 따라 메시지의 유효성을 검사하고 처리합니다. 서비스 콘텐츠 파트는 올바른 컨텍스트 속성을 사용하여 메시지를 MessageBox 데이터베이스에 삭제합니다.

  • SQL 송신 포트는 구독 필터에 따라 메시지를 선택합니다. 그런 다음, 메시지를 BTARN DATA 데이터베이스의 MessagesToLOB 테이블에 저장합니다.

참고

응답자 쪽에서 공용 응답자는 승인 수신 또는 예외 신호를 초기자에게 다시 생성할 책임이 있습니다. BTARN은 MessagesFromLOB 테이블에 신호 메시지를 저장하지 않습니다. 이는 LOB 애플리케이션이 신호 메시지를 생성하지 않기 때문입니다. 작업 메시지는 프라이빗 응답자를 통해 계속되며 BTARN은 MessagesToLOB 테이블에 저장합니다.

참고

이중 작업 PIP의 경우 응답자 쪽의 LOB는 응답 메시지를 생성합니다. BTARN은 이를 MessagesFromLOB 테이블로 삭제하여 초기자 쪽 프로세스와 동일한 프로세스를 거칩니다. 이 경우 초기자 쪽의 공개 초기자 프로세스는 응답 메시지에 대한 승인 확인 또는 예외 신호를 다시 보냅니다.

BTARN 데이터베이스에서 메시지를 보려면

  1. 시작을 클릭하고 모든 프로그램을 가리키고 Microsoft SQL Server <버전을> 가리킨 다음 SQL Server Management Studio 클릭합니다.

  2. 서버에 연결 대화 상자에서 연결을 클릭합니다.

    참고

    개체 탐색기 창에서 SQL Server 에이전트 시작되었는지 확인합니다. 그렇지 않은 경우 SQL Server 에이전트 마우스 오른쪽 단추로 클릭하고 시작을 클릭합니다.

  3. Microsoft SQL Server Management Studio에서 새 쿼리를 클릭합니다.

  4. 빈 쿼리 창에서 다음을 입력합니다.

    use BTARNArchive  
    SELECT * FROM         MessageStorageIn ORDER BY TIMECREATED ASC  
    SELECT * FROM         MessageStorageOut ORDER BY TIMECREATED ASC  
    
    use BTARNData  
    SELECT     * FROM         MessagesFromLOB ORDER BY TIMECREATED ASC  
    SELECT     * FROM         MessagesToLOB ORDER BY TIMECREATED ASC  
    SELECT     * FROM         Attachments ORDER BY TIMECREATED ASC  
    
  5. Microsoft SQL Server Management Studio 실행을 클릭합니다.

    MessagesFromLOB 테이블에 작업 메시지가 표시되고 몇 분 후에 쿼리를 다시 실행하면(시스템 구성에 따라 시간이 달라질 수 있음) MessageToLOB 테이블에 AsyncAckSignal(25) 및 AsyncAction(10)의 MessageCategory 값이 포함된 두 개의 메시지가 생성됩니다.

참고 항목

Loopback
루프백 자습서