SharePoint Custom List template missing

Working on a project recently, we’re provisioning about 15 list templates as part of our SharePoint publishing solution.  There had been a mix-up with the “Type” Id used for the ListTemplates within the XML definition – can you spot a mistake ?

<List xmlns="http://schemas.microsoft.com/sharepoint/" BaseType="0" DefaultItemOpen="0" Direction="none" DisableAttachments="False" DraftVersionVisibility="0" EnableContentTypes="True" FolderCreation="True" Name="Comments" OrderedList="False" QuickLaunchUrl="False" Title="Comments" Type="113" VersioningEnabled="False" Url="Lists/Comments" Id="e3183ba9-0b61-42dd-8ff8-f12eb3bc2d62">

We had inadvertently ‘overwritten’ some of the OOTB SharePoint list templates.  Not actually written over the files on disk, but hi-jacking the Types – from 100, 101, 102 – up to 115 – and we had a multitude of problems.

One of the worst culprits had a symptom of the “Add Web Part page” being empty – none of our custom webparts were listed. 

And it turned out we had a List Template with the same TypeId as the “Web Part Gallery” – yikes.

This post details all the SharePoint base List Type Id’s – and made us realise what we needed to fix – the lesson is “avoid these numbers”.

We’d eradicated most of our problems by changing the TypeId’s in the feature.xml – starting at 1000, and deleting / re-activating, etc – but one problem remained.

Within the ‘Create List’ page, there is no “CUSTOM LIST” shown.   This is kinda bad don’t you think !?  

Has document libraries, etc – just not the normal “title only” custom list.   Dammit.

We found a way to ‘bring it back’ – from a look at another dev machine, which HAS the Custom List.

When hovering over the list template :

image

Have a look at the URL :

image

The FeatureId corresponds to the list template that can be found in the following directory :

C:Program FilesCommon FilesMicrosoft SharedWeb Server Extensions12TEMPLATEFEATURESCustomListFeature.xml

image

And – if we look at the Element Manifest :

image

You can see – there’s the Type=100 list, and whoops – we’d overwritten it.

So – because it’s actually just a feature, we just thought “I wonder if we could just re-activate it ??!”

Here’s the command we tried :

stsadm -o activatefeature -id 00BFEA71-DE22-43B2-A848-C05709900100  -url http://servername –force

And yep – the custom list is back !    *phew*

Hopefully that’s a useful tip for some folk. 

Of course, the best option is NOT to have ListTemplate’s with overlapping Type’s (with SharePoint OOTB ones).

🙂

I was using a codeplex tool (SPSource) to generate the feature/s – this was acknowledged as a bug, and is to be fixed in the next release (soon)

Advertisements

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 )

Twitter picture

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

Facebook photo

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

Google+ photo

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

Connecting to %s