[quote=Mitidiero][quote=alias][quote=Mitidiero][quote=alias][quote=Mitidiero]Eu recomendo começar pelo Use a Cabeça JSP & Servlets.
Salvo engano, minhas experiências com java pra web mostraram que jsp & servlets são a tecnologia mais ágil para web. JSF é uma das mais pesadas, eu mesmo não me sinto muito a vontade para utilizá-la.
Eu te recomendo começar pelo Use a Cabeça mesmo, desenvolver alguns projetos, e quando se sentir bem a vontade procurar algum framework, assim vc terá uma base da linguagem muito boa. Outra coisa legal pra aprender, é procurar projetos open source e contribuir pra eles.[/quote]
Programe em JSP e Servlets na mão, puro, e você verá o quanto é “ágil”. E não concordo que JSF seja “pesado”. Apenas é uma abordagem diferente do action-based, a qual não vejo nem como melhor nem como pior. Mas claro que é a minha opinião 
Mas para o colega do tópico, recomendo o estudo de JSP e Servlets pois eles são a base para tudo o mais que existe no desenvolvimento web com Java. Vai te dar uma base muito boa pra aprender frameworks, sejam action-based ou a especificação JSF.[/quote]
Creio que agilidade varia muito em relação a sua experiência. Eu percebi que pra mim JSF não rendia, e sou muito mais ágil usando JSP hoje.
É realmente questão de gosto, e também tudo depende da razão da aplicação, [/quote]
Concordo em absoluto, meu velho.
Mas aqui eu discordo, respeitosamente.
[/quote]
Por qual motivo? É que eu realmente vivo num meio que considera o JSF lento, aliás, sempre tive experiências ruins com o JSF, talvez esteja perdendo uma boa ferramenta. Já viu algum meio de utilizar o JSF e ser ágil tanto quanto o JSP nativo por exemplo?[/quote]
Na verdade, eu penso que o JSF é muito bom sim, mas sobre você estar “perdendo uma boa ferramenta” penso que o mais interessante seria eventualmente você se aprofundar mais no JSF para que, na pior das hipóteses, você tenha conhecimento sobre a ferramenta para dizer “não vou usar JSF, essa porcaria é uma merda, por causa disso, disso e disso, e eu sei o que eu estou falando”.
O JSF tem uma proposta, frameworks action-based tem outra, o mais importante é conhecer ambas as abordagens para saber o que se encaixa melhor no cenário que você precisar trabalhar.
Acho que o que voce se refere, do JSF ser “lento”, é pelo fato do JSF ser statefull, o que realmente foge do comportamento padrão do HTTP. Isso pode ser trabalhado/aperfeiçoado/melhorado no lado do servidor, mas é uma dorzinha de cabeça que de fato você nao precisaria se preocupar com outros frameworks. Eu particularmente acho a abordagem component-based interessante por considerá-la bastante intuitiva e mais simples para desenvolver interfaces complexas (que é onde eu penso que o JSF se encaixa melhor). Isto posto, não vejo impedimentos em desenvolver um e-commerce ou qualquer outra coisa com JSF, basta saber usar. Pra cada cenário existe uma solução, e as vezes o JSF pode ser bom, e as vezes, não. É isso.