확인 프로그램 서비스 샘플의 작동 방법
Resolver Service 샘플은 Resolver 서비스를 인스턴스화하고 처리를 위해 지정한 메시지를 전달합니다. Resolver Service 샘플 클라이언트 애플리케이션은 첫 번째 매개 변수를 여러 확인자 요청이 포함된 ResolverList.xml 파일의 경로로 사용하고 이러한 요청을 Resolver 서비스에 보냅니다. 예를 들어 샘플에서 사용되는 XPATH 요청은 다음과 같습니다.
//XPATH
<Resolver>
<name>XPATHWithFILE</name>
<Content>![CDATA[XPATH:\\TransportLocation=/*[local-name()='OrderDoc'
and namespace-uri()='http://globalbank.esb.dynamicresolution.com/
northamericanservices/']/*[local-name()='ID' and namespace-
uri()='http://globalbank.esb.dynamicresolution.com/
northamericanservices/'];TargetNamespace=;
MessageExchangePattern=;EndpointConfig=;JaxRpcResponse=;TransportType=;
Action=;TransformType=]]
</Content>
<body>
![CDATA[
<ns0:OrderDoc xmlns:ns0="http://globalbank.esb.dynamicresolution.com/northamericanservices/">
<ns0:customerName>Microsoft</ns0:customerName>
<ns0:ID>FILE://C:\Projects\Microsoft.Practices.ESB\Source\Samples
\DynamicResolution\Test\Filedrop\OUt\%MessageID%.xml</ns0:ID>
<ns0:requestType>10</ns0:requestType>
</ns0:OrderDoc>
]]
</body>
</Resolver>
참고
Content> 요소의< 실제 콘텐츠에는 이전 목록의 줄을 래핑하는 데 사용되는 공백 문자가 포함되어 있지 않습니다.
앞의 목록에서는 요청에 Content> 요소 내에 연결 문자열 확인자 구성이 포함되어 있음을< 보여 줍니다. <body> 요소에는 메시지 본문이 포함됩니다.
Resolver 서비스는 ResolverMgr 클래스를 사용하여 연결 문자열 확인자 형식으로 정의된 적절한 해결 프로그램의 구체적인 instance 인스턴스화합니다. XPATH 요청의 경우 XPATH 확인자입니다.
다음으로 프레임워크는 ESB라는 ResolveProvider 클래스의 instance 만듭니다. Resolver.XPath를 사용하여 요청을 처리합니다. 클라이언트 애플리케이션은 Resolver 서비스의 응답 메시지를 \Source\Samples\ResolverService\Output 폴더에 씁니다. 다음 목록에서는 응답의 내용을 보여 줍니다.
//XPATH
Resolver.Action =
Resolver.ActionField =
Resolver.DocumentSpecName =
Resolver.DocumentSpecStrongName =
Resolver.EndpointConfig =
Resolver.EpmRRCorrelationToken =
Resolver.FixJaxRpc = False
Resolver.InboundTransportLocation =
Resolver.InboundTransportType =
Resolver.InterchangeId =
Resolver.IsRequestResponse =
Resolver.MessageExchangePattern =
Resolver.MessageType =
Resolver.MethodName =
Resolver.OutboundTransportCLSID =
Resolver.ReceiveLocationName =
Resolver.ReceivePortName =
Resolver.Success = False
Resolver.TargetNamespace =
Resolver.TransformType =
Resolver.TransportLocation = FILE://C:\Projects\Microsoft.
Practices.ESB\Source\Samples
\DynamicResolution\Test\Filedrop\OUt\%MessageID%.xml
Resolver.TransportNamespace =
Resolver.TransportType = FILE
Resolver.WindowUserField =