Bom, isso não é uma pergunta sobre qual o melhor. Como já não mecho com JSP tem um tempo não estou muito por dentro de como andam as coisas.
Para um projeto estou com dificuldades no JSF, principalmente para integrar javascript no sistema (eu sei que JSF trabalha com js mas é uma api interna que densevolvi que está dando problemas).
Bom, dá pra partir de novo para o JSP sem correr o risco de estar trabalhando com algo obsoleto?
Se for falar de JSP quando começou, com Scriptlets e aqueles usebean e similares, sim, está bem obsoleto. Já faz muito tempo que dá pra usar JSTL e EL na JSP dando pra programar a UI de forma bem razoavel, isso sem falar de AJAX. Tem gente que gosta de usar velocity, freemaker e etc.
Mas JSP usando JSTL + EL + Displaytag (me salvou muitas vezes) ainda é muito usado.