I have a problem on my one cloud-hosted Dev box. It suddenly doesn't want to do a realtime call. I can't exactly pinpoint when it started because I don't always create a warehouse pickup or ship/deliver order during testing. I tested lately only cash and carry out cart transactions. So when I wanted to test a warehouse pickup order I suddenly got the following error:
The Real-time Service call failed. This may be because of an unhandled exception or because the headquarters did not recognize the Real-time Service Profile permissions. Contact your system admin.
I am running V10.0.22 on both my Dev boxes and the one Dev box has no problem, just this one. Both run the same custom code as well, I did a get latest numerous times. I did refresh the data from a backup from UAt on the Dev box that has the problem but I have also done the Initialize scheduler, generate of queries and running of job 9999 multiple times and made sure the download sessions showed that all is applied.
If I look in the EventViewer I see the following error that also doesn't tell me much. If I add a breakpoint to RetailTransactionService.CreatecustomerOrder(), it stops at the method signature for me, but the moment I want to step into the method, thus when it needs to call RetailTransactionServiceOrders::createCustomerOrder, it fails.
****
An exception occurred while executing request. CorrelationId: '{c82eaa70-2262-44f7-a7fc-596a532028b1}'. Ex: 'Microsoft.Dynamics.Commerce.Runtime.CommunicationException: Real-time Service call for method 'CreateCustomerOrder' failed due to an unhandled exception, or due to invalid user permissions settings in Real-time Service profile. Please refer to the exception details for more information. ---> System.ServiceModel.FaultException`1[Microsoft.Dynamics.Retail.TransactionServices.ClientProxy.Fault]: Fault was thrown by the service for request 69b5a9e4-0d59-4abc-a9eb-1e9675f2ab60. Exception details:
Type: Microsoft.Dynamics.Ax.Xpp.ClrErrorException
Message: CryptoEncryptionException
at Microsoft.Dynamics.Retail.Cdx.RealtimeServiceClientLibrary.RealtimeServiceClient.ProcessInvokeResult(String methodName, String apiName, Int32 parameterCount, RetailTransactionServiceResponse response, Guid correlationId, RetailRealTimeServiceContractChannel channel, Boolean isAsyncCall, Exception& exception, Int32& resultCount, Int64 executionTimeInMs)
at Microsoft.Dynamics.Retail.Cdx.RealtimeServiceClientLibrary.RealtimeServiceClient.<GetResponseFromMethodAsync>d__101.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.Dynamics.Retail.Cdx.RealtimeServiceClientLibrary.RealtimeServiceClient.<InvokeMethodAsync>d__90.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.Dynamics.Commerce.Runtime.TransactionService.TransactionServiceClient.<GetResponseFromMethodAsync>d__98.MoveNext()
--- End of inner exception stack trace ---
at Microsoft.Dynamics.Commerce.Runtime.TransactionService.TransactionServiceClient.<GetResponseFromMethodAsync>d__98.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.Dynamics.Commerce.Runtime.TransactionService.TransactionServiceClient.<GetResponseFromMethodAsync>d__95.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.Dynamics.Commerce.Runtime.TransactionService.TransactionServiceClient.<InvokeMethodAsync>d__79.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.Dynamics.Commerce.Runtime.TransactionService.TransactionServiceClient.<SaveCustomerOrder>d__332.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.Dynamics.Commerce.Runtime.Services.CustomerOrderService.<SaveCustomerOrderInHeadquarter>d__17.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.Dynamics.Commerce.Runtime.Services.CustomerOrderService.<SaveCustomerOrder>d__15.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.Dynamics.Commerce.Runtime.Services.CustomerOrderService.<Execute>d__2.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.Dynamics.Commerce.Runtime.CommerceRuntime.<Execute>d__43`1.MoveNext()'. ExceptionType: 'Microsoft.Dynamics.Commerce.Runtime.CommunicationException'. ErrorResourceId: 'Microsoft_Dynamics_Commerce_Runtime_TransactionServiceSenderFault'. HandlerTypeName: 'Microsoft.Dynamics.Commerce.Runtime.Services.CustomerOrderService'. RequestTypeName: 'Microsoft.Dynamics.Commerce.Runtime.RealtimeServices.Messages.SaveCustomerOrderRealtimeRequest'. HandlerAssemblyName: 'Microsoft.Dynamics.Commerce.Runtime.TransactionService'. HandlerAssemblyPublicKeyToken: '31bf3856ad364e35'. UnscrubbedException: ''.
****
I also had to test the self-service hardwarestation package on my Dev box because the v10.0.22 one didn't want to install. It asked for an SSL certificate and of cause I have no idea which one to pick, so I just selected on that said it is a Retail one. The executable installed and I was able to do a ping test. I removed the hardware station again from Ad/Remove programs. I have no idea if this was what messed up my box. If it was. how do I correct it so that the realtime service works again?
I upgraded my Dev box again with the LCS v10.0.22 deployable package that I downloaded which is the same version that is on the box hoping this will fix whatever the realtime service complains about. I also put the RetailSDK in again
Should I apply the Developer's topology and Environment reprovisioning LCS packages to this environment again?