Archive

Archive for the ‘SharePoint Problems/Issues’ Category

SharePoint 2010: Unable to create or access workbook cache at C:\WINDOWS\TEMP\Excel Server\FileCache\Workbooks

July 9, 2014 2 comments

I ran into an issue recently with Excel Services when trying to open up Excel files on the portal where the Opening Documents in the Browser option was set to open in the browser.   When trying to opening up the excel file in the browser I would get the error message:  “An error has occurred.  Please try again” and the browser window will close out not allowing me to view the file.  Looking on the SharePoint web front end servers I was noticing this error in the event viewer:

Unable to create or access workbook cache at C:\WINDOWS\TEMP\Excel Server\FileCache\<GUID>\Workbooks

When I browsed to that location on the server I did not see a directory structure for Excel Server\FileCache\<GUID>\Workbooks.  Somehow this directory was deleted or was never created when the Excel Services was configured.

By default the Excel Services Application saves the workbooks it loads to a temporary cache on disk. In this case, a workbook disk cache cannot be created on the Excel Services Application server computer due to permissions, disk I/O Errors, or space.

If you run into this issue, these are the steps I took to fix the problem.

1.  Log into all Web Front End Servers that report the above errors in the event viewer.
2.  Browse to C:\WINDOWS\TEMP and create the directory structure for the Excel Server found in the event viewer error manually.
3.  Go back to Central Administration, and stop/restart the Excel Calculation Services on all the web front end servers.

Central Administration|System Settings|Manage Services on server|Excel Calculation Services

4.  Repeat these steps for any others errors like this you might find.

Browse back to the location on the portal, this should fix the issue with opening up the Excel Files in the browser.

 

Fixed: Unable To Activate SharePoint Publishing Infrastructure Feature in SharePoint 2010 with Elevated Privileges.

November 20, 2013 Leave a comment

I recently ran into a strange situation that prevented me from activated the SharePoint Publishing Infrastructure feature on my SharePoint 2010 Site Collection.  Clicking on the activate feature button I was presented with the authentication prompt to enter in the proper permissions to activate, upon entering in the credentials for an account I knew had Site Collection Administrator permissions I was basically told to go “pound sound”.  I then tried to change users to my Farm Account and again tried to activate the feature, SharePoint laughed at me again.

What the heck?  Scratching my head trying to determine the reason why I can’t activate this feature even as Farm Admin, I learned that this can sometimes happen if the Application Pool Identity is set to something other than the one running your Central Administration Application Pool in IIS.

After changing the application pool of the Web Application to the Identity of the one running my Central Administration  Application Pool I was then able to activate the feature in the new site.

Not sure why this behavior is happening.  Reached out to my Microsoft PFE to do a little more digging into this issue.

However, for the time being If you ever encounter this problem, just change the application pool identity of the Web Application you are trying to activate the feature to the Identity of the one running Central Administration and you should be able to activate the feature with no problem.  After you activate the feature you should be able to revert back to the Application Pool Identity you previously had set.

Hopefully this helps others.

Fixing Unable to locate XML-Definition for CType with SPContentTypeId in SharePoint 2010

March 22, 2013 4 comments

Damn these orphaned Content Types.  It seems like i’ve been dealing with these more often than anything recently in my SP2010 environment.

This blog relates to the two previous blogs I made regarding Orphaned Content Types:

http://jshidell.com/2013/03/21/remove-orphaned-content-types-in-sharepoint-2010-that-are-associated-with-a-feature/

http://jshidell.com/2012/06/07/removing-a-corrupted-site-column-in-sharepoint-2010/

In this case, orphaned Content Types in my environement would not allow me to activate certain custom features in my environment, or allow me to add specific content types to any doc library.

Viewing the SharePoint 2010 ULS logs I was seeing these errors.

‘Unable to locate the xml-definition for FieldName with FieldId <GUID>’

‘Unable to locate the xml-definition for CType with SPContentTypeId <GUID>’

Both errors are in relation to one another where the FieldName with FieldId are relying on the CType SPContentTypeId.  Since the xml-definition is missing from the CType, SharePoint is unable to locate the definitions to the FieldName with FieldId that is associated with that CType.

How ContentTypes lose there xml-definitions depends on how these Content Types were applied to the environment.  This usually happens when ContentTypes are deployed to the environment by a feature, and then when these features are deactivated and retracted they leave ContentType residue behind, so when trying to reactivate the same feature again, it will throw an error saying that these ContentType already exists.

I’ve seen this happen when ContentTypes are deployed using CAML Query rather than programatically.

To determine which Content Types (CType) are missing xml-definitions you will have to take a look at the Content DB ContentTypes table within SQL.

Below are the steps to resolve this issue.

*NOTE: In some cases, simply retracting and redeploying the solution to the farm, then reactivating the feature can fix this issue.  Try this first, if it does not work follow my steps beblow.

