Mixing JSF and JSTL is often a recipe for trouble. I normally get this message when I've updated a JSF page definition and am trying to refresh it, but the cause is the same. Generally speaking, it means that the last display of the page doesn't match what you're currently attempting to output and the internal structure management is confused.
Normally the best way to enable/disable display of a JSF element is to use the "rendered" attribute, but I'm not sure if that applies to columns and I'm too lazy to read the manual. If that doesn't work, however, you should be able to create logic to insert the column definition dynamically as needed.
An IDE is no substitute for an Intelligent Developer.
Joined: Apr 17, 2009
The Problem Solved by using <f:verbatim> as the following: