Issue
Installing SQL Server 2014 Reporting Services Add-In to SharePoint 2013 fails and log contains following:
1 2 3 4 5 6 7 |
ERR Task applicationcontent has failed with an unknown exception ERR Exception: System.NullReferenceException: Object reference not set to an instance of an object. at Microsoft.SharePoint.Administration.SPAspConfigurationFile.ApplyActionToXmlDocument(XmlDocument xdAction, XmlDocument xd, String sourceFileName, SupportedXmlDocutmentActions supportedActions) at Microsoft.SharePoint.Administration.SPAspConfigurationFile.MergeWebConfig(XmlDocument xdWebConfig, String fileMask) at Microsoft.SharePoint.Administration.SPWebService.ApplyApplicationContentToLocalServer() at Microsoft.SharePoint.PostSetupConfiguration.ApplicationContentTask.Run() at Microsoft.SharePoint.PostSetupConfiguration.TaskThread.ExecuteTask() |
This error occurs either by installing from SQL Server 2014 installation or from rsSharepoint.msi, which is downloadable from MSDN.
Cause
Installation package failed to change web.config file of one or more Sharepoint web applications.
Resolution
Use two step installation to troubleshoot the issues: (MSDN article here)
1 |
Msiexec.exe /i rsSharePoint.msi SKIPCA=1 |
and then:
1 |
rsCustomAction.exe /i |
The command will try to register Reporting Service configuration in web.config files. If you have more than one web application, it’s necessary to find which web application causes the problem. I managed it by looking for:
1 2 3 |
<sectionGroup name="reportserver"> <section name="redirection" type="Microsoft.ReportingServices.SharePoint.Configuration.RSRedirectConfigSection, RSSharePointSoapProxy, Version=12.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" /> </sectionGroup> |
This section (among other elements) is added to web.config when installation of SSRS completes succesfully. If it missing in the web application’s web.config , then there is probably something, which bothers the installation (even though the web application runs without any problem in the browser).
In my case it was a comment between two elements (which doesn’t bother SharePoint but bothers SSRS installation).