JSF2 can be used as backend and as frontend, and also it have better dependency injection, navigation and validation than Spring MVC.
Spring itself can be used as enterprise framework instead EJB3.1/EJB3.1 better/, but as frontend JSF2 with primefaces have not alternatives.