Earlier today I posted about an issue you’ll run into if you have created a Publishing site in MOSS 2007 Beta 2 (B2) and then upgrade to Beta 2 Technical Refresh (B2TR). The goal of this post is to explain the root of the issue, as well as offer up a fix.
What’s the issue? If you’ve created a Publishing site in MOSS 2007 B2 and then upgrade to B2TR, you may see the following error reported:
_An error occurred during the processing of /catalogs/masterpage/TopNavFlyouts.master. Type “Microsoft.SharePoint.Publishing.Navigation.PortalSiteMapDataSource” does not have a public property named ‘TrimNonCurrentHeadings’.
First, why are you seeing this issue? The reason you’re seeing this issue is because your Publishing site (or WCM site) is using one of the master pages that was in B2 but has been depreciated in B2TR. Which ones are depreciated (and what’s the B2TR equivalent)?
B2 Depreciated Master Page
B2TR Master Page
As the error message states, the property named TrimNonCurrentHeadings in TopNavFlyouts.master on the TopNavFlyouts.master page no longer exists in B2TR. The property has been renamed to TrimNonCurrentTypes which takes strings such as “headings,pages”.
So, why doesn’t the installer/upgrader fix this? When the upgrade runs, it tries to delete depreciated master pages that aren’t currently in use. If a depreciated one is in use, its log in the upgrade log, but its not deleted. For those that are not deprecated, they are upgraded.
Second, how do you fix it? If you are using one of the depreciated master pages in your site collection or page layout, the recommended way to resolve this issue is to edit the site collection or page layout and change it to use one of the master pages that wasn’t depreciated.
If you have site that’s not inheriting from the top level site in a site collection or from its parent site, then you need to change that site’s master page as well.
I’d expect to see this info, along with possibly more detail, on the ECM blog in the next day or week.
Now for some WCM B2TR fun…