I have some questions. These are :
From Browser/Client perspective
JSP and JSF both looks same, As Per Application Requirements goes, JSP is more suited for request - response based applications.
JSF is targetted for richer event based Web applications. I see event as much more granular than request/response.
From Server Perspective
JSP page is converted to servlet, and it has only minimal behaviour.
JSF page is converted to components tree(by specialized FacesServlet) and it follows component lifecycle defined by spec.