in

SharePoint Blogs

The Best Place for SharePoint-related Blogs

tchmiel's blog

Tom's SharePoint Findings

How to upgrade a custom wssv2 site definition to wssv3 default team site

In wssV2, we had created a simple custom site definition which was based on the default STS team site.

We changed the site id, the watermark on the Quick Launch and add a custom Server Control. This custom Server Control was just a modified version of the MiniNavigator Server Control described in Nigel Bridport's blog here.

   

However in wssV3, site navigation is available for free and thus, we wanted to obsolete our custom site definition in favor of reverting back to a standard team site, avoiding the maintenance of our custom site definition going forward.

   

If one looks at the upgrade definition file syntax for wssv2 to wssv3, there is no way to map from one site id in wssv2 to a different wssv3 site id.

   

To workaround this limitation:

   

  1. In wssv2, we reverted the site definition template ids from our custom number back to the standard site template id of "1", by following the steps in Jeff Holiday's

    Changing Custom Site Definition Template IDs - SharePoint 2003 blog post.

       

    But before you try this, let me reiterate Jeff's warnings first:

    "Always make sure to backup all databases and files prior to making any changes.

    NOTE: Microsoft does not support editing SharePoint SQL tables directly…"

       

  2. After step 1, our site home page became corrupted. Following the "How to restore a corrupted Windows SharePoint Services" topic in the following the Microsoft knowledge base article,

    KB:832811 - Restore a corrupted Windows SharePoint Services home page,

    Our wssv2 site was now based on the STS team site definition.

       

  3. We were then able to upgrade our wssv2 sites to wssv3 sites using the standard wssv2 to wssv3 upgrade process. And we no longer have a dependency on our old wssv2 site definition.

       

    Our custom site definition wasn't heavy customized, buy your mileage my vary.

       

    Tom

       

       

Comments

 

Frank said:

Why didn't you just make a copy of the wssv3 default team site, and assign this the same ID as your old wssv2 site definition? That way, you should easily  be able to upgrade your site without reverting the IDs in your wssv2 site.

July 30, 2007 5:45 AM
 

tchmiel said:

This in fact was part of our backup plan, if the above method failed. The main problem with this method is that you must now carry along (and patch if necessary) another team site definition.   Then when v4 comes out, you will have to upgrade this site definition as well.  We wanted to avoid this problem as we move forward.  Your suggested way is the probably the "preferred" way in Microsoft's eyes, since it doesn't involve the modifying of the database directly.

July 30, 2007 6:00 AM
 

MOSS: Some Notes « rinonu writes… said:

Pingback from  MOSS: Some Notes « rinonu writes…

October 12, 2007 4:38 AM
 

Kevin said:

I tried both method but nothing work.

first i tried reverting custom site template to 1 and upgrade the site from central admin / operation and the custom site didn't get upgrade to moss template

i also tried Frank's method of creating a copy of MOSS TST and assign the same ID as the custom site definition, then run the upgrade but the site still look like sharepoint 2003

any ideas?

January 23, 2008 6:18 PM
 

tchmiel said:

@Kevin,

How customized is your site template?  

Did you check the log files for any errors?

Did you try resetting iis?  Try Step #2 above?

Since both ways failed, sounds like you might have a dependency that does not exist in the wssv3.

In our experience, this upgrade process is a fragile process and only works when the everything aligns.

Sorrry can't be more help.

- Tom

January 23, 2008 8:29 PM
 

Kevin said:

I actually modified the site definition.  I made a copy of the default team site template and modified the index.aspx to replace the left quick launch bar by a zone so i can add custom menu.  it wasn't heavy customized at all

is step 2 required if my homepage is not corrupted?

I'm doing this on our dev server and both wss 2.0 and moss are clean installation :)

do you have any other ideas?

thanks.

January 24, 2008 10:19 AM
 

john said:

Tried this and it worked very well. A couple of  caveats that I ran into. We had sites that used ID "1" as well as custom sites that we changed to "1". The custom sites came over, the default ones did not. Still looking into this

February 4, 2008 3:52 PM
 

tchmiel said:

@John,

Did you try step #2 again?

February 4, 2008 4:14 PM
 

john said:

The V2 sites rendered fine after the change, it was when I migrated them that they wouldn't render in V3. Will try option 2 for V3 sites today. Smigrate has some success in correcting the issues I'm seeing. Still experimenting.

February 5, 2008 7:19 AM
 

john said:

Ran through option 2. This resets the site to V2 look/feel. Revert to site definition does not correct.  I do not have the option to "Revert to Template"

February 5, 2008 9:20 AM
 

john said:

OK, solved it!

I had to edit the CustomWSSUpgrade.xml file to include file paths from the default site definitions as well as our custom site definitions and  rename the WSSUpgrade.xml so it would not be read by the migration engine. Since the WebTemplateID was the same in both files, the custom one took precedence and the default was never used for mappings.

February 15, 2008 11:25 AM

Leave a Comment

(required )  
(optional )
(required )  
Add

Need SharePoint Training? Attend a SharePoint Bootcamp!

Posts (c) their respective authors. Everything else (c) 2007 SharePoint Experts