I find the easiest way to ensure all the columns are added to the list definition is to add them to a content type first.
You can still use different Java Script hacks (i.e.
The first part of this two part series discussed some of the problems with provisioning Share Point 2010 managed metadata fields.
This post will cover a robust method of deploying Share Point 2010 managed metadata columns in a way that avoids common errors and enables the columns to automatically show up in the search refinement panel.
I’ve also added in some additional error handling so we get informative messages if the metadata service and/or term set does not exist.
Note that if we are only creating a site column (or even a content type) this should work without completing the following steps.