作为我的SharePoint Server 2013安装的一部分,我有时需要将新的工作流程基础架构集成到农场中。我从事物的SharePoint方面开始跟随文档:

  • http://technet.microsoft.com/en-us/library/ JJ658588.aspx

    从此处基于链接文档安装和配置组件(此部分不是SharePoint特定):

    • 概述: http://technet.microsoft.com/en-us/库/ JJ193478.aspx
    • 配置: http://technet.microsoft.com/en-us/库/ JJ193510.aspx

      基于SharePoint Docs中的信息我必须运行以下命令才能允许通信(对于我的示例,我在SharePoint和Workflow Manager上使用HTTP):

      Register-SPWorkflowService –SPSite "http://collab/" –WorkflowHostUri "http://sp2013-01:12291" –AllowOAuthHttp
      
      .


      这是一个为我的环境工作的命令,其中我的SharePoint URL是 http://sp.apple.com 以及我安装的Web前端服务器,其中Workflow Manager名为SharePointwfe。注册spworkflowservice -spsite“ http://sp.apple.com ”-workflowhosturi“ http:// sharepointwfe:12291 ”--allowoauthhttp


      读取此cmdlet的文档,我不确定我必须为应该运行新工作流程基础架构(非SP2010 WF)的所有网站集的此命令。

      • http://technet.microsoft.com/en-us/library/ JJ663115.aspx

        配置SharePoint主机以使用工作流程服务

        参数:

        spsite |需要| Microsoft.SharePoint.Powershell.spsitepipebind |指定要配置的站点集合

        问题

        • 我需要执行这个命令一次,网站集将存储一些配置信息吗?
        • 我是否需要在每个网站集合上运行这个命令,这些集合应该使用新的工作流程基础架构?

          基础架构详细信息:

          • Windows Server 2012标准英文
          • SharePoint Server 2013 English
          • MS SQL 2012 SP1标准英文
          • 工作流管理器1.0
          • 1x域控制器
          • 1x SharePoint框运行Wokflow Manager
          • 1x SQL Server
有帮助吗?

解决方案

Register the service by selecting one of your Web Applications as per the example you provided above. After you have registered it for (in this case, for "Collab"), you should be able to verify that 2013 Workflows now work within SharePoint Designer 2013 for any site residing within the "Collab" Web Application.

If you have other Web Applications where you have customized the service applications then you need to enable them like any other shared service. If you have other web applications with default services, then the 2013 Workflow service should be working. So no, you do not run the command multiple times. One time only. Then manage the service within SharePoint Central Admin.

I summarized this in my blog post here:

http://forte-design.com/?p=1

Chuck LaForte Forte Design

其他提示

You need to execute Register-SPWorkflowService only once for the entire farm.

I have many cases where this did not work though due to some other factors in addition to the Proxy issue mentioned in the earlier response.

  1. SharePoint web applications are using https and the root of their cert is not in Workflow Manager server trusted root authority (MMC Snap-in, Certificates, Local computer)

  2. Test user publishing the workflow is a system account.

  3. Test user does not have an entry in User Profile or does not have an email.

  4. App Management or subscription service is not properly provisioned (no configuration required for App management though).

  5. Workflow Manager endpoint Public key (.Cer) is not registered in SharePoint as Trusted Root Authority (New-SPTrustedRootAuthority) if the communication will be entirely over HTTPS (i.e. Not allowing HTTP).

The 'Register-SPWorkflowService' command creates the service proxy connection for the whole farm, but this proxy connection gets only added to the service connection group of the current web app. If you only have one service connection configuration, you are good to go now.

If you have additional proxy groups configured in your farm, it is not added there and you cannot simply check the box to add it. You need to add the workflow service to these groups, e.g. with the following script snippet:

$appProxyDisplayName = "Workflow Service Application Proxy"

$proxyGroup = "your proxy group name here, look up in ca - web app - service connections"

# https://hughajwood.wordpress.com/2013/08/22/starting-a-service-application-proxy-via-powershell/
$appProxy = Get-SPServiceApplicationProxy | Where-Object {$_.DisplayName -eq $appProxyDisplayName}

# Add workflow Service to an existing service group
# https://technet.microsoft.com/en-us/library/ee704550.aspx
# Add-SPServiceApplicationProxyGroupMember -Identity < the service application proxy group > -Member <members to add to the service application proxy group>

Add-SPServiceApplicationProxyGroupMember -Identity $proxyGroup -Member $appProxy
许可以下: CC-BY-SA归因
scroll top