Desvantagens de JSF

Olá pessoal, gostaria de saber quais as desvantagens de JSF pra por exemplo JSP+servlets ou mesmo PHP.

Uma vez um cara me disse que o JSF nao separa bem o controlador da view. É verdade isso?

Abraços
João Sávio

www.joaosavio.com

bom a grande vantagem do jsf é q ele é muito componentisavel, vc pode criar seus proprios componentes e reutiliza-los qnd bem entender, dessa forma fica facil quando vc quer agregar funcionalidades RIA em seus componentes jsf, ou usar uma pronta, richfaces, icefaces, primefaces … bom tem varios.

eu so meio suspeito pra falar de jsf, pq trabalho com ele :twisted:

mas acho q a grande desvantagem ta no aprendizado, ele tem uma api exclusiva, e é bem chatinho de aprender, mas nada impossivel…

no jsp + servlets, vc tem q fazer tudo na mao, e ainda vai usar de jstl, concerteza vai ter codigo java dentro do seus jsp, isso n é legal, procure nunca usar scriplets nas suas jsps .

enfim, entre fazer praticamente tudo na mao e ter uma ferramenta q me da muitos componentes prontos, porem customizaveis, eu fico com a segunda.

uma vantagem que eu acho que o jsf tem, é a legibilidade de codigo. fica bem mais organizado e simples de entender!!
e pra mim a desvantagem maior é o aprendizado como foi dito anteriormente mas é só uma questão de tempo e prática pra se entender a funcionalidade

Faz um código (uma página de login por exemplo) em PHP e outro em JSF e outro em JSP e Servlets e depois volta aqui e me diz qual você codificou mais :twisted:

Bem eu pessoalmente concordo com tudo que foi dito e ainda acrecentaria mais, como por exemplo a Orientação a Objeto do Java que é muito boa, já a do PHP 5 decha a desejar. Eu pessoalmete acho horrível.
No entanto se vc quer saber sobre quem é melhor acho que isso vai depnder do seu gosto e se todos querem saber quem é melhor ou quem é pior deve ser feito um estudo mais aprofundado com métricas para definir tal situação. Com tudo procurar ler relatos de amigos também é totalmente válido.

Bem, eu sei que JSF tem muitas vantagens, mas eu diria que algumas desvantagens são:

  • alguns componentes são caixas pretas que vc precisa adivinhar como trabalhar com elas.
  • Mudança de paradigma: para quem trabalhou muito tempo com os frameworks baseados em ações fica difícil mudar o pensamento

Espero que ninguém jogue pedra. É só minha opinião.

Abraço,

quais ?

acho muito dificil, geralmente so a documentação é mais do q suficiente …

mas qualquer framework pra mim tem componentes caixa preta…
rsrs

mas tudo se resolve com uma boa documentacao e estudo!

No tutorial de JSF do site Core Servlets, há uma excelente lista de desvantagens do JSF em comparação com a API de JSP e Servlets e com o Struts. Eu ainda acrescentaria a essa lista o fato de as requisições estarem amarradas ao método POST, não sendo possível usar GET, PUT, DELETE ou outros. A não ser, claro, que você utilize RESTFaces.

Não tem porque ninguém jogar pedra. O autor do tópico perguntou as desvantagens do framework - e elas existem. Esse não é o tópico de falar sobre as suas vantagens.

Não tem porque ninguém jogar pedra. O autor do tópico perguntou as desvantagens do framework - e elas existem. Esse não é o tópico de falar sobre as suas vantagens.[/quote]

Eu sei, mas vc reparou que ninguém havia citado uma desvantagem sequer antes de mim?

Na minha opinião, as principais são as seguintes:

  1. O ciclo de vida muito grande e adiciona muita complexidade.

  2. AJAX deveria ser transparente, próprio dos componentes.

  3. Ainda é baseado em páginas.

  4. Se me lembro bem, é chato vc derivar os componentes.

Ainda não montei um projeto em JSF, apenas estudei; então desculpem ai se falei @#$%@ gigante rsrsrs.

flws

