Do not change feature Deployment Path (folder name) when upgrading working WSPsolution

Scenario:

You have SharePoint 2007 site that uses some custom build features. Features are providing some custom list templates.

You are refactoring solution for SharePoint 2010, upgrade project to Visual Studio 2010.

You upgraded the site to SharePoint 2010 and you deployed your upgraded solution.

If you didnt pay attention to detail your lists may not work anymore, returning 404 File not found error.

WHen you dig to ULS log you will find something similar:

Relying on fallback logic in VghostPageManager::getGhostDocument() for document: ‘C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\HIVE\Template\Features\FeaureName\ListTemplates\MyList\AllItems.aspx

Go to 14 hive on the server and check what is your folder name where you expect this file to reside. Maybe it is something like: SolutionName_Feature1 ?

If yes, go back to your solution and check Deployment Path for the feature. By default it will be tokenised value built dynamicly from solutionname and feature file name. You can hardcode your old feature name.

Rebuild solution and deploy new version. Your lists will come back.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s