I have seen this now a few times in support cases so thought an article should be published. When using the Workflow email approval functionality, you need to make sure that you use a different Azure service namespace for each environment. Do not setup the same one for each environment (Test, Staging, PROD, etc.) because you will receive inconsistent responses that will have you scratching your head.
There is an easy way to check in Azure if your service namespace setup in the Microsoft Dynamics AX Connector for Mobile Applications has more than one active listener:
1. Go to your Azure dashboard (https://manage.windowsazure.com).
2. Select your Azure Service Bus namespace and choose Relays. You should see only one listener:
If you see more than one listener like below you need to check each environment where the Microsoft Dynamics AX Connector for Mobile Applications is running and stop the service or use a different Azure Service Bus namespace in it.
In the above screen shot the same “axconnector” service bus namespace is setup in the Microsoft Dynamics AX Connector for Mobile Applications in two different environments. So the Config and Email relays have two listeners – we only want one. The errors you may see when trying to approve or reject workflow documents when you know it should be working correctly are:
– This document has already been approved.
– You have been locked out of the system for one minute because the information that you submitted contained errors. Please wait, and then verify and resubmit the information.
– The AIF service has stopped and can’t complete your request. Please try again when the AIF service is running. To check the AIF service, contact your system administrator.
For example, if you get the last error from above and you know the AIF service is running, the listener may have sent the response to the wrong instance of the Microsoft Dynamics AX Connector for Mobile Applications service that is pointed to an unintended Microsoft Dynamics AX environment.