【发布时间】:2011-05-06 14:14:19
【问题描述】:
我在同一虚拟机上的两个不同虚拟目录上设置了 dev 和 prod 环境,并按照 Configuring Multiple WMS Instances 尝试正确设置它们。它们似乎工作正常,因为我可以看到工作流实例基于连接到它们的客户端在适当的环境中持续存在。问题在于尝试在 IIS 管理器中查看持久化实例。我收到以下错误:
IIS Error Displayed when trying to look at persisted instances
Error message presented when clicking on "Error(s) encountered" link
(*抱歉,我不知道怎么直接把图片上传到这个帖子里*)
我的相关配置文件如下:
默认 Web.Config
<microsoft.applicationServer>
<monitoring lockElements="bulkCopyProviders, collectors">
<bulkCopyProviders>
<bulkCopyProvider providerName="System.Data.SqlClient" type="Microsoft.ApplicationServer.Monitoring.EventCollector.SqlServerBulkCopy, Microsoft.ApplicationServer.Monitoring, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</bulkCopyProviders>
<collectors>
<collector name="" session="0">
<settings retryCount="5" eventBufferSize="10000" retryWait="00:00:15" samplingInterval="00:00:05" aggregationEnabled="true" />
</collector>
</collectors>
<default enabled="true" connectionStringName="ProductionApplicationServerMonitoringConnectionString" monitoringLevel="HealthMonitoring" />
</monitoring>
<persistence>
<instanceStoreProviders lockItem="true">
<add name="SqlPersistenceStoreProvider" storeProvider="Microsoft.ApplicationServer.StoreProvider.Sql.SqlWorkflowInstanceStoreProvider, Microsoft.ApplicationServer.StoreProvider, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" storeControlProvider="Microsoft.ApplicationServer.StoreManagement.Sql.Control.SqlInstanceControlProvider, Microsoft.ApplicationServer.StoreManagement, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" storeQueryProvider="Microsoft.ApplicationServer.StoreManagement.Sql.Query.SqlInstanceQueryProvider, Microsoft.ApplicationServer.StoreManagement, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</instanceStoreProviders>
<workflowManagement>
<workflowManagementServiceInstances lockItem="true">
<workflowManagementServiceInstance name="">
<instanceStores>
<instanceStore name="productionSqlPersistenceStore" location="Workflows.Prod" />
</instanceStores>
</workflowManagementServiceInstance>
<workflowManagementServiceInstance name="Dev">
<instanceStores>
<instanceStore name="devSqlPersistenceStore" location="Workflows.Dev" />
</instanceStores>
</workflowManagementServiceInstance>
</workflowManagementServiceInstances>
</workflowManagement>
<instanceStores>
<add name="devSqlPersistenceStore" provider="SqlPersistenceStoreProvider" connectionStringName="ApplicationServerWorkflowInstanceStoreConnectionString" />
<add name="productionSqlPersistenceStore" provider="SqlPersistenceStoreProvider" connectionStringName="ProductionApplicationServerWorkflowInstanceStoreConnectionString" />
</instanceStores>
</persistence>
<hosting>
<serviceManagement endpointConfiguration="ServiceManagementNetPipeEndpoint" enabled="true" authorizedWindowsGroup="AS_Administrators" />
</hosting>
</microsoft.applicationServer>
<connectionStrings>
<add connectionString="BigSecret" name="ApplicationServerMonitoringConnectionString" />
<add connectionString="BigSecret" name="ApplicationServerWorkflowInstanceStoreConnectionString" />
<add connectionString="BigSecret" name="ProductionApplicationServerMonitoringConnectionString" />
<add connectionString="BigSecret" name="ProductionApplicationServerWorkflowInstanceStoreConnectionString" />
</connectionStrings>
生产 Web.Config:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.0" />
</system.web>
<system.serviceModel>
<protocolMapping>
<remove scheme="net.pipe" />
</protocolMapping>
<behaviors>
<serviceBehaviors>
<behavior>
<serviceMetadata httpGetEnabled="false" />
<serviceDebug includeExceptionDetailInFaults="false" />
<sqlWorkflowInstanceStore instanceCompletionAction="DeleteAll" instanceEncodingOption="None" instanceLockedExceptionAction="NoRetry" connectionStringName="ProductionApplicationServerWorkflowInstanceStoreConnectionString" hostLockRenewalPeriod="00:00:30" runnableInstancesDetectionPeriod="00:00:05" />
<workflowInstanceManagement authorizedWindowsGroup="AS_Administrators" />
<workflowUnhandledException action="AbandonAndSuspend" />
<workflowIdle timeToPersist="00:00:00" timeToUnload="00:01:00" />
</behavior>
</serviceBehaviors>
</behaviors>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
</system.serviceModel>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true" />
</system.webServer>
<microsoft.applicationServer>
<monitoring lockElements="bulkCopyProviders, collectors">
<default enabled="true" connectionStringName="workflowStoreConnectionString" monitoringLevel="HealthMonitoring" />
</monitoring>
<persistence>
<instanceStores>
<remove name="defaultSqlPersistenceStore" />
<add name="defaultSqlPersistenceStore" provider="SqlPersistenceStoreProvider" connectionStringName="workflowStoreConnectionString" />
</instanceStores>
</persistence>
<hosting>
<serviceManagement endpointConfiguration="ServiceManagementNetPipeEndpoint" enabled="false" />
</hosting>
</microsoft.applicationServer>
<connectionStrings>
<add connectionString="BigSecret" name="workflowStoreConnectionString" />
</connectionStrings>
</configuration>
Dev Web.Config - 与 Production 相同,但连接字符串不同
感谢您在解决错误消息和查看持久实例方面的任何帮助。 TIA。 JH
【问题讨论】:
标签: workflow-foundation-4 appfabric