Click here to Skip to main content
12,944,138 members (53,915 online)
Click here to Skip to main content
Add your own
alternative version

Tagged as


1 bookmarked
Posted 15 Apr 2014

TF400917: The current configuration is not valid for this feature. This feature cannot be used until you correct the configuration.

, 15 Apr 2014 CPOL
Rate this:
Please Sign up or sign in to vote.
TF400917: The Current Configuration Is Not Valid for this Feature. This feature cannot be used until you correct the configuration.

UPDATE: This has been identified as a bug and will be fixed in the next release for on-premise.

So if you have a lot of customizations in your process template, there is a slight chance that you would have seen the error below after the upgrade.


If you have completed the Configure Features option...


and still see the error, odds are you will need to follow similar steps to the ones given below.

Look for the Actual Exception

Take a look at the event log under the Microsoft-Team Foundation Server/Debug section of Applications and Services Log.


When the error occurs, do you see an error? I received the error below that pointed towards something with the add panel being wrong.

Object reference not set to an instance of an object. ---> System.NullReferenceException: 
Object reference not set to an instance of an object.
   at Microsoft.TeamFoundation.Server.WebAccess.WorkItemTracking.
   (String workItemTypeName, String fieldReferenceName)
   at Microsoft.TeamFoundation.Server.WebAccess.WorkItemTracking.Common.ProcessSettingsValidator.<>
   c__DisplayClass4b.<>c__DisplayClass4f.<ValidateAddPanels>b__41(String type)
   at System.Linq.Enumerable.Any[TSource](IEnumerable`1 source, Func`2 predicate)
   at Microsoft.TeamFoundation.Server.WebAccess.WorkItemTracking.Common.ProcessSettingsValidator.<>
   c__DisplayClass4b.<ValidateAddPanels>b__40(String refName)
   at System.Linq.Enumerable.WhereEnumerableIterator`1.MoveNext()
   at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
   at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
   at Microsoft.TeamFoundation.Server.WebAccess.WorkItemTracking.
   Common.ProcessSettingsValidator.<font style="background-color: #ffff00">ValidateAddPanels</font>()
   at Microsoft.TeamFoundation.Server.WebAccess.WorkItemTracking.
   (OptionalFeatures featuresToValidate)
   at Microsoft.TeamFoundation.Server.WebAccess.WorkItemTracking.
   (OptionalFeatures featuresToValidate, Boolean validateStructureOnly)
   --- End of inner exception stack trace ---
   at Microsoft.TeamFoundation.Server.WebAccess.WorkItemTracking.Common.
   (OptionalFeatures featuresToValidate, Boolean validateStructureOnly)
   at Microsoft.TeamFoundation.Server.WebAccess.WorkItemTracking.Common.
   (TeamFoundationRequestContext requestContext, ProjectProcessConfiguration settings, 
   String projectUri, 
   Boolean correctWarnings, OptionalFeatures featuresToValidate)
   at Microsoft.TeamFoundation.Server.WebAccess.WorkItemTracking.
   (TeamFoundationRequestContext requestContext, String projectUri, 
   Boolean validate, Boolean bypassCache)
   at Microsoft.TeamFoundation.Server.WebAccess.WorkItemTracking.
   (TeamFoundationRequestContext requestContext, String projectUri, Boolean validateSettings)
   at Microsoft.TeamFoundation.Server.WebAccess.Agile.AgileAreaRegistration.CanDisplayTiles
   (TfsWebContext webContext)

Find the Problem

I went over to the process configuration which seemed to be the logical starting point based off the error on screen and stack trace from the event log. I compared all the customizations I had with what is in the default Scrum 2013.2 template and saw that I had extra fields in one of my Add Panels.


I removed these and imported the ProcessConfiguration.xml using the witAdmin importprocessconfig tool, this worked and the site was working as normal without the error.

Fix the Problem

Obviously, we couldn't just remove the extra fields and be on our way because those were there for a reason. The Add Panel changes were applied for the Requirements Backlog in our case. We took a look at the Categories.xml to verify which the work item types were that were part of the requirements and found the 4 below:


We currently only use new Product Backlog Items and the other 3 are "old" work item types that are in TFS because we used to use them and don't want to remove them because there are existing work items of this type in our TFS project. So we went to the 3 other WITd and made sure that they each had these 3 fields, we found as we expected that they didn't have each of them.

After adding the fields, we re-imported the WITd for all requirement types and then tried to import the ProcessConfiguration.xml and it imported without any issues and our TFS was working again without any errors.

What Happened Then?

Before the update, we were obviously using this template so everything used to work, although I must admit it makes more sense that all WITds need the fields being displayed in the Add Panel for its categories, it used to not be the case so after upgrading, this was a rather unusual error for us. It could possibly have been looked at as a bug here this wasn't required to match. If I find out the reason for the change, I'll update here. Smile


This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


About the Author

Gordon Beeming (RSA)
Software Developer Nologo Studios
South Africa South Africa
Gordon Beeming works at Nologo Studios in the sunny city of Durban, South Africa. His current focus is on Devloper Efficiencies and R&D. When he's not hacking away at a keyboard in Visual Studio he'll generally be relaxing with his family or hitting the black top getting in some mileage. He is a Visual Studio ALM Rangers, Visual Studio ALM MVP.

You may also be interested in...

Comments and Discussions

-- There are no messages in this forum --
Permalink | Advertise | Privacy | Terms of Use | Mobile
Web01 | 2.8.170518.1 | Last Updated 16 Apr 2014
Article Copyright 2014 by Gordon Beeming (RSA)
Everything else Copyright © CodeProject, 1999-2017
Layout: fixed | fluid