Skip to main content

Three tier #projectserver and custom project site creation failure

Scenario:
1x WFE
1x APP
1x SQL

Web Front End Service on WFE
Project Server enabled on APP

so a traditional 3tier scenario.  nothing complicated

When deploying new Web features to the Farm, you are unable to create a Project Site based on a custom template.

Error:
Microsoft.SharePoint.SPException: The site template requires that the Feature {17843394-988a-4a4e-9d5e-8b419bdc1340} be installed in the farm or site collection

Now we know this IS enabled at the SC level.  Only un-installing these features enables the site provisioning to successfully complete.  Redeploying and enabling these features then breaks it again

Cause:
Well... it turns out the features are required on the server where Project Server is enabled.
as these are site features, that means you have two options
1) enable the Web Front end service on the App Server - which seems like a crazy thing to do to me
2) copy the features from /15/Template/Features from WFE to APP - again, mad mad mad.  Why should you need file system coping?

Anyway, option 1 did resolve the problem and I believe option 2 would also.  But surely neither of these solutions is a real world fix


General
·         CreateWssSiteContent: Creating project site failed! Project Uid=448aa1e5-5e07-e411-9430-005056010737, site URL=http://siteaddress - activated feature at PWA level, site name=site address activated feature at PWA level. Microsoft.SharePoint.SPException: The site template requires that the Feature {17843394-988a-4a4e-9d5e-8b419bdc1340} be installed in the farm or site collection. at Microsoft.SharePoint.Utilities.SPUtility.ThrowSPExceptionWithTraceTag(UInt32 tagId, ULSCat traceCategory, String resourceId, Object[] resourceArgs) at Microsoft.SharePoint.SPWebTemplateElement.VerifyFeatures(XmlNodeList xmlNodeFeatures, SPWeb applyTemplateToThisWeb, SPFeatureScope featureScope, SPFeatureDependencyErrorBehavior featureDependencyErrorBehavior, List`1& featureDependencyErrors) at Microsoft.SharePoint.SPWebTemplateElement.VerifyFeaturesInWebTemplate(SPWeb applyTemplateToThisWeb, SPFeatureDependencyErrorBehavior featureDependencyErrorBehavior, ICollection`1& featureDependencyErrors) at Microsoft.SharePoint.SPWeb.LoadFeatureWebTemplateContent(SPFeatureWebTemplate featureWebTemplate, SPFeatureDependencyErrorBehavior featureDependencyErrorBehavior, ICollection`1& featureDependencyErrors) at Microsoft.SharePoint.SPWeb.ProvisionWebTemplate(SPWebTemplate webTemplate, String webTemplateToUse, SPFeatureWebTemplate featureWebTemplate, Page page, SPFeatureDependencyErrorBehavior featureDependencyErrorBehavior, ICollection`1& featureDependencyErrors) at Microsoft.SharePoint.SPWeb.ApplyWebTemplate(SPWebTemplate webTemplate, Page page, SPFeatureDependencyErrorBehavior featureDependencyErrorBehavior, ICollection`1& featureDependencyErrors) at Microsoft.SharePoint.SPSite.CreateWeb(String strUrl, String strTitle, String strDescription, UInt32 nLCID, String strWebTemplate, Boolean bCreateUniqueSubweb, Boolean bConvertIfThere, Guid webId, Guid rootFolderId, Boolean createSystemCatalogs, Guid appInstanceId, String appWebDomainId) at Microsoft.SharePoint.SPSite.SPWebCollectionProvider.CreateWeb(String strWebUrl, String strTitle, String strDescription, UInt32 nLCID, String strWebTemplate, Boolean bCreateUniqueSubweb, Boolean bConvertIfThere, Guid appInstanceId) at Microsoft.SharePoint.SPWebCollection.Add(String strWebUrl, String strTitle, String strDescription, UInt32 nLCID, String strWebTemplate, Boolean useUniquePermissions, Boolean bConvertIfThere, Guid appInstanceId) at Microsoft.Office.Project.Server.BusinessLayer.AdminProjectSiteAllocator.CreateSPWeb(ProjectSiteConfigurationInfo configInfo, SPSite topSite):

·         WSSCreateSiteFailure (16400). Details: id='16400' name='WSSCreateSiteFailure' uid='b7860ae6-5e07-e411-942f-0050560104c8' projectUID='448aa1e5-5e07-e411-9430-005056010737' workspaceUrl=siteaddresst - activated feature at PWA level/sitename- activated feature at PWA level' projectWorkspaceName='sitename - activated feature at PWA level'. 


Comments

Popular posts from this blog

Restoring PWA Site to another Web App in the same Farm

The scenario is this: SharePoint 2016 Farm with Project Server Two Web Apps Development UAT One PWA on Development Web App. I want to copy the PWA Site on Development web app to UAT to support a testing cycle. As far as I knew there were two options: 1) Content Database Restore and Attach Process would be backup your Dev Content Database, Restore to a new Content Database for QA, then mount the database on the appropriate web app and your off.... Problem:  Although you can do this with the -AssignNewDatabaseID switch in Powershell (to avoid two content db's having the same database id) the Site Collection (PWA) in the db still retains its SiteID which means there is a duplicate SiteID in the Configuration Database.  This stops the PWA site being created and alllocated correctly and becomes essentially orphaned. This method is only any good for MOVING not COPYING Back to the drawing board... 2) Backup-SPSite / Restore-SPSite I didn't believe this ...

SP2 released

Office Project Server 2007 Sp2 has now been released.  see the details here - http://blogs.msdn.com/chrisfie/archive/2009/04/28/announcing-service-pack-2-sp2-for-microsoft-project-2007-and-microsoft-project-server-2007.aspx .  see teh webcast here http://blogs.msdn.com/brismith/archive/2009/04/28/project-server-2007-service-pack-2-sp2-is-now-available.aspx Blogged with the Flock Browser

Reporting from Project Server 2016 - multiple sites and userviews

Just a quickie... I've been interested in how MS have handled the "multiple PWA sites in a Content DB" thing since I read that this was their new approach.  Most of my reporting is via SSRS so i am reliant (still... in 2016) on DB queries rather than OData feeds (tsk) and this "querying a PWA DB with more than one PWA site in it is unsupported" quote was worrying me. So it looks like what is happening is this. When you create the first PWA site in a Content DB it hard-codes the SiteID into the _Userview view design elements.  This means that your first PWA Site is the default.  All the data for subsequent sites are still held in the tables against separate SiteID's but you cannot utilise the OOTB _Userview components (see below) SELECT        ProjectFields.... FROM            pjrep.MSP_TVF_EpmProject('FF19B767-CA6D-4C4C-B123-C0B5AE5354D6') AS MSP_EpmProject  LEFT OUTER JOIN         ...