Just to clarify, it isn't required that you deploy JSF 2 applications to a
Java EE application server, but it is the recommended approach. Note that JSF 2 will run fine on a
servlet container (
Tomcat, Jetty), it just requires a couple more steps to setup. Cay puts it into perspective in his blog:
http://weblogs.java.net/blog/cayhorstmann/archive/2009/12/29/jsf-20-and-tomcat