"Unable to access SnapIn config data Store" accessing Web Management Console
For quite some time I had been running into this error when attempting to access the Microsoft Dynamics GP 2013 Web Management Console application from a Windows 8 machine.
I had ran a Fiddler trace on the issue and determined that the issue simultaneously reported and HTTP 405 error, which suggested a problem with Windows Authentication, required by the Web Management Console.
Since I really couldn't determine what the problem was, the issue went dormant for more than 4 months. In addition, I never seemed to have the time to troubleshoot it with my friends over at Microsoft... until this past Microsoft Convergence New Orleans 2013, that is.
As it turned out, there's one "other pre-requisite" if installing the Web Management Console on a Windows 8 environment: Windows Communication Foundation (WCF) HTTP Activation. Simply put, HTTP activation allows a WCF service to relay its messaging asynchronously over HTTP - in this case HTTPS. In Windows 8, HTTP Activation is turned off by default, unlike Windows Server.
The SnapIn config data store is a table in the GPWEBMANAGEMENT database (dbo.SnapInStorage) and stores the URL to the Session Central Service WCF service. I ran a SQL Profile trace and noticed that the Web Management Console was not able to reach the GPWEBMANAGEMENT database on the SQL Server to read the Session Central Service URL. Therefore, the Console was not able to communicate to the Session Central Service to obtain user session or tenant information.
To turn on HTTP Activation on Windows 8:
1. Open Control Panel
2. Select Programs
3. Click on Turn Windows features on or off
4. Expand .NET Framework 4.5 Advanced Services
5. Expand WCF Services
6. Click on the HTTP Activation checkmark
7. If you plan to support other protocols in your environment, you can turn on MSMQ Activation, Named Pipe Activation TCP Activation, or TCP Port Sharing as additional options for your WCF endpoints.
Once the services were up and running, the Web Management Console worked like a charm.
Many thanks to Daryl Anderson and Grant Swenson at Microsoft for assisting with this one.
Until next post!
MG.-
Mariano Gomez, MVP
IntellPartners, LLC
http://www.IntellPartners.com/
SnapIn config data store error |
Fiddler Trace |
As it turned out, there's one "other pre-requisite" if installing the Web Management Console on a Windows 8 environment: Windows Communication Foundation (WCF) HTTP Activation. Simply put, HTTP activation allows a WCF service to relay its messaging asynchronously over HTTP - in this case HTTPS. In Windows 8, HTTP Activation is turned off by default, unlike Windows Server.
The SnapIn config data store is a table in the GPWEBMANAGEMENT database (dbo.SnapInStorage) and stores the URL to the Session Central Service WCF service. I ran a SQL Profile trace and noticed that the Web Management Console was not able to reach the GPWEBMANAGEMENT database on the SQL Server to read the Session Central Service URL. Therefore, the Console was not able to communicate to the Session Central Service to obtain user session or tenant information.
To turn on HTTP Activation on Windows 8:
1. Open Control Panel
2. Select Programs
3. Click on Turn Windows features on or off
4. Expand .NET Framework 4.5 Advanced Services
5. Expand WCF Services
6. Click on the HTTP Activation checkmark
WCF HTTP Activation |
Once the services were up and running, the Web Management Console worked like a charm.
Many thanks to Daryl Anderson and Grant Swenson at Microsoft for assisting with this one.
Until next post!
MG.-
Mariano Gomez, MVP
IntellPartners, LLC
http://www.IntellPartners.com/
Comments
Are there any other recommended solutions?
Huber
Huber
Thanks!
Check the values in your SnapIn and SnapInStorage tables in the GPCONFIGURATION database. Make sure you have matching entries. For example, this is what I see in my SnapIn table:
Id Name Description
C7851276-926E-499C-9811-11A6A283A318 Dexterity Service Management The Web Management Console DexNext Snapin, used for managing gp service instances on multiple servers.
AC144217-80A3-49AF-8BB0-B6AA7C942D20 Session Management The Web Management Console Session Snapin, used for managing session instances on multiple session servers.
0721689D-1ADC-4B74-961B-E254E7373D57 Home
And this is what I see in my SnapInStorage table:
Id DataKey DataValue IsShareable
AC144217-80A3-49AF-8BB0-B6AA7C942D20 SessionCentralUrl https://MGB003:48650/SessionCentralService 1
As you can tell, the Id value for the Web Management Console must match that of the SnapInStorage and the SnapInStorage must contain a valid address to the SessionCentralService URI
I have this issue and added the HTTP but it did not work. I only have the 1 file in the Snapin table, AC144217-80A3-49AF-8BB0-B6AA7C942D20 Session Management The Web Management Console Session Snapin. I do not have the DexNext Snapin.
What have I missed?
Regards,
Geoff James
This collection already contains an address with scheme http. There can be at most one address per scheme in this collection. If your service is being hosted in IIS you can fix the problem by setting 'system.serviceModel/serviceHostingEnvironment/multipleSiteBindingsEnabled' to true or specifying 'system.serviceModel/serviceHostingEnvironment/baseAddressPrefixFilters'.
Immediately I remembered that I had set up the web client's website with 2 bindings, one configured by IP and the other configured by FQN. I opened IIS Manager and delete the IP binding. Then I rebooted the website, the Session Central service and GP Session Services and voilà ! it worked like a charm.