且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

BizTalk Server 2013和部署MSI与动态发送端口

更新时间:2022-10-23 20:48:58

听起来好像无法识别所需的资源。您提到在动态端口中使用自定义管道 - 如果您只是尝试查看此问题是否可以重现使用PassThru管道?


通常值得检查Windows事件日志,看看是否还有其他错误,这些错误详细说明了它究竟会被卡住的更多信息。


Hello community, wonder if any help out there for this odd problem.

Deployment of application msi fails into BizTalk 2013 prod environment, fails when deploying the project dll that contains all the orchestrations, and reports a failure to apply early bindings.  The only early bindings in this project are dynamic send ports.  I cannot recreate the problem in in my QAS environment where deployments of the same msi works fine.  

  • I can build an msi without any bindings at all except for the dynamically created ones, and this also display the same behaviour on import.  
  • I have test deployed a 2nd unrelated app that also uses dynamic send ports, and this displays the problem.  
  • Adding the assembly directly to BizTalk console displays the same behaviour.
  • Deployment of msi apps without dynamic send ports are ok.

The dynamic ports use a pipeline including a custom pipeline component which I can confirm is available in the correct directory

  • C:\Program Files (x86)\Microsoft BizTalk Server 2013\Pipeline Components

No specific further detail is available in the error except.

Import Wizard[09/05/2014 08:20:47]: Error in Importing Application

Import Wizard[09/05/2014 08:20:47]: Change requests failed for some resources.

BizTalkAssemblyResourceManager failed to complete end type change request.

Unable to deploy early bindings.

Failed to update binding information.

Error in the application.

 

Other information that may be relevant:

  • The main difference between QAS and PROD is that PROD is a two node cluster.  Import behaviour is the same if attempted on either node.  Assemblies are installed in both nodes currently.
  • The dynamic ports are set on handlers that are non-clustered hosts (all are for adapter type SMTP).
  • I have ensured that all the adapter handlers are identically setup in both environments.
  • The project files were migrated to BizTalk 2013 from BizTalk 2010, imported and then converted using VS 2012.
  • The msi has installed the assemblies as per usual and they do exist in the .net 4 gac
  • There is a reference to a shared resource in a different application, this application is installed and imported ok.

I’m a bit stuck at what to try now, I have option where I could recreate the dynamic ports from scratch in the orchestrations and redeploy to dev in the hope it’s something that VS2012 didn’t handle too gracefully when converting the project.  I could move the functionality into a helper class and forget about using dynamic sends, rather not go down that route.  I'm still suspecting this is small difference in setup of the group between QAS and PROD but I can't see anything jumping out.

Any comments are most welcome.


It does sound like it cannot identify the resources it needs.  You mention that you use a custom pipeline in your dynamic ports - have you tried to see if this issue is reproduceable if you just use a PassThru pipeline?

It is often worth checking the Windows Event Log to see if there are any further errors that detail more information on what exactly it's getting stuck on.