2009-07-23 8 views
6

J'ai créé une définition de site simple basée sur le portail de publication. Chaque fois que je souhaite utiliser le modèle pour créer une collection de sites, le message d'erreur suivant s'affiche:SharePoint SiteDefinitions

Le modèle que vous avez choisi n'est pas valide ou introuvable.

Je n'utilise aucune fonctionnalité personnalisée, seulement les fonctionnalités par défaut avec le portail de publication site-def. Des indices?

Il y a un journal d'erreur, mais il me donne juste les informations ci-dessus:

Applying template "PalfingerPlatformsOrderRoot#0" to web at URL "http://datsa0004:8080/Platforms/Orders/0000112233".  
Failed to get the site template for language 1031, search key 'PalfingerPlatformsOrderRoot'. This warning is expected when provisioning from a custom web template. 
Failed to apply template "PalfingerPlatformsOrderRoot#0" to web at URL "http://datsa0004:8080/Platforms/Orders/0000112233". 
Failed to apply template "PalfingerPlatformsOrderRoot#0" to web at URL "http://datsa0004:8080/Platforms/Orders/0000112233", error The template you have chosen is invalid or cannot be found. 0x81071e44  
The template you have chosen is invalid or cannot be found. 
CreatePortal failed creating portal webs. Microsoft.SharePoint.SPException: The template you have chosen is invalid or cannot be found. ---> System.Runtime.InteropServices.COMException (0x81071E44): The template you have chosen is invalid or cannot be found.  at Microsoft.SharePoint.Library.SPRequestInternalClass.ApplyWebTemplate(String bstrUrl, String& bstrWebTemplate, Int32& plWebTemplateId)  at Microsoft.SharePoint.Library.SPRequest.ApplyWebTemplate(String bstrUrl, String& bstrWebTemplate, Int32& plWebTemplateId)  --- End of inner exception stack trace ---  at Microsoft.SharePoint.Library.SPRequest.ApplyWebTemplate(String bstrUrl, String& bstrWebTemplate, Int32& plWebTemplateId)  at Microsoft.SharePoint.SPWeb.ApplyWebTemplate(String strWebTemplate)  at Microsoft.ShareP... 
...oint.Publishing.PortalProvisioningProvider.CreatePortal(String xmlFile, SPWeb rootWeb) 

Répondre

8

Vérifiez l'ID de votre modèle personnalisé, (ouvrez-le et affichez le fichier XML) il peut être en conflit avec un modèle existant. Vous pouvez vérifier

Program Files \ Common Files \ Microsoft Shared \ serveur web extensions \ 12 \ TEMPLATE \ 1033 \ XML

pour les autres modèles et leurs ID

+0

Ah! Une erreur stupide de copier-coller. J'ai créé une nouvelle définition de site basée sur un existant. Comme MS recommande l'ID était> 10000. Mais en fait les deux définitions de site ont utilisé la même plage 1000x. Pour site-def. avec le même ID 10001. Merci! – Henrik

+0

pas de problème, parfois la réponse est facile! – curtisk

+0

éditeurs tels que notepad ++ peuvent vous aider à localiser les modèles de site en conflit avec l'outil Rechercher dans les fichiers - recherchez simplement ID = "1000x" dans tous les fichiers XML sous% commonprogramfiles% \ Microsoft Shared \ extensions serveur Web \% SPVERSION% \ TEMPLATE \ % LCID% \ XML (notez que vous devrez peut-être substituer d'autres valeurs: 14 et 15 pour SharePoint 2010 et 2013, et un autre code de paramètres numériques, le cas échéant). – Alexey

1

Vérifiez les journaux de traces/journaux ULS dans la ruche 12 - il y a certainement plus d'informations sur votre erreur là-dedans.

3

j'avais le même problème et il s'est avéré qu'il était dû à une fonctionnalité qui a été désinstallée dans le serveur.

Cette fonctionnalité était incluse dans le fichier modèle à activer. J'ai découvert cela en examinant le fichier modèle (.STP) et en regardant le nœud WebFeatures. Les fonctionnalités sont identifiées par leurs GUID, j'ai donc dû les rechercher une par une dans le dossier Templates jusqu'à ce que je découvre lequel était réellement désinstallé dans le système.

Cette fonctionnalité a été installée dans le système au moment de la création du modèle, puis a été désinstallée. Après cela, il était impossible de créer des éléments avec le modèle donné (et le message d'erreur Sharepoint n'était pas très clair sur la vraie raison). Après l'installation de la fonctionnalité (stsadm -o installfeature ...), tout a commencé à fonctionner.