Tuesday, March 26, 2013

"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.

SnapIn config data store error
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.

Fiddler Trace
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

WCF HTTP Activation
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/

10 comments:

Anonymous said...

This did not resolve the same SnapIn issue I am encountering with GP2013 r2.

Are there any other recommended solutions?

Mariano Gomez said...

Can you provide a bit more information? Are you trying the same steps on a Windows 8.x platform? Windows Server? The procedure is slightly different for Windows Server.

Anonymous said...

We are using Windows Server 2012, and its not working!

Huber Cooney said...

I'm also seeing the same issue, Mariano. The IIS server is running on Windows Server 2012. If you know of something, all ears. Will also escalate to GP support and advise if they have anything.

Huber

Huber Cooney said...

Should also say that we are attempting access from a Windows 7 machine and from the server on which the web client is installed (Windows Server 2012 with WCF Services: HTTP Activation installed.

Huber

Nsquare said...

Sorry to post on an old thread---but did anyone find a resolution? I am installing on my test server/windows server 2012 with GP 2015. Web client is running fine, but the management console gives me the snap-in error. WCF is activated.

Thanks!

Mariano Gomez said...

Nsquare,

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

Geoff James said...

Hi Mariano,

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

Unknown said...

Hi. I was having this error for days and I found no satisfactory solution on the web. I had the idea to check the Event Viewer and I found an error log which read as follows:

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.

wayan25 said...

thanks bro, it's work on windows Server 2012 R2