Cara não conheço VRaptor!
Struts usei pouco na pós-graduação q to fazendo, é bem poderoso, tem ótima documentação, muito utilizado!
JSF uso diariamente, muito poderoso, modelo de desenvolvimento bem simples tb, e se tornou padrão!
Todos os frameworks terão seus prós e contras e sua curva de aprendizado, vai de vc estudar um pouco de cada e ver a qual vc se adapta melhor, mas todos os citados são muito bons, vc está no caminho!
é então. Acho que o melhor seria tentar aprender um pouco de cada mesmo.
Vou tomar um caminho do VRaptor por ser mais fácil de aprender e de desenvolver e que no momento acho o mais adequado, pois estou me formando e estudando pra SCJP 6. Ai tem monografia, livro da certificação e com um Struts e JSF que são um pouco mais complexos de se entender, ficaria meio pesado.
Vou pegar um sistema aqui da empresa do meu pai de café e tentar passa-lo para web. Assim vou estudando o VRaptor e em seguida vou para os outros dois: Struts e JSF.
Trabalhei um ano com struts e não gostei, trabalhei com outro framework e não gostei também. Depois peguei rails, gostei muito. E agora voltei para web com Java (pasei um tempo apenas com swing) usando JSF e estou achando interessante.
Como o Ricardo disse, o Struts é o mais famoso e no caso do Struts 1, eu acho que ainda é o mais usado (devido a grande quantidade de projetos legados, eu mesmo estou engajado em 2 com struts 1). Certamente o VRaptor é o mais fácil entre eles e o mais gostoso de trabalhar, porém se você pensa NO MERCADO, aconselho você começar com Struts 2 (olhar ocm carinho o Struts 1 também) e JSF.
Caso seja um projeto pessoal, onde o time é pequeno e tenha vontade de aprender coisas novas, eu aconselho o VRaptor mesmo (sem descartar um outro projeto brasuca, Mentawai).