One of our customers recently contacted us with a very annoying issue opening Excel files from SharePoint 2010 document libraries. Upon arriving to review their installation we discovered the following odd behaviors:
Clicking on a document library link to an Excel document resulted in the following error:
Unable to process the request.
Wait a few minutes and try performing this operation again.
Oh joy, very helpful indeed
<Research Happens Here>
The Solution
EDIT: Updated solution post service pack 1
(What!!!, you don’t have SP1 installed yet?? checkout this link for details)
- Navigate: Site Actions –> Site Settings
- Click the Site Collections Features link located under the Site Collection Administration section of the page
- Locate and active the Open Documents in Client Applications by Default
NOTE: This does not always resolve the issue, even with SP1 installed. We have yet to determine a consistent root cause. If the solution steps above do not resolve the issue, continue on to our original solution below (or reinstall SharePoint… whichever works best for you)
Original Solution
The problem was traced to SharePoint’s built-in URL redirection for various files types. Behind the scenes, SharePoint was attempting to redirect the Excel file to a common viewer component. We just needed to turn this redirection off.
Edit the serverfilesExcelServer.xml file at the following location:
[Program Files]Common FilesMicrosoft SharedWeb Server Extensions14TEMPLATEXML
Comment out any lines with the file extension of xlsx or xls
Example:
<?xml version="1.0" encoding="utf-8" ?>
<!– Copyright (c) Microsoft Corporation. All rights reserved. –>
<ServerFiles>
<!–<Mapping FileExtension="xlsx" RedirectUrlTemplate="/_layouts/xlviewer.aspx?id=|0" NoGetRedirect="TRUE" CreateRedirectUrlTemplate="/_layouts/xlviewer.aspx?new=1"/> –>
<Mapping FileExtension="xlsb" RedirectUrlTemplate="/_layouts/xlviewer.aspx?id=|0" NoGetRedirect="TRUE" CreateRedirectUrlTemplate="/_layouts/xlviewer.aspx?new=1"/>
<Mapping FileExtension="xlsm" RedirectUrlTemplate="/_layouts/xlviewer.aspx?id=|0" NoGetRedirect="TRUE" CreateRedirectUrlTemplate="/_layouts/xlviewer.aspx?new=1"/>
</ServerFiles>
Perform an IISRESET and you will now be presented with the tried and true standard “Open Document” dialog