Eu concordo com o andrepestana, ninguem ainda tinha citado desvantagens o que sempre existe. E se quiserem saber desvantagens do JSF em relação ao JSP posso dizer que se exisitir algum erro este só poderar ser corrigido com uma nova versão deixando vc preso. Já o JSP não, vc está livre e a aplicação ainda pode ficar mais rápida se for usada de maneira limpa sem nenhum outro framework apenas com JDBC.

Minhas sinceras opniões:

Os cliclos são os mesmo: Application, Session, Request, Page.

O uso da biblioteca A4J do RichFaces é excelente e bastante funcional.

Não entendi o problema aqui ??? Então não vou comentar…

É chato e desnecessário. Portanto aceitável.

Estou trabalhando com JSF há muito tempo e não tenho do que reclamar…já passei por struts, vraptor, seam e servlets. Não que eles sejam piores que o JSF, mas na minha opnião o JSF é mais produtível.

[]'s

Não confunda ciclo de vida da página JSF com escopo do Managed Bean. E mesmo assim, escopo de Page está previsto apenas para o JSF 2.0.

[quote]
tnaires wrote:

    andrepestana wrote:Espero que ninguém jogue pedra. É só minha opinião.


Não tem porque ninguém jogar pedra. O autor do tópico perguntou as desvantagens do framework - e elas existem. Esse não é o tópico de falar sobre as suas vantagens.

Eu sei, mas vc reparou que ninguém havia citado uma desvantagem sequer antes de mim?[/quote]

ta … n vo leva pro lado pessoal se naum vai virar flamewar …

[quote]Na minha opinião, as principais são as seguintes:

  1. O ciclo de vida muito grande e adiciona muita complexidade.

  2. AJAX deveria ser transparente, próprio dos componentes.

  3. Ainda é baseado em páginas.

  4. Se me lembro bem, é chato vc derivar os componentes.

Ainda não montei um projeto em JSF, apenas estudei; então desculpem ai se falei @#$%@ gigante rsrsrs.

flws[/quote]

o ciclo de vida é complexo, um pouco, mas n é muito grande.

concordo que o ajax deveria ser transparente, afinal de contas, os componentes do jsf n tem ajax, sendo necessario usar terceiros, como o richfaces.

ele é baseado em paginas pq é statefull(me corrijam se estiver errado!)

n vamos entrar em patterns, isso pode ser feito com qql framework…

é questao de gosto no final das contas…

Não confunda ciclo de vida da página JSF com escopo do Managed Bean. E mesmo assim, escopo de Page está previsto apenas para o JSF 2.0.[/quote]

Ah sim…ele estava se referindo aos ciclos de vida da página…foi mals…

Ainda sim acho que é ponto pro JSF que nos garante coisas como Validação e Conversão no java (e não no JavaScript) de uma forma programaticamnte fácil de se implementar.

http://www.roseindia.net/jsf/jsflifecycle.shtml

É verdade, mas não faz parte da arquitetura JSF.

P.S Gosto da idéia do JSF, quando for possível vou utiliza-lo em algum projeto por aqui.

flws

Possivelmente estou falando besteira, ainda não sei como confirmar ou não por isso tenho esta duvida se ela existe e se existir eh sim uma grande desvantagem.

Mas tenho a impressão de que todos os ManagerBean ou BackBean do seu projeto fica instanciado (após ser chamado a primeira vez), então se vc tiver um sistema com muitos ManagerBean sua aplicação vai comer memória com fome de leão!!!

Lembrando que o que estou falando eh o que eu acho, não verifiquei por não saber como fazer.

Abraço,

Marcelo Gomes

[quote=marcelogomesrp]Possivelmente estou falando besteira, ainda não sei como confirmar ou não por isso tenho esta duvida se ela existe e se existir eh sim uma grande desvantagem.

Mas tenho a impressão de que todos os ManagerBean ou BackBean do seu projeto fica instanciado (após ser chamado a primeira vez), então se vc tiver um sistema com muitos ManagerBean sua aplicação vai comer memória com fome de leão!!!

Lembrando que o que estou falando eh o que eu acho, não verifiquei por não saber como fazer.

Abraço,

Marcelo Gomes
[/quote]

Assim como acontece com as Servlets :wink: