Qual framework usar ? Struts, JSF ou WebWork

40 respostas
P

Bom dia pessoal,
Até o presente momento eu ainda estou usando struts para o meu projeto, e sei q o struts foi um dos primeiros frameworks e é um dos mais populares no mercados. Porém, sei q existe diversas falhas e beneficios…
A minha dúvida é q hj esta aparecendo diversos frameworks no mercado, livre e pagos e todos prometem resolver todos os problemas…
O q eu andei observando em alguns foruns foi q existe uma grandes criticas sobre o struts devido ao grande numero de problemas q ele acaba gerando e ao inves de ajudar acaba atrapalhando…
A grande dúvida seria sobre 2 frameworks q tenho notado um grande crescimento (jsf e webwork). No momento estou dando uma olhada no jsf para ver seu comportamento e posso dizer q gostei bastande pois consigo ver as coisas com bastante clareza. Claro q vi apenas o básico, naum sei dizer como ele funcionaria com o tiles, se existe algo semelhante ao validator do struts q na minha opinião deixou bastante a desejar… Notei q da pra fazer um grande reuso de código inclusive criar diversas tags personalizadas mas o problema real é quando eu tiver alguma dúvida, pois comparado ao struts existe muito poucas referencias para consultas na web…
Quanto ao webwork naum sei nada a respeito, sei q existe alguns materiais na web e mais nada…
O problema todos é que preciso de algo bastante completo, naum quero ficar perdendo muito tempo refazendo as coisas sem necessidade e criar tags q possam ser usadas por mim e pelos as outras pessoas q desenvolvem comigo, preciso de algo q realmente seja util para projetos pequenos e grades…
Fico muito grato pela atenção e aguardo algumas opiniões a respeito do assunto…
Atenciosamente,

Marco Paradiso

40 Respostas

pcalcado

Olá, Marco,

Esse assunto já foi discutido ad nauseum aqui, tetna fazer uma busca :wink:

saoj

Dá uma olhada descomprometida no Mentawai (http://mentawai.lohis.com.br/) e veja se te agrada…

P

Realmente eu sei q já foi bastante discutido, mas a questão q naum se chegou a nenhuma conclusão comcreta as coisa foram ditas na minha opinião q é ruim e é bom pq é…
A questão seria o diferencial q cada um possui q o torne algo q faça a diferença na hora de desenvolver…

Thiago_Senna

Tem um livro que diz mais ou menos assim…

Se você estiver em um projeto comercial, utilize Struts, pois ele possui uma documentação bastante completa, é mais fácil achar mão de obra, e muitas empresas o usam!

Se é um projeto que vc quer aprender, fazer bém feito, usando boas práticas de programação, onde não existe um compromisso comercial, use WebWork!

Antes que me venham com pauladas, quero dizer que não concordo com esta colocação. É chato a forma como as empresas tem medo de arriscar com o webwork, por isso optam por Struts. Na maioria das vezes o pessoal nem conhece o webwork.

Bom, é um tema difícil, mas boa sorte!

Thiago Senna

Jair_Rillo_Junior

paradiso:
Realmente eu sei q já foi bastante discutido, mas a questão q naum se chegou a nenhuma conclusão comcreta as coisa foram ditas na minha opinião q é ruim e é bom pq é…
A questão seria o diferencial q cada um possui q o torne algo q faça a diferença na hora de desenvolver…

Acho que você poderia testar todos e tirar sua própria conclusão :wink: . Se você já conhece o Struts, aprender o Webwork é fácil fácil, porque a idéia do WW é tornar um framework mais simples e flexivel. Realmente a parte de documentação dele nao é tão extensa como do Struts, mas qualquer dúvida mais “cabulosa” você pode postar no fórum do WW e na grande maioria dos casos os próprios desenvolvedores irão responder pra voce (e de forma muito rapida). Só mais uma coisa para a suas pesquisas. Se você quer tentar substituir o conjunto Struts/Tiles, você deve testar o conjunto Webwork/Sitemash

Está ae uma dica :wink:

pcalcado

paradiso:
Realmente eu sei q já foi bastante discutido, mas a questão q naum se chegou a nenhuma conclusão comcreta as coisa foram ditas na minha opinião q é ruim e é bom pq é…
A questão seria o diferencial q cada um possui q o torne algo q faça a diferença na hora de desenvolver…

Já pensou que pode nãoe xistir nenhuma conclusão a ser tomada? :wink:

Bem, experimente todos, escolha o que gostar.

Shoes

P

Nesse ponto concordo com vc… as pessoas fazem muita resistencia ao q é novo… até hj naum sei dizer como o hibernate foi bem aceito…
Sobre a documentação, realmente o struts naum deixa nada a desejar (tb ele está acho q a 5 anos no mercado…), mas quando algo é bastante completo e claro na forma de usar naum precisa ficar quebrando muito a cabeça…
Ainda naum tive tempo pra olhar o webwork, mas li algumas coisa a respeito e só ouvi elogios… o jsf é ainda uma questão a ser levantada, achei bacana, clarona usabilidade e fácil, porém a parte de componentes ainda naum vi… espero q todos os recursos ele possui sejam realmente util…
Caso vc tenha algum link com um bom material sobre webwork, me disponibiliza para q eu possa dar uma olhada…

Jair_Rillo_Junior

Página oficial http://www.opensymphony.com/webwork/

Artigos em Portugues voce pode achar aqui no prórpio GUJ.

AHHH, o SiteMesh tb é do mesmo grupo do Webwork http://www.opensymphony.com/sitemesh/

P

Sei q é dificil tomar uma decisão para terceiros mas se alguem q já tenha usado outros frameworks me passarem as vantagem e benficios fico bastante grato…

_fs

webwork \o/

P

Poxa pessoal, pelo o q estou vendo realmente o webwork é bastante simples e completo… fico até feliz pelas resposta postadas…
Mas enquanto ao jsf ??? alguem teria alguma opinião a respeito ??? tem uns 2 dias q estou mechendo e achei muito simples comparado ao strus, mas naum sei como ele vai se comportar qdo houver necessidade de fazer coisas muito pequenas e muito grandes…

Kleber_Santos

É Thiago Senna, verdade, o povo desconhece o webwork pq ninguem usa “modo de dizer”.
As empresas não arriscam pq a certeza de vai dar certo é vaga na visão deles.

:frowning:

J2Alex

Ou que tal Webwork/Freemarker… show! :smiley:

Jair_Rillo_Junior

Ou que tal Webwork/Freemarker… show! :smiley:

É que o sitemesh tem um propósito parecido com o Tiles… O Freemaker tem um propósito de templates, mais parecido com o Velocity, mas foi bem lembrado (apesar de eu gostar mais do Velocity)

Você pode estudar o conjunto, Webwork/Freemaker ou Velocity/Sitemesh :wink:

Thiago_Senna

Olá Paradiso!

Quanto ao JSF, confesso que não conheço bém essa coisa! :mrgreen:

Mas viu, a esolha é sua. A quem aposte em JSF. Pode ser até que ele venha realmente a substituir o Struts, mas e daí???

Veja bém, se existe algo mais simples q você possa utilizar e que resolvar o seu problema, para quê JSF??? A proposta do JSF é de certa forma ser meio bombril, faz de tudo. E provavelmente vc não precisa de tudo que ele oferece.

Como citado pelos GUJ’s nos tópicos acima, WebWork e Sitemesh já são ferramentas para pau a toda obra.

Não se deixe influenciar por esse monte de perfumaria que eles colocar dentros destas tecnologias. Opte por algo simples, suficiente e fácil de testar!

Já que é para puxar sardinha para um framework, vou puxar para o webwork. É simples, fácil de aprender e fácil de se criar testes.

Abraços!
Thiago

Mauricio_Linhares

Eu uso e adoro o Struts, estou tentando começar a usar o WebWork (mas a documentação não ajuda nem um pouco), mas se eu fosse começar uma nova aplicação web hoje, nem pensaria duas vezes, usaria o Spring MVC na cabeça.

Primeiro porque ele vem com o Spring, que já vai trazer integração com uma dúzia de coisas como aspectos, acesso a bancos de dados e mapeamento objeto/relacional, documentação nota 10 (só não é melhor do que a do Struts), controle declarativo de transações, e é claro, o mais importante, o container de inversão de controle que o Spring é.

A comunidade já é muito grande e ele já está mostrando a que veio, é só dar uma olhada nessa notícia no TheServerSide:

http://www.theserverside.com/news/thread.tss?thread_id=33576

Rodrigo_Carvalho_Aul

Sobre JSF concordo com quase tudo isso aqui

Quando eu tiver tempo quero dar uma olhada nisso pra ver se presta.

Pra estudar, dá uma olhada no AppFuse. É um mesmo projeto implementado várias vezes com combinações de frameworks diferentes.

Eu continou achando o Spring o melhor, seguido de perto pelo WebWork.

[]'s

saoj

Qual a diferença entre ter muita gente no mercado que sabe Struts e ter pouca gente no mercado que não sabe XXXXXXXX, se é fácil dominar XXXXXXXX ???

Não é fácil dominar Struts.

Não é fácil dominar WebWork.

Não é fácil dominar JSF.

[color=blue]É fácil dominar XXXXXXXX!

Então eu prefiro o XXXXXXXX !!![/color]

Mauricio_Linhares

Se programar fosse fácil Sérgio, todo mundo programava.

Acho que cada um se identifica com o que gosta, tem um amigo meu que adora programar em assembly e C, eu tenho horror até a C++, imagina C!

Acho que saber é mais uma questão de gosto do que de qualquer outra coisa.

L

Olá!!!

Minha vivência não vem de muito tempo no Java, mas pelo tempo que venho trabalhando, passei pelo Struts, Webwork e atualmente JSF.

De longe prefiro Webwork, simples, direto e sem burocracia!!!

As experiências que tive com Struts foram legais no início, mas depois tudo se tornou o caos… configurações e mais configurações, um pé no saco…

O JSF anda pelo mesmo caminho… isso dá muita dor de cabeça…

Em casa, tenho a oportunidade de tocar meus projetos com Webwork em conjunto com o Velocity, um casamento show de bola.

Mas como foi dito, vai de cada um… então analise cada umas das opções e faça a sua escolha…

Kleber_Santos

Qual a diferença entre ter muita gente no mercado que sabe Struts e ter pouca gente no mercado que não sabe XXXXXXXX, se é fácil dominar XXXXXXXX ???

Não é fácil dominar Struts.

Não é fácil dominar WebWork.

Não é fácil dominar JSF.

putz, saoj, se fosse pra dominar tudo eu ja estava em outro planeta…

Marte?.. brincaderinha…

:mrgreen:

saoj

Concordo contigo. Mas facilidade não é algo subjetivo.

É de aceitação geral que C++ é 10 vezes mais difícil que Java. O fato de haver pessoas que dominem C++ não influi nessa questão.

Quando a coisa é difícil, as pessoas são obrigadas a investir tempo para dominá-las, o que cria uma simbiose.

Chegar para um cara que investiu tempo para dominar o Struts e falar mude para XXXXXX é difícil!

Quanto menor a curva de aprendizado das coisas, mais liberdade as pessoas têm.

Vejo muita gente (mesmo!) reclamando do Struts. Não sei se porque o Struts é ruim ou porque é difícil de dominar. Eu acho C++ um lixo, mas tenho ciência que isso se deve simplesmente ao fato de eu não dominar C++.

Para concluir: se é simples o risco é baixo, não há simbiose e eu tenho a liberdade de abandonar aquilo se assim eu desejar. Criar padrões de mercado vai contra a evolução natural das coisas. Tudo que é padrão é perigoso, pois força as pessoas a utilizá-los em qualquer situação, mesmo que aquilo já esteja ultrapassado.

Mauricio_Linhares

Se é simples demais termina não fazendo nada…

(OBS: Maurício, apaguei sem querer tua mensagem. Se quiser edite isso e ajeite essa minha cagada. :oops: )

Kleber_Santos

saoj,

liberdade de mudanças e ir contra os padrões para “melhorar” issu é muito bomm, é d+

Kleber_Santos

Marcelo Linhares,

Vero… conheço casos de pessoas q se assustaram por casa isso…

:-o

Mauricio_Linhares

Marcelo Linhares,

Vero… conheço casos de pessoas q se assustaram por casa isso…

:-o

Cara, já é a segunda vez…

é Maurício Linhares :mrgreen:

Kleber_Santos

Maurício Linhares,

Desculpa … cismei com Marcelo…sorry

Posso chama-lo de Linhares… sou limitado

:cry:

saoj

Discordo totalmente nesse ponto! :smiley: :smiley: :smiley: :smiley:

Java é uma linguagem simples demais e consegue fazer tudo, não é ??? Como ???

Ser simples não é necessariamente pouco poderoso. E nem tudo que é poderoso é necessariamente complexo !!!

A beleza está na simplicidade!

Kleber_Santos

saoj,

Por isso q eu uso…

:mrgreen:

Mauricio_Linhares

saoj:
“Maurício”:

Se é simples demais termina não fazendo nada…

Discordo totalmente nesse ponto! :smiley: :smiley: :smiley: :smiley:

Java é uma linguagem simples demais e consegue fazer tudo, não é ??? Como ???

Ser simples não é necessariamente pouco poderoso. E nem tudo que é poderoso é necessariamente complexo !!!

A beleza está na simplicidade!

Tanto não fazia tudo que colocaram Generics… e os aspectos trazem a famosa “herança múltipla”… e mais algumas coisinhas que eu gostaria que Java tivesse e ainda não tem (como as properties…).

Mas toda generalização é burra e eu generalizei -1 pra mim :mrgreen:

PS: o do post é normal, é porque o botão de editar fica do lado do de citar, já passei por isso uma vez, você se acostuma :lol:

Mauricio_Linhares

Kleber Santos:
Maurício Linhares,

Desculpa … cismei com Marcelo…sorry

Posso chama-lo de Linhares… sou limitado

:cry:

Pode, só não chame de Marcelo, porque eu to com um problema (eu e o resto da minha sala) com um professor que se chama Marcelo, aí já viu né… :smiley:

Kleber_Santos

ok, amigão, beleza…

Sobrenome é mais facil

:mrgreen:

Alexandre_Vilas_Boas

Marcelo Linhares,

Vero… conheço casos de pessoas q se assustaram por casa isso…

:-o

Cara, já é a segunda vez…

é Maurício Linhares :mrgreen:

Java eh case sensitive e os que trabalham com ele tb :mrgreen:

Kleber_Santos

Xandu,

coisas faceis nao consigo fazer
coisas dificies piorou ainda

:roll:

brincadeirinha… vamos postar soluçõessss :mrgreen:

Thiago_Senna

Marcelo Linhares,

Vero… conheço casos de pessoas q se assustaram por casa isso…

:-o

Cara, já é a segunda vez…

é Maurício Linhares :mrgreen:

Java eh case sensitive e os que trabalham com ele tb :mrgreen:

Nossa… nessa você foi profundo!!!

saoj

Tem razão nesse ponto!

Mas veja que colocaram isso sem te obrigar a usar, ou seja, não necessariamente complicaram a linguagem.

Imagina se vc fosse iniciante em Java e te apresentassem um código de Generics !!!

Vc ia dar mais uma olhada no C++. :slight_smile:

Kleber_Santos

foi mesmo, dentro da alma…

solucões povo… :evil:

kuchma

Voltando ao assunto original, se o colega estiver analisando seriamente o JSF, de uma olhadinha tambem no Tapestry. Parece que esta maduro e tem um povo usando. No TheServerSide sempre rola umas discussoes/comparacoes sobre ambos (procure por noticias/artigos sobre JSF). Tem tambem o Wicket que (dizem), segue a linha do Tapestry. Nao fiz nada decente com nenhum deles, entao nao posso opinar - quis apenas chamar atencao as outras opcoes.

Marcio Kuchma

Mauricio_Linhares

O Howard Lewis (criador do Tapestry) fez uma breve avaliação do Wicket e comentou sobre os planos futuros de criar um novo framework e deixou claro que se ele fizer isso, não vai ser em Java e sim em Ruby. Pelo jeito que ele falou do Tapestry e da incapacidade de fazer mudanças mais sérias no framework, eu acho que ele não está mais tão empolgado com isso não, eu não apostaria mais no Tapestry.

http://howardlewisship.com/blog/2005/06/wicket-10.html

C

coisas faceis nao consigo fazer
coisas dificies piorou ainda

Kleber, sua declaração me fez dar uma boa risada :lol: :lol: :lol: , mas gostei muito dela. Também não gosto de complexidade, gosto é de simplicidade.

E sou um daqueles que acredita que é possível unir simplicidade + produtividade + poder + boas práticas de programação

Com OO isso é possível. Por que não seria?

Um abraço!

Criado 24 de junho de 2005
Ultima resposta 25 de jun. de 2005
Respostas 40
Participantes 14