SharePoint 2016 工作流报错“没有适用于此应用程序的地址”

  前言

  最近为SharePoint 2016配置工作流,创建工作流的过程中遇到这样一个错误,记录分享下来,希望能够为有需要的人带来帮助。

  错误截图

  创建完毕工作流,发布的时候报错,保存没有问题。

  错误信息

Microsoft.SharePoint.SPEndpointAddressNotFoundException: 没有适用于此应用程序的地址。
   在 Microsoft.SharePoint.SPRoundRobinServiceLoadBalancer.BeginOperation()
   在 Microsoft.SharePoint.Administration.SPServiceApplicationProxyBase`1.ExecuteOnChannel(Boolean requireDelegation, Action`1 codeBlock)
   在 Microsoft.SharePoint.AppManagement.AppManagementServiceApplicationProxy.GetScaleOutDatabaseMap()
   在 Microsoft.SharePoint.SPScaleOutDatabaseMap.GetMapCacheEntriesForProxy

  解决方案

  使用PowerShell创建SPSubscriptionSettingsServiceApplicationSPSubscriptionSettingsServiceApplicationProxy两个服务应用程序,创建完毕错误就解决了。

$account = Get-SPManagedAccount spsetupadmin
$appPool = New-SPServiceApplicationPool -Name SubscriptionServiceAppPool -Account $account
$serviceApp = New-SPSubscriptionSettingsServiceApplication -ApplicationPool $appPool -name "Subscription Settings Service Application" -DatabaseName "SubscriptionSettingsDB"
$serviceAppProxy = New-SPSubscriptionSettingsServiceApplicationProxy -ServiceApplication $serviceApp

  创建完毕截图:

  报错是因为缺少这应用程序和代理应用程序,创建完毕以后,工作流就可以正常运行了。

  结束语

  这个错误不是很常见,自己搜了很久帖子才发现解决方法,总结一下分享出来,希望遇到的人看到,能够有所启示。