Today (28th of July 2014) I have managed to successfuly install MDS Add-in after some issues and I tried now to connect my Excel 2013 MDS add-in (SQL Server 2014 add-in) and I got this error:
The connection failed because the URL is not valid or the Master Data Manager web application version is not supported.
There was no endpoint listening at http://ServerName:PortID/service/service.svc/bhb that could accept the message. This is often caused by an incorrect address or SOAP action. See InnerException, if present, for more details.(Micorsoft.MasterDataServices.AsyncEssentials)
The message didn't make much sense to me so I've started my google search:
Error and steps I took to resolve it
1) Is the MDS working in the browser
I've opened the browswer on my laptop typed http://ServerName:PortID/ and it worked.
2) Check IIS Authentication
I've checked IIS root authentication and windows authentication was enabled and anonymous was disabled which appears to be correct set up.
I expanded root and clicked service folder and that in IIS authentication 'anonymous' was enabled with windows authentication enabled as well and that appeared to be correct.
3) Check Full Path
I noticed that when connect with http://ServerName:PortID/ it actually goes to http://ServerName:PortID/service/service.svc/bhb and on website it was suggested I run this path http://ServerName:PortID/Service/Service.svc? which didn't work by giving this erro:
404 - File or directory not found.
However running the same path on the server go me this error
HTTP Error 404.3 - Not Found
The page you are requesting cannot be served because of the extension configuration. If the page is a script, add a handler. If the file should be downloaded, add a MIME map.
Which appeared to be a step forward. I combined the keywords to narrow the search but no luck so I went with my most recent error and a post on stackoverflow said:
This is a common issue and happens when IIS is installed after VS or .NET framework.
and the solution is to install Microsoft ASP.NET IIS Registration Tool (Aspnet_regiis.exe) and in comments of the link I got there was information to use correct version of Microsoft page so in my case I went with .net 4.0 Registration tool documentaion page. I had to scroll to Finding the correct version of Aspnet_regiis.exe which in my case however I only could find 4.0 although my .net is 4.5 so I have decided to use %windir%\Microsoft.NET\Framework64\v4.0.30319
I've run with -i switch which was suggested in stackoverflow forum but got this message back:
which I presume is a step forward for me.
I found another webpage that said
You will get above error when accessing the ASP.Net Website (.ASPX page) installed in IIS 8 when ASP.Net is not installed in the IIS 8 Web Server.
which does sound like my case so I had a go with it and after restarting the server I got:
HTTP Error 503. The service is unavailable.
Quick google search and it appears my IIS application pool was off so I switched it on and I got the same error and noticed the application pool was off again.
I found out that this due to my account password that has changed and from this page I followed this instructions:
To change password got to Application Pool->Advanced Settings->Process Model->Identity and change the password there.
I was back where I started so MDS was running in the browser but still couldn't access the page.
This time I actually read the message in more details (which I should have done at the beginning) and I noticed I'm missing .svc from Handler Mappings in my IIS 8.5 with new search I found this page which explained to run this code:
"%WINDIR%\Microsoft.Net\Framework64\v3.0\Windows Communication Foundation\ServiceModelReg.exe" -r
and has this solved my problem? Not quite as I was not getting
Could not load type 'System.ServiceModel.Activation.HttpModule' from assembly 'System.ServiceModel, Version=184.108.40.206, Culture=neutral, PublicKeyToken=b77a5c561934e089'.
So I made another search but this time I included keyword .net 4.5 and got this page which said:
For Windows 8 you need to Windows features and enable everything under ".Net Framework 3.5" and ".Net Framework 4.5 Advanced Services".
In my case it was Windows Server 2012 R2 not Window 8 so I went to Server Manager and clicked Add Roles and Features and I couldn't find it! but then I realized I looked at roles so I clicked next to view feature and enabled HTTP Activation (for 3.5 and 4.5) and that solved the problem!
I've tested connection in Excel 2013 and it was working.
Several hours of trying various things but hopefully by recording my findings in this blog post it will help other people find more quickly the solution.