I recently ran into an issue with one of my clients who have an integreation between one of their custom entities and a SharePoint document library. The integration is pretty basic: for each record that is created in this new entity, we create a folder in SharePoint to store the documents related to the record. We expose the SharePoint folder in CRM via a simple IFRAME.
The integration has been working wonderfully–up until a few days ago when I got word that when the client attempted to open some of their documents, they were greeted with an Error 404: File Not Found.
This was a confusing issue: I could see the file that wouldn’t open in the IFRAME and I could see it in SharePoint Explorer. I was also able to see the file that would not open when opening the folder in SharePoint via Windows Explorer. Obstentisbly, nothing appeared to be wrong: the file had a size and the file name AND folder name did not include any of the fobidden special characters: : / \ : * ? < > | ” # { } % & ~
What could it be? Why can’t this file be opened? The likely culprit was a corrupt file, but it seemed odd that these corrupted files had a size, as most corrupt files I have seen have a 0KB size. The real cause of the issue soon revealed itself to me.
Through a ton of Trial-and-Error I was able to determine that the real cause of the issue was that there was a ‘+’ in the file name (i.e: a file named A+B.pdf).
While Windows allows you to name a file with a plus sign (+), SharePoint bugs out when trying to open the file.
The cause is this:
I can open a file locally on my PC called A+B.pdf.
However, when I open a file on SHarePoint, I am actually opening it from http://mysharepointsite.com/A+B.pdf The PLUS sign in the URL is the real culprit here. Plus signs in a URL are a No-No.
I was able to fix this issue by replacing any files with a (+) in their name with dashes (-). Once the offending plus signs were removed the file opened as normal! A simple solution to a seemingly complex problem!

Recent Comments