I recently completed a series of posts on a scale-out deployment the Microsoft Dynamics GP 2013 Web Client; during the course of writing that series I encountered a few problems, which I thought it might be useful to post.
This first post takes a look at an error I received after installation. When I tried to log into the Web Client I received the below error message:
An unexpected error has occurred. Press the Sign-in button to reconnect to the application.
Correlation ID: 66a9ddaa-4288-4535-affb-2a3ec0b072d3
The error codes displayed via IE are fairly useless; to debug the error successfully, you need to check the error details on the Session Central server. When I opened the Windows Event Viewer there were two errors listed.
The first was fairly brief and referred to an unauthorized attempt to call the GetSessionHostWithMostAvailability operation and names the acount which had made the attempt:
An unauthorized attempt to call the GetSessionHostWithMostAvailability operation on Session Central was made by DOMAIN\srvc.gpweb.app.
The second error was a lot more verbose:
66a9ddaa-4288-4535-affb-2a3ec0b072d3:An unexpected error has occurred. Press the Sign-in button to reconnect to the application.::System.Web.HttpUnhandledException (0x80004005): Exception of type 'System.Web.HttpUnhandledException' was thrown. ---> System.ServiceModel.FaultException`1[System.ServiceModel.ExceptionDetail]: The user is not authorized to call this service operation. (Fault Detail is equal to An ExceptionDetail, likely created by IncludeExceptionDetailInFaults=true, whose value is:
System.InvalidOperationException: The user is not authorized to call this service operation.
at Microsoft.Dynamics.GP.Web.Services.Session.Service.SessionCentralService.ValidateCallerIsMemberOf(String principalCollectionKey)
at SyncInvokeGetSessionHostWithMostAvailability(Object , Object , Object )
at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object inputs, Object& outputs)
at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage31(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)).
at System.Web.UI.Page.HandleError(Exception e)
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.ProcessRequest(HttpContext context)
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
Both errors point to one of the service accounts not having the required permissions. I added the account as a local admin on the session central machine and tried to log in again; this error was no longer produced.
|Unauthorized attempt to call the GetSessionHostWithMostAvailability Operation On Session Central|
|No Endpoint Listening|
|Could Not Establish Trust Relationship|
|Target Principle Name Is Incorrect|
|Web Management Console – Unable To Access SnapIn Config Data Store|