As far as I know, even in JSF 2.0 its all server side. So for client side validation you either have to roll your own or find a suitable js library. I rolled my own for a company years ago and haven't found anything better than what we developed because you want a full featured client side js framework to be able to provide the following.
1) color the offending inputs
2) provide popups next to the inputs upon focus to tell what the problem is
3) validate all inputs at the same time so the user doesn't get that annoying "I'll only tell you one problem at a time behavior"
5) Unlimited custom logic
6) Built in date logic
Actually, based on my experience, client-side validation for many things can end up so messy that I found it easier to use server-side validation with AJAX.
Sometimes the only way things ever got fixed is because people became uncomfortable.
Everybody's invited. Even this tiny ad:
Free, earth friendly heat - from the CodeRanch trailboss