This will require a direct DB modifictions.  Again this is unsupportive by Microsoft, so make sure you open up a case with them to cover you just incase.

Proceed with caution.  I’m not responsible for your farm!

===========================================================================================================

1.  Determine which content database has the orphaned content types.  (Central Administration, Application Management, Site Collection List), Search for the Site Collection that won’t allow you to activate features or add content types, and note down which Content Database it lives in.
2.  Log into your database server (SQL)
3.  Bring up SSMS and bring up a new Query window
4.  Next Type

SELECT * FROM [DATABASENAME].[dbo].[ContentTypes] WHERE ContentTypeId like ‘%<GUID>%’  #This is the GUID for the CType found in the ULS Log.

5.  This will list the Content Type SharePoint its complaining about.  If you examine the results you will notice in the Definition Column there is a NULL value.
6.  Note down the value in the ‘ResourceDir‘ column.  This will tell you the name of the ContentType
7.  Now here is the thing.  HOPEFULLY this content type was deployed successfully at a different scope, so you can copy the content of the xml-definition from a known ‘good’ location.  If you have multiple results for that same GUID determine if all results of that same ContentType have a value in the Definition column.  If one of the results happens to have the value that is not NULL you are in luck.
8.  Inside one of the the results that have a value other than NULL in its Definition, click inside the cell and right click, copy.
9.  Now we are going to update the ContentType that is missing its xml-definition.
10.  Inside the same Query window type and execute query

UPDATE [DATABASENAME].[dbo].[ContentTypes] SET Definition ‘<PASTE CONTENT FROM STEP 8>’ WHERE ResourceDir like ‘<NAME OF CONTENT TYPE>’ and Definition is NULL

11.  After executing script, re-run query from step 4.
12.  Verify now that the ContentType that was missing it’s definition is no longer NULL.
13.  Do the these same steps for all ContentTypes missing their definition.
14.  After all ContentTypes have been updated, go back to your Site Collection to try to activate your feature, or try to add content types to doc libraries.

============================================================================================================

Fixing Error: The Site Is Not Valid The ‘Pages’ Document Library is Missing in SharePoint 2010.

April 16, 2012 Leave a comment

Oh the Joy of SharePoint 2010.  You learn something new everyday.  But hey it’s good  job security right?

Anyways I recently exported a sub-site in SharePoint 2010 and re-imported this Site and converted it into a Site Collection, into its own managed path and into it’s own content database.

When you do this, there is some clean up that needs to be done.  This site needed to have the publishing features enabled, but it’s not a ‘true’ publishing site.  So I needed to enabled the Site Collection (SharePoint Server Publishing Infrastructure) feature, and also the Site (SharePoint Server Publishing) feature.

I’m not going to get into detail on the other steps needed to successfully convert a Site to a Site Collection in this blog  but I will blog about those procedure later.

So to make a long story short I was attempting to create a new Publishing Page but was I was receiving CorrelationID errors that prevented me from successfully creating the page.

I took the CorrelationID and searched my SharePoint ULS logs.  Based off this CorrelationID I was given this error:

The site is not valid. The ‘Pages’ document library is missing.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: Microsoft.SharePoint.Publishing.InvalidPublishingWebException: The site is not valid. The ‘Pages’ document library is missing.

Based off this error I went to check to make sure the ‘Pages’ document library does indeed exists and is not missing.  To my surprise the ‘Pages’ document library was there.  So why am I getting this error?  I was a little confused.

This error is due to the Publishing feature storing a unique ID of the Pages library in the __PagesListId property which resides in the property bag of the publishing site.

The above listed error will occur if the value stored in the __PagesListId does not match the ID of the actual Pages library.

So somewhere between the Export/Import of the Site it lost its unique ID.

To fix this error you can run a PowerShell script to reassign/update the correct unique ID.

Below is the PowerShell script that will fix this problem.

_____________________________________________________________________________________________

$web = get-spweb http://portal/path-to-affected-site
$correctId = $web.Lists[“Pages”].ID
$web.AllProperties[“__PagesListId”] = $correctId.ToString()
$web.Update()

______________________________________________________________________________________________

After running the script I attempted to create the Publishing Page again and it was created successfully with no error.

I’ve only seen this error happen with an Export/Import of Sites to Site Collections in SharePoint 2010.

Fixing Error: An error has occurred while accessing the SQL Server database or the SharePoint Server Search service

March 27, 2012 Leave a comment

After re-pro-vising the User Profile Service Application in my SharePoint 2010 farm, and attempting to Configure Synchronization Connections I was receiving this error below that was preventing me from establishing a connection with AD.

An error has occurred while accessing the SQL Server database or the SharePoint Server Search service

To clear this error you simply run an IISReset on the server that hosts the User Profile Service Application.  Usually IIS recycles itself after pro-vising a new service app but in some cases it does not.  After running IISRESET the error should disappear and you can add your connection.