문제

오케스트레이션에서 동적 전송 포트를 사용하여 WCF-WSHTTP 어댑터에 메시지를 보내려고하지만 Biztalk는 항상 HTTP 어댑터로 되돌아가는 것으로 보입니다.

내가 찾을 수 있었던 문서에 따르면, 나는 wcf-wshttp 어댑터를 사용하기 위해 표현형 형태에서 전송 유형을 설정해야하지만 여전히 되돌아 가고있는 것 같습니다. 아래는 속성을 설정하는 표현식 모양의 예입니다 (알 수 있듯이 Microsoft.xlangs.basetypes.transporttype 및 bts.outboundtransporttype를 모두 시도했습니다) :

Body(BTS.OutboundTransportType) = "WCF-WSHttp";

SendMessagePort(Microsoft.XLANGs.BaseTypes.Address) =
System.String.Format("{0}/Accept{1}", "http://myserver/myservice/
myservice.svc/Accept{0}", messageInfo.MessageType);
SendMessagePort(Microsoft.XLANGs.BaseTypes.TransportType) = "WCF-
WSHttp";
도움이 되었습니까?

해결책 2

나는 결국 내 문제를 해결했지만 여전히 내가 본 행동에 대한 추론을 확신하지 못한다.

질문에 언급 된 표현 형태는 원자 범위 내부에 위치했습니다. 오케스트레이션이 표현식 모양을 포함하는 범위를 종료하면 전송 유형이 원래 값으로 다시 재설정되었습니다. 원자 범위에서 표현을 옮기면 운송 유형이 올바르게 설정되었다는 점에서 문제가 해결되었습니다.

다른 팁

아마 크레이그 일 것입니다 :-)

동적 전송 포트를 사용할 때 Biztalk는 URL의 "체계"부분을 사용하여 사용할 어댑터를 결정합니다.

URL이 "http : //"또는 "https : //"로 시작하면 Biztalk는 항상 http 어댑터를 사용합니다. 마찬가지로 URL은 ftp : //에서 시작하여 FTP 어댑터를 사용합니다. 사용자 정의 어댑터에 대한 동일한 작업 - 어댑터 구성을 설치할 때 사용할 수있는 모니 커를 등록합니다. 예를 들어 - 오픈 소스 예약 작업 어댑터는 일정을 사용합니다 : // (I Believe).

WCF와 함께 동적 보내는 포트를 사용하면 필요한 다양한 구성으로 인해 대부분의 다른 어댑터보다 약간 더 관여하지만 자세한 설명을 찾을 수 있습니다. 여기, "동적 전송 포트"섹션을 반쯤 아래로 스크롤하면됩니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top