Here's one way:
http://myfaces.apache.org/tomahawk/extDataTable.html However, if you want a true Windows "drag around the columns" functionality, you really need an AJAX component, since without client-side JavaScript, you can't drag stuff around a browser window.
There are some AJAX
JSF components under development, but I'm not up to date on how mature they are.
The secret of how to be miserable is to constantly expect things are going to happen the way that they are "supposed" to happen.
You can have faith, which carries the understanding that you may be disappointed. Then there's being a willfully-blind idiot, which virtually guarantees it.