{"id":2168,"date":"2020-10-02T21:03:33","date_gmt":"2020-10-02T19:03:33","guid":{"rendered":"https:\/\/tointegrationandbeyond.com\/blogs\/?p=2168"},"modified":"2020-10-06T13:38:39","modified_gmt":"2020-10-06T11:38:39","slug":"biztalk-server-2020-logic-apps-ibttransportcontrol-error","status":"publish","type":"post","link":"https:\/\/tointegrationandbeyond.com\/blogs\/index.php\/2020\/10\/02\/biztalk-server-2020-logic-apps-ibttransportcontrol-error\/","title":{"rendered":"BizTalk 2020 Logic App Adapter receive issue"},"content":{"rendered":"<h3>Introduction<\/h3>\n<p>In this article I look into a BizTalk Server 2020 Logic App Adapter configuration issue leading to failure in the Adapter when used in receive locations, and I will show one way to resolve this issue.<\/p>\n<p>I had an environment with BizTalk Server 2020 Enterprise CU1, it was the first time to use the Logic App adapter in BizTalk Server 2020 as part of a hybrid integration solution with Azure Logic Apps. After conducting all the required port-level and receive location configurations, I tried to enable the Logic App receive location, however the Logic App adapter failed with the following errors:<\/p>\n<p><span style=\"color: #666699;\">The receive location &#8220;Receive Location2&#8221; with URL &#8220;\/ReceiveWCFService\/Service1.svc&#8221; is shutting down. Details:&#8221;The Messaging Engine failed while notifying an adapter of its configuration. &#8220;.<\/span><\/p>\n<p><span style=\"color: #666699;\">The Messaging Engine failed to add a receive location &#8220;Receive Location2&#8221; with URL &#8220;\/ReceiveWCFService\/Service1.svc&#8221; to the adapter &#8220;LogicApp&#8221;. Reason: &#8220;80070057&#8221;.<\/span><\/p>\n<p><span style=\"color: #666699;\">The Messaging Engine encountered an error when creating the receive adapter &#8220;LogicApp&#8221;. The Assembly is: &#8220;Microsoft.BizTalk. Adapter.LogicApp. Runtime.LogicAppReceiver, Microsoft.BizTalk. Adapter.LogicApp.Runtime&#8221;. The error occurred because the component does not implement the mandatory interface &#8220;IBTTransportControl&#8221;.<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-2172\" src=\"https:\/\/tointegrationandbeyond.com\/blogs\/wp-content\/uploads\/2020\/10\/BTS03.png\" alt=\"\" width=\"766\" height=\"462\" srcset=\"https:\/\/tointegrationandbeyond.com\/blogs\/wp-content\/uploads\/2020\/10\/BTS03.png 1558w, https:\/\/tointegrationandbeyond.com\/blogs\/wp-content\/uploads\/2020\/10\/BTS03-300x181.png 300w, https:\/\/tointegrationandbeyond.com\/blogs\/wp-content\/uploads\/2020\/10\/BTS03-1024x618.png 1024w, https:\/\/tointegrationandbeyond.com\/blogs\/wp-content\/uploads\/2020\/10\/BTS03-768x464.png 768w, https:\/\/tointegrationandbeyond.com\/blogs\/wp-content\/uploads\/2020\/10\/BTS03-1536x928.png 1536w\" sizes=\"auto, (max-width: 766px) 100vw, 766px\" \/><\/p>\n<p>At first, it seemed like there is a missing interface implementation in the Logic App adapter DLLs, as indicated in the last error message.<\/p>\n<p>The Logic App adapter DLLs seemed to be the same as the ones in the adapter used with BizTalk 2016, I tried reflecting the DLL looking for clues and tried re-installing the Logic App adapter DLLs, however, the same issue persisted. Further, the Logic App adapter was working fine on another environment with BizTalk Server 2016 which pointed me to the right direction.<\/p>\n<h3>The issue<\/h3>\n<p>The root cause of this issue was simple and can get easily overlooked; apparently the BizTalk 2020 configuration assigned the in-process host to the Logic App Adapter Handler Receive settings, instead it should have been bound to the isolated host.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-2188\" src=\"https:\/\/tointegrationandbeyond.com\/blogs\/wp-content\/uploads\/2020\/10\/BTS02X.png\" alt=\"\" width=\"767\" height=\"215\" srcset=\"https:\/\/tointegrationandbeyond.com\/blogs\/wp-content\/uploads\/2020\/10\/BTS02X.png 1552w, https:\/\/tointegrationandbeyond.com\/blogs\/wp-content\/uploads\/2020\/10\/BTS02X-300x84.png 300w, https:\/\/tointegrationandbeyond.com\/blogs\/wp-content\/uploads\/2020\/10\/BTS02X-1024x287.png 1024w, https:\/\/tointegrationandbeyond.com\/blogs\/wp-content\/uploads\/2020\/10\/BTS02X-768x215.png 768w, https:\/\/tointegrationandbeyond.com\/blogs\/wp-content\/uploads\/2020\/10\/BTS02X-1536x431.png 1536w\" sizes=\"auto, (max-width: 767px) 100vw, 767px\" \/><\/p>\n<p>The error indicating the missing interface implementation now made sense, as the receive adapter is not implemented for in-process host in the first place.<\/p>\n<h3>Resolution<\/h3>\n<p>The resolution is simple. First, I had to remove the adapter from all assigned send ports and receive locations in my applications, afterwards, I Removed the Logic App adapter from BizTalk and then I Added it again using using the VB scripts (<strong>RemoveLogicAppAdapter.vbs<\/strong>, <strong>AddLogicAppAdapter.vbs<\/strong>).<\/p>\n<p>These VB scripts ships with the <a href=\"https:\/\/www.microsoft.com\/en-us\/download\/details.aspx?id=54287\" target=\"_blank\" rel=\"noopener noreferrer\">Microsoft BizTalk Server Adapter for Logic Apps<\/a> installer used for BizTalk 2016, the scripts should be available in &#8220;<em>C:\\Program Files (x86)\\Microsoft BizTalk Server\\LogicApp Adapter<\/em>&#8220;.<\/p>\n<p>This resolved the adapter handler configuration issue, now the Logic App Adapter Handler Receive configuration in BizTalk Server 2020 was correctly bound to the isolated host and it worked fine.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-2173\" src=\"https:\/\/tointegrationandbeyond.com\/blogs\/wp-content\/uploads\/2020\/10\/BTS04.png\" alt=\"\" width=\"819\" height=\"500\" srcset=\"https:\/\/tointegrationandbeyond.com\/blogs\/wp-content\/uploads\/2020\/10\/BTS04.png 1563w, https:\/\/tointegrationandbeyond.com\/blogs\/wp-content\/uploads\/2020\/10\/BTS04-300x183.png 300w, https:\/\/tointegrationandbeyond.com\/blogs\/wp-content\/uploads\/2020\/10\/BTS04-1024x625.png 1024w, https:\/\/tointegrationandbeyond.com\/blogs\/wp-content\/uploads\/2020\/10\/BTS04-768x469.png 768w, https:\/\/tointegrationandbeyond.com\/blogs\/wp-content\/uploads\/2020\/10\/BTS04-1536x938.png 1536w\" sizes=\"auto, (max-width: 819px) 100vw, 819px\" \/><\/p>\n<p>One final note, I was able to reproduce the same issue on other environments with BizTalk Server 2020 Developer and Enterprise editions with and without CU1.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introduction In this article I look into a BizTalk Server 2020 Logic App Adapter configuration issue leading to failure in the Adapter when used in receive locations, and I will show one way to resolve this issue. I had an environment with BizTalk Server 2020 Enterprise CU1, it was the first time to use the<\/p>\n","protected":false},"author":1,"featured_media":2182,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[6,4,1892,7],"tags":[9,1894,1893,21],"class_list":["post-2168","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-azure","category-biztalk","category-bug","category-logic-apps","tag-biztalk","tag-bug","tag-issue","tag-logic-apps"],"_links":{"self":[{"href":"https:\/\/tointegrationandbeyond.com\/blogs\/index.php\/wp-json\/wp\/v2\/posts\/2168","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tointegrationandbeyond.com\/blogs\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tointegrationandbeyond.com\/blogs\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tointegrationandbeyond.com\/blogs\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/tointegrationandbeyond.com\/blogs\/index.php\/wp-json\/wp\/v2\/comments?post=2168"}],"version-history":[{"count":17,"href":"https:\/\/tointegrationandbeyond.com\/blogs\/index.php\/wp-json\/wp\/v2\/posts\/2168\/revisions"}],"predecessor-version":[{"id":2185,"href":"https:\/\/tointegrationandbeyond.com\/blogs\/index.php\/wp-json\/wp\/v2\/posts\/2168\/revisions\/2185"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tointegrationandbeyond.com\/blogs\/index.php\/wp-json\/wp\/v2\/media\/2182"}],"wp:attachment":[{"href":"https:\/\/tointegrationandbeyond.com\/blogs\/index.php\/wp-json\/wp\/v2\/media?parent=2168"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tointegrationandbeyond.com\/blogs\/index.php\/wp-json\/wp\/v2\/categories?post=2168"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tointegrationandbeyond.com\/blogs\/index.php\/wp-json\/wp\/v2\/tags?post=2168"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}