10 motivos para preferir JSF

86 respostas
andgonca

Artigo interessante comparando JSF com Struts:

http://jroller.com/page/dgeary?entry=top_ten_reasons_to_prefer

[]´s

86 Respostas

Jair_Rillo_Junior

andgonca:

Artigo interessante comparando JSF com Struts:

http://jroller.com/page/dgeary?entry=top_ten_reasons_to_prefer

[]´s

Eu não conheço nada de JSF, mas me parece que dá para trabalhar com Struts e JSF juntos, será que não seria 1 melhor solução?

marcelomartins

andgonca:

Artigo interessante comparando JSF com Struts:

http://jroller.com/page/dgeary?entry=top_ten_reasons_to_prefer

[]´s


Legal, mas eu posso citar 100 motivos pra escolhar qualquer coisa no lugar do struts :slight_smile:

ricardolecheta

marcelomartins:
andgonca:

Artigo interessante comparando JSF com Struts:

http://jroller.com/page/dgeary?entry=top_ten_reasons_to_prefer

[]´s


Legal, mas eu posso citar 100 motivos pra escolhar qualquer coisa no lugar do struts :)

Já que vc falou, agora vamos colocar uma lenha na fogueira :mrgreen:

pode me dar apenas 10 motivos?

Thiago_Senna

Ricardo Choleta:
Já que vc falou, agora vamos colocar uma lenha na fogueira

pode me dar apenas 10 motivos?

Hummm… boa… bom, eu posso dar um bom motivo, e seria legal se a galera colocasse nos próximos posts abaixo os outros nove! :wink:

1 - É Difícil de testar! Existem frameworks onde não se precisa de um Mock sequer para testar uma action!

fmeyer

depois da guerra nuclear que acabara com o mundo como conhecemos … ainda vão sobrar as baratas, programadores .net e quem defende o struts :twisted:

C

Amigos,

Sou novo no grupo e em java tb, mas ja estive obtendo algumas informações sobre isso.
Um motivo muito forte para usar JSF é que o projeto Struts está parado e só serão feitas correções graves … ou seja releases urgentes mesmo.
Esta notícia veio direto da FONTE a qual estava na presente no JAVAONE.
[color=olive][/color]

fmeyer

cjbarata:
Amigos,

Sou novo no grupo e em java tb, mas ja estive obtendo algumas informações sobre isso.
Um motivo muito forte para usar JSF é que o projeto Struts está parado e só serão feitas correções graves … ou seja releases urgentes mesmo.
Esta notícia veio direto da FONTE a qual estava na presente no JAVAONE.

bem vinda

Bem … digamos que eu sei q o struts vai virar lenda muito antes do javaone
:mrgreen:

agora se vc estiver falando do javaone 2003 eu fico quieto :twisted:

marcelomartins

ricardolecheta:
marcelomartins:
andgonca:

Artigo interessante comparando JSF com Struts:

http://jroller.com/page/dgeary?entry=top_ten_reasons_to_prefer

[]´s


Legal, mas eu posso citar 100 motivos pra escolhar qualquer coisa no lugar do struts :)

Já que vc falou, agora vamos colocar uma lenha na fogueira :mrgreen:

pode me dar apenas 10 motivos?


Bem, qualquer coisa é melhor que o struts basicamente porque o struts só é melhor que nada, mas se o nada for qualquer coisa, ai já é melhor que o struts :).

[modo viajando on]
Coisas que são PIORES que programar com o struts
:arrow: Esperar na fila do mcdonalds com fome
[modo viajando off]

:twisted:

C

Friend…

… 2003 ? o javaone 2005 ja foi, confere ?
ou foi eu que nao entendi sua resposta ?

[]´s

Carlos

Thiago_Senna

cjbarata:
Friend…

… 2003 ? o javaone 2005 ja foi, confere ?
ou foi eu que nao entendi sua resposta ?

[]´s

Carlos

Como se trata do scottyS0, provavelmente vc não entendeu a resposta! :mrgreen:

pcalcado

Gente, sem FUD.

O Struts, em toda sua procaria, continua existindo como projeto da apache Software Foundation. O Struts Shale é outro projeto.

Agora que Craig McTananã e sua turma vai focar mais em um ou outro, isso vai. Aliás, ele agora es´ta muito ocupado desenvolvendo a suíte JSF da Sun.

Luiz_Aguiar

pcalcado:
Gente, sem FUD.

O Struts, em toda sua procaria, continua existindo como projeto da apache Software Foundation. O Struts Shale é outro projeto.

Agora que Craig McTananã e sua turma vai focar mais em um ou outro, isso vai. Aliás, ele agora es´ta muito ocupado desenvolvendo a suíte JSF da Sun.


O probelma que eu vejo é o seguinte, independente de ser uma porcaria ou não o Struts… mas como essa “geração” do Struts já morreu, como citado anteriormente, quem arriscaria entrar nessa “nova” proposta que estão querendo fazer???

Pelo menos o JSF está com a Sun, e fará parte da especificação J2EE 5.0, que teoricamente as chances de continuidade são trilhões de vezes maiores do que qualquer proposta que eles possam querer fazer com o Struts.

Agora, que o treco é nojento, ah isso é mesmo… huahuauha o coitado do Craig devia ta querendo se vingar de alguém e deu o Struts de presente… hehehe

Guilherme_Silveira
  1. ActionForm
  2. extends
  3. ActionMapping
  4. ActionForward
  5. HttpServletRequest
  6. HttpServletResponse
  7. Action
  8. ActionMessage
  9. ActionErrors

Por todos esses nove motivos acima que me atrelam ao servlet-api.jar e ao struts.jar eu fujo dele.

Se quiser tem mais claro:

  1. <logic:
  2. <bean:

E mais

  1. struts eh que nem jsp, eh porta de entrada no java. Isto eh, as pessoas novas procuram algo no google e precisam fazer algo pra amanha. Como o struts permite fazer porcaria, a maior parte dos projetos que voce vai encontrar eh porcaria…

  2. voce pode fazer a mesma coisa de 1000 maneiras. assim como no ant. entao o mercado cria aquela ilusao que todo mundo usando struts nao tem problema de trocar uma pessoa pq a outra vai entender. vai entender o caramba. o projeto do outro eh totalmente diferente do seu. cada um herdou classes diferentes, usou cmainhos diferentes. e tasca aprender mais coisa pra dar continuidade…

ja falei de heranca? ja neh

entao sobram as frescuras:
15. pq tem um nome feio
16. pq tem um nome em ingles
17. pq as tags dele sao feias pra burro

Luiz_Aguiar

Hehehe… se o Guilherme falou… tá falado! :slight_smile:

ricardolecheta

e já viram alguém fazer

class ClasseDeModelo extends ActionForm ???

e depois manda essa classe pro banco :slight_smile:

Shelson

Bela Guilherme !!!

Por esses motivos, dei uma de louco e fiz o meu próprio framework … nada de ActionMapping. Simplicidade, um log decente e estilo. tags bonitas e claras. e ainda funciona em pocket pc. Sem contar com o assistente, que mapeia via navegador, os campos com o banco de dados.

Estou ajustante alguns detalhes, mas toh louco pra divulgar pra galera …

Garanto que promete ! :smiley:

Mauricio_Linhares

Luiz Aguiar:
Pelo menos o JSF está com a Sun, e fará parte da especificação J2EE 5.0, que teoricamente as chances de continuidade são trilhões de vezes maiores do que qualquer proposta que eles possam querer fazer com o Struts.

Muito pelo contrário, o Shale é feito especificamente para trabalhar com JSF. Ele foi criado para servir de controler em uma aplicação JSF.

Se não fosse o Struts, seria outro. Ninguém faz perfeito na primeira vez. Se não fosse pelo conhecimento que o Struts gerou (tanto nos seus acertos como nos seus erros) provavelmente não veríamos WebWork, Spring MVC, Mentawai e o diabo a quatro por aí :?

saoj

Concordo plenamente! O problema é que devido ao fato desses frameworks serem difíceis de aprender, o cara depois não quer mudar quando algo novo e melhor aparece.

Agora se algo é fácil, simples e não-complicado, então vc pode brincar sem envolvimento emocional. E se algo melhor aparecer vc não ficará resistente a mudança.

Mauricio_Linhares

Concordo plenamente! O problema é que devido ao fato desses frameworks serem difíceis de aprender, o cara depois não quer mudar quando algo novo e melhor aparece.

Agora se algo é fácil, simples e não-complicado, então vc pode brincar sem envolvimento emocional. E se algo melhor aparecer vc não ficará resistente a mudança.

Não acho que seja só isso Sérgio, é claro que preguiça e falta de vontade pesam muito na hora de migrar uma aplicação. Em um projeto de pesquisa da universidade que eu trabalhei a mais de um ano, o pessoal ainda usava Tomcat 4.1. Dia desses me chamaram pra dar uma aulinha sobre Hibernate pra a galera que tá lá hoje e ainda usam o Tomcat 4.1, simplesmente porque o administrador disse que “não tem necessidade de mudar”.

A cultura das pessoas e da empresa contam muito na hora de se fazer uma mudança dessas. Na empresa que eu estou estagiando por exemplo, eu migrei toda a persisistência que era no Hibernate 2.1.8 pra o Hibernate 3.0.5 em apenas um dia, sem causar nenhum problema a ninguém, tudo continuou funcionando normalmente. Agora estou migrando do Struts pro Spring e mais uma vez ninguém me proibiu, eles só querem a coisa funcionando :mrgreen:

Mas eu trabalho sozinho, o código é meu e o legado também. Em uma grande empresa, com times de desenvolvimento, eu provavelmente não poderia chegar pro pessoal e dizer “vamo todo mundo atualizar tudo e migrar tudo pro Spring”. A maioria das empresas tradicionais tem “metabolismo de tartaruga” e seguem na cultura de que “time que tá ganhando, ninguém mexe”. Se a aplicação tá rodando beleza com o Struts, porque mudar?

saoj

Se a aplicação tá rodando legal, não se deve mudar mesmo. Tb acho isso.

O problema é começar um projeto do zero hoje usando Struts. Sei lá. Acho que a maioria concorda que existem frameworks melhores no mercado.

Mas é o que vc falou. O medo da mudança. O medo do novo. E o apego ao seguro, isto é, ao que já se dominou.

Fabricio_Cozer_Marti

Pessoal,

aproveitando essa discussao, e como vou comecar um novo projeto. Queria saber se vocês aconselham utilizar o webwork ao invés do Struts? O projeto é pequeno, sao 2 analistas e 1 programador, que vai durar uns 3 meses(previsto).

A equipe já conhece struts e pela complexidade não tem necessidade de usar nada parecido com o Spring. A idéia é usar ou o Struts (ou outro) talvez o ww, juntamente com o hibernate.

smota

O problema de projetos de software não é sua duracao durante o desenvolvimento e sim sua manutencao.

Usar struts é um tiro no pé na manutencao, dificil de manter com testes, propenso a ter lixo ao inves do codigo. etc. etc.

Mauricio_Linhares

Fabrício Cozer Martins:
Pessoal,

aproveitando essa discussao, e como vou comecar um novo projeto. Queria saber se vocês aconselham utilizar o webwork ao invés do Struts? O projeto é pequeno, sao 2 analistas e 1 programador, que vai durar uns 3 meses(previsto).

A equipe já conhece struts e pela complexidade não tem necessidade de usar nada parecido com o Spring. A idéia é usar ou o Struts (ou outro) talvez o ww, juntamente com o hibernate.

Porque não tem necessidade de usar “nada parecido com o Spring”?

Spring e Hibernate são um casamento perfeito :mrgreen:

Pra uma olhadinha no Spring MVC tem esse tutorial simplíssimo: Spring MVC Step-by-step

Mauricio_Linhares

Ah, um exemplo bem besta de um DAO que eu tenho aqui:

public void save(Object objeto) {
        this.getHibernateTemplate().saveOrUpdate(objeto);

    }

    public void update(Object objeto) {
        this.getHibernateTemplate().update(objeto);

    }

    public void delete(Object objeto) {
        this.getHibernateTemplate().delete(objeto);

    }

Não abri nem fechei sessões nem transações aqui, tudo é resolvido pelo próprio Spring e as transações são definidas declarativamente, não no código :mrgreen:

Guilherme_Silveira

A resposta eh: nao tem resposta

Todos os frameworks fazem a mesma coisa. Ate mesmo o struts se dominado vai ter a mesma complexidade de manutencao que outros.(arrisquei agora hein.,…)

O negocio eh escolher um framework que voces estejam dispostos a aprender. Aprendam em uma semana o basico e decida se vai utilizar ele…

Que tal?

ps: trabalhar com object eh coisa feia… .cade generics daniel? :slight_smile: java 5 tae…

Alias sobre essa historia toda de mudanca, a palestra da Linda Rising esse fds sera sobre esse assunto. COmo mudar o padrao tartaruga das empresas

Luiz_Aguiar

Do mesmo jeito que muita gente prefere pagar uma cópia do Windows por preguiça (medo) de tentar usar o Linux, com os frameworks é a mesma coisa… é difícil fazer muitas vezes quem conseguiu se dar bem com o Struts, tentar ver além do horizonte… mesmo que saiba que existem opções “melhores”.

Como o Guilherme disse, fazer todos fazem… mas toda tecnologia se aprimora e avança… e isso, nem todos conseguem seguir.

Thiago_Senna

Será mesmo? Se eu tivesse tempo disponível, e o código estivesse uma porcaria, eu mecheria! Os testes unitários estão ai para estes tipos de situações! :wink:

:smiley: Essa realmente vc arriscou! Acho que sempre é válido dominar bém o framework que vc está trabalhando, mas a colocação do smota já mostra o principal motivo que faz com que o Struts não seja manutenível como os outros frameworks…

IMHO, testar as actions do webwork é fácil pacas, enquanto no struts a complexidade é pelo menos 2x maior!

Abraços!
Thiago

Mauricio_Linhares

Se a aplicação tá rodando legal, não se deve mudar mesmo. Tb acho isso.

Ela está funcionando agora, mas quem garante que ela vai continuar a funcionar quando houver uma grande mudança nas regras de negócio pra se fazer?

Se você não tem confiança no que está fazendo (por falta de testes automatizados) e anda escrevendo gambiarras pra lidar com falhas da sua ferramenta (como são os Entity Beans e CMP na especificação EJB), mesmo que a coisa “funcione”, a migração deve ser um caminho certo, porque um dia a bomba estoura.

E como já diria Murphy:

farribeiro

Acresentando um roteiro que sobre a tecnologia

http://www.jspolympus.com/JSF/JavaServerFaces.jsp

jack_ganzha

Uma pergunta diferente: e se todos os projetos da empresa são com o Struts? Vale adicionar um novo framework para novos projetos e quebrar o “padrão”?

valeuz…

Daniel_Quirino_Olive

Uma pergunta diferente: e se todos os projetos da empresa são com o Struts? Vale adicionar um novo framework para novos projetos e quebrar o “padrão”?

valeuz…

Refazendo sua pergunta:
:arrow: todos os softwares da empresa são feitos em COBOL para plataforma alta. Devemos migrar para plataforma baixa?

A resposta é: depende.

E

Como qualquer tecnologia Struts tem seus vantagens e desvantagens, o maior problema que um boa parte dos programadores não tem o conhecimento necessario para usufruir de todos os beneficios que ela disponibiliza…
Então eu recomendo a galera estudar mais e conhecer a fundo o struts

Abraços

saoj

eloi_medeiros:
Como qualquer tecnologia Struts tem seus vantagens e desvantagens, o maior problema que um boa parte dos programadores não tem o conhecimento necessario para usufruir de todos os beneficios que ela disponibiliza…
Então eu recomendo a galera estudar mais e conhecer a fundo o struts

Abraços

Esquece o Struts, na boa. Se na sua empresa usam isso então use e seja feliz (=mantenha o seu emprego). Caso contrário use algo mais atual…

contrabando

e ae galera blz?
não quero reabrir o post mas, de pessoal que comentou esse post a um ano atras so respondam duas coisas
1-qual framework vc usava a um ano atras e ?
2-qual vc usa(ou usaria) hj?
só queria saber se a opinião de vcs mudou

asobrab

Maurício Linhares:
Ah, um exemplo bem besta de um DAO que eu tenho aqui:

public void save(Object objeto) {
        this.getHibernateTemplate().saveOrUpdate(objeto);

    }

Não abri nem fechei sessões nem transações aqui, tudo é resolvido pelo próprio Spring e as transações são definidas declarativamente, não no código :mrgreen:

Realmente concordo. O spring me pareceu um frameWork bem completo. Para trabalhar com Hibernate por exemplo, proporciona amplas reduções de código, como citado, além de permitir a eliminação do arquivo hibernate.cfg.xml. 12, 15 linhas de código sem spring, torna-se apenas 1,2, 3 linhas de código com o spring. Baxei o danado recentemente e assustei com o tamanho. Mas, ao analisa-lo com mais calma, percebi que 80% do pacote baixado é documentação.

jmp

saoj:

Concordo plenamente! O problema é que devido ao fato desses frameworks serem difíceis de aprender, o cara depois não quer mudar quando algo novo e melhor aparece.

Agora se algo é fácil, simples e não-complicado, então vc pode brincar sem envolvimento emocional. E se algo melhor aparecer vc não ficará resistente a mudança.

dificil de aprender foi muito bem colocado.

A documentacao de spring parece que foi gerada com aqueles softwares que geram artigos que nao falam nada e usam 10 paginas pra isso, no meio de documentacao eles ficam tentando vender o produto, cansa.

Quanto a struts… eu aprendi o basico e cheguei a conclusao que eu nao precisava daquilo para fazer minhas aplicacoes, tenho pavor de xml.

Quanto a JSF… precisam copiar algumas coisas dos componentes do ASP.net. Mas eh o que eu uso e acho muito legal.

Por exemplo: O Image so carrega via URL, se voce tem alguma imagem na memoria (vinda de blob ou gerada) voce nao consegue dar apenas um Image.setImage(byte[]) ou algo do tipo…

afamorim

Hoje em dia utilizo o JSF e so mudei do struts pois gostei da proposta do JSF, até então usava o Struts, ja tinha os Controles de Exceções e tudo funcionava, gostei da ideia do Spring, mais é tanta arquivo de configuração, que teria que utilizar velocty para ganhar tempo de desenvolvimento com ele.
:twisted:

urubatan

afamorim:
Hoje em dia utilizo o JSF e so mudei do struts pois gostei da proposta do JSF, até então usava o Struts, ja tinha os Controles de Exceções e tudo funcionava, gostei da ideia do Spring, mais é tanta arquivo de configuração, que teria que utilizar velocty para ganhar tempo de desenvolvimento com ele.
:twisted:

Da uma olhada no Spring-Annotation :smiley:
na minha opinião é a integração perfeita entre spring e JSF :smiley:
pelo menos se tu puder usar Java 5, faz o setup inicial do projeto e depois não precisa mais mexer com XML :smiley:
dependendo do caso, nem no faces-config.xml

jmp

urubatan:
afamorim:
Hoje em dia utilizo o JSF e so mudei do struts pois gostei da proposta do JSF, até então usava o Struts, ja tinha os Controles de Exceções e tudo funcionava, gostei da ideia do Spring, mais é tanta arquivo de configuração, que teria que utilizar velocty para ganhar tempo de desenvolvimento com ele.
:twisted:

Da uma olhada no Spring-Annotation :smiley:
na minha opinião é a integração perfeita entre spring e JSF :smiley:
pelo menos se tu puder usar Java 5, faz o setup inicial do projeto e depois não precisa mais mexer com XML :smiley:
dependendo do caso, nem no faces-config.xml

mas o facesconfig eu acho super simple, além disso, existem IDES que voce só usa o mouse, ele mesmo ja coloca o return nos teus actions, eu to usando Studio Creator, bem legal… (apesar dos bugs ABSURDOS que eu encontrei)

ricardolecheta

urubatan:

Da uma olhada no Spring-Annotation :smiley:
na minha opinião é a integração perfeita entre spring e JSF :D

jmp:

mas o facesconfig eu acho super simple, além disso, existem IDES que voce só usa o mouse, ele mesmo ja coloca o return nos teus actions, eu to usando Studio Creator, bem legal… (apesar dos bugs ABSURDOS que eu encontrei)

Eu vi um colega trabalhar assim no WSAD, só arrastando o mouse e ele atualizava o faces-config… ele adicionava um listener em um botão e bla bla. Nada de mais.

Eu pergunto aos colegas, sinceramente, vcs gostam de JSF ou utilizam por um motivo de força maior? Todas as vezes que eu estudei JSF, eu parei. Nunca encontrei algo de novo, simples, etc.

Agora quando alguns colegas antigos no guj como o urubatan, ficam defendendo o JSF, eu fico pensando, será que eu não entendi algo, eu sou louco ou ele é ? :slight_smile:

IMHO, JSF nao tem nada de inovador. É claro se é uma especificação, e conta com a ajuda de alguns monstros sagrados, fica fácil ganhar popularidade, IDE’s e implementações.

Comentários ?

Luca

Olá

Não muitos porque também parei no meio quando estudei JSF 1.0. Mas na época fiquei com 2 impressões:

  1. Não é simples,

  2. A proxima versão a ser lançada promete corrigir todos os problemas da atual.

Minha pergunta: Já podemos descartar a questão 2 ou o JSF ainda está em fase de amadurecimento? Se estiver maduro e pronto acho que volto a estudar. Mas a coisa meia boca cheia de gambiarras que estudei não me seduziu.

[]s
Luca

ricardolecheta

Luca:

  1. Não é simples,

  2. A proxima versão a ser lançada promete corrigir todos os problemas da atual.

Valeu Luca. É que ao comparar X com Y, eu penso na questão produtividade (vida fácil).

Aquele prazo curto e desafiador, e um gerente te cobrando resultados.

Og1

Entrando na conversa.

Nossa começei a ler o post, quando vi estavam discutindo sobre os defeitos que o struts acarreta.

Bom posso confessar que no mesmo momento que estou lendo o post ao meu lado tem um livro de struts que estava estudando, fazendo alguns teste e tal.

Bom nesse mes passado acabei um curso de 5 meses em java que no final do curso vi Struts + Hibernate.

Estava planejando estudar bastante struts, pra depois pegar o Spring, mas pelo que to vendo o Struts tá ficando tão em baixa que passa pela minha cabeça largar o struts e cai matando no Spring e no JSF que pelo andar da carroagem é o que vai dar mais “futuro”.

Gostaria de saber de voces o que voces recomendam ? :slight_smile:

ricardolecheta

Og:
Gostaria de saber de voces o que voces recomendam ?

Felizmente cada pessoa pensa diferente, então aqui no fórum cada um vai te recomendar algo diferente. Mas Java 5, JSF, Spring, Hibernate, Mentawai, VRaptor são sempre tópicos muito discutidos aqui.

jmp

Luca:
Olá

Não muitos porque também parei no meio quando estudei JSF 1.0. Mas na época fiquei com 2 impressões:

  1. Não é simples,

  2. A proxima versão a ser lançada promete corrigir todos os problemas da atual.

Minha pergunta: Já podemos descartar a questão 2 ou o JSF ainda está em fase de amadurecimento? Se estiver maduro e pronto acho que volto a estudar. Mas a coisa meia boca cheia de gambiarras que estudei não me seduziu.

[]s
Luca

Voce está exagerando. JSF nao foi feito para atender tudo e é isso que faz dele bem legal, mas voce pode usar em conjunto com outras coisas, na verdade é impossivel fazer aplicacao só com JSF, voce no minimo vai precisar de jstl ou codificar os seus proprios componentes.

É muito simples desenvolver componentes para JSF.

ricardolecheta

isto é o Mínimo que se espera :wink:

existe uma diferença entre o Mínimo e algo que encanta o público.

Mauricio_Linhares

Nada também é muito :stuck_out_tongue:

JSF é mais uma resposta ao ASP.NET do que qualquer outra coisa, mas ele trouxe idéias interessantes que não estão presentes no ASP.NET mas que terminaram não sendo muito valorizadas ou utilizadas pela comunidade por diversos motivos.

A mais clássica é a noção de renderers. Teoricamente, você poderia ter um mesmo conjunto de componentes JSF gerando saída em vários formatos diferentes, como XHTML, WML, XUL e outros. Contudo, entretanto, todavia, os conjuntos de compoentes suportados por essas diferentes linguagens de marcação são tão diferentes (e conflitantes, em alguns casos) que tornou-se simplesmente impossível (ou impraticável) conseguir desenvolver uma aplicação com eles.

Imagine que você vai desenvolver uma aplicação pra gerar WML e XHTML, você vai ter que tomar cuidado pra fazer com que os componentes que você use sejam todos componentes que tem “renderers” pra as duas linguagens e vai ter que pensar em alguma maneira de não “poluir” demais a interface, porque quem vai receber WML não vai poder ver o mesmo que um browser XHTML poderia. Então essa idéia terminou sendo meio furada (isso mudou um pouco com a chegada do AJAX, mas também não melhorou muito não).

Não vou dizer aqui que aprender JSF é excitante, nem que JSF vai trazer a paz aomundo de frameworks web em Java, mas pras minhas necessidades hoje não encontrei nada melhor em Java. A noção de componentes e controle total sobre a interface fazem dele pra mim hoje a melhor opção no mercado.

Um exemplo interessante disso e uma aplicação que eu comecei a desenvolver recentemente, que é um “gerador de relatórios”. O sistema recebe as informações da tela de filtro de um relatório e ela é montada dinâmicamente apenas com a criação e adição de componentes. Se eu estivesse utilizando um framework web “comum” (action-based) provavelmente teria que escrever horrores de HTML, JavaScript e ainda criar taglibs que fizessem isso, com JSF é só createComponent() e createValueBinding(), toda a conversão, validação e relacionamento entre componente e propriedades do formulário são feitas pelo próprio JSF.

Sempre existem “casos” e “casos”. O que nós temos que fazer é saber escolher qual a melhor ferramenta pro serviço.

ricardolecheta

Bem colocado :thumbup:

decker

Bom, não sei se o pessoal ainda vai ver esse tópico, mas achei ele ao acaso por aqui.
Eu estou usando Struts no momento… e admito que eu tô pensando em algo melhor… Mas estou em dúvida se uso JSF, se uso Spring ou Mentawaii?
Sei que cada caso é um caso… mas para quem está migrando do Struts para outro framework?
E tb, algum q facilitasse a integração entre Hibernate + o framework.

Além disso, se eu gostar de outro framework, eu teria q convencer o pessoal da empres a mudar tb… rsrs, e espero ter bons argumentos depois.

Isso pq, me parece q o Struts 2 está muito diferente de suas versões anteriores, q nem sei se vale a pena estudar… E eles vão mesmo continuar? Ou vai ficar só mandando uns releases para corrigir uns bugs graves?

Neto.Sabio

Acho que você esqueceram de uma ferramente que otimiza muito o processo de Servlet com cinfiguracoes Tom Cat.

Vamos citrar um eclipse lomboz da Vita ?

Eduardo_Bregaida

Guilherme Silveira:
2. ActionForm
3. extends
4. ActionMapping
5. ActionForward
6. HttpServletRequest
7. HttpServletResponse
8. Action
9. ActionMessage
10. ActionErrors

Por todos esses nove motivos acima que me atrelam ao servlet-api.jar e ao struts.jar eu fujo dele.

Se quiser tem mais claro:

  1. <logic:
  2. <bean:

E mais

  1. struts eh que nem jsp, eh porta de entrada no java. Isto eh, as pessoas novas procuram algo no google e precisam fazer algo pra amanha. Como o struts permite fazer porcaria, a maior parte dos projetos que voce vai encontrar eh porcaria…

  2. voce pode fazer a mesma coisa de 1000 maneiras. assim como no ant. entao o mercado cria aquela ilusao que todo mundo usando struts nao tem problema de trocar uma pessoa pq a outra vai entender. vai entender o caramba. o projeto do outro eh totalmente diferente do seu. cada um herdou classes diferentes, usou cmainhos diferentes. e tasca aprender mais coisa pra dar continuidade…

ja falei de heranca? ja neh

entao sobram as frescuras:
15. pq tem um nome feio
16. pq tem um nome em ingles
17. pq as tags dele sao feias pra burro

huahuahuahuahua pode crer…

Antes de fazer o projeto em JSF, ele era feito em Struts, dava mto pau e pra testar é um ****.
Como dizia a assinatura de alguem ai q nao lembro do forum e só alterando de Spring pra JSF
"Eu usava Struts, deixe de usar vc tbm http://java.sun.com/javaee/javaserverfaces/"

huahuahuahua 8)

rodrigousp

O Struts 2 é a continuação do WebWork (isto é, é completamente diferente do Struts 1.x). Você encontrará muitos seguidores do Webwork neste forum. Os riscos de investir no Struts 2 é maior do que investir no jsf (porque tem o selinho da SUN), mas menor do que a maioria dos outros frameworks (porque tem o selinho da APACHE). Dá uma procurada no Guj sobre o Webwork e tire suas próprias conclusões.

jmp

JSF tambem tem umas coisas chatas… principalmente se voce quiser fazer aplicacao com “cara” de web e não de aplicação. Eles poderiam copiar melhor como o binding do asp.net com classes c# funciona… o studio creator faz pra voce… mesmo assim nao é tao simples como no asp.net

zap

Comecei um projeto novo ha duas semanas, usando o … struts.
Os projetos em que trabalhei (de dois a tres anos atras) tambem haviam comecado com struts, e o projeto atual (um outro) em que estou dando manutencao tambem e baseado em struts. Demorei para aprender a usar este framework (tive que ler e reler muito a documentacao) e passar por todo o problema de erros que nao apontavam para lugar nenhum (struts-config.xml). Mas com o tempo adquiri uma pequena experiencia para identificar os problemas e fazer um codigo limpo e funcional.
Nao estou aqui para defender o struts. Esse e apenas meu ponto de vista. Apesar de ter sido complicado aprender este framework ele sempre atendeu a todos os projetos em que trabalhei.
Nao tive tempo ainda para estudar outras opcoes de frameworks, mas certamente o farei (espero que tenha tempo no proximo mes), e o primeiro da lista provavelmente sera JSF.

David

zap:
Nao tive tempo ainda para estudar outras opcoes de frameworks…
Talvez por isso você goste do Struts… :wink:

A

Og:
Entrando na conversa.

Nossa começei a ler o post, quando vi estavam discutindo sobre os defeitos que o struts acarreta.

Bom posso confessar que no mesmo momento que estou lendo o post ao meu lado tem um livro de struts que estava estudando, fazendo alguns teste e tal.

Bom nesse mes passado acabei um curso de 5 meses em java que no final do curso vi Struts + Hibernate.

Estava planejando estudar bastante struts, pra depois pegar o Spring, mas pelo que to vendo o Struts tá ficando tão em baixa que passa pela minha cabeça largar o struts e cai matando no Spring e no JSF que pelo andar da carroagem é o que vai dar mais “futuro”.

Gostaria de saber de voces o que voces recomendam ? :slight_smile:

To igualzinhoo a vc amigo, faz 5 meses, e estudei o Struts e Hibernate…
Mas como sempre acompanhei o forum, e vejo q a galera jah estudou,testou,implementou,etc…(de outros “…ous”)
E como ou sem razao, eu n sei…nao usam o struts.
Fui e falei issu com meu professor, e ele defendeu o struts, dizendo q 80% das propostas de empregos q passam na lista de emails dos grupos de java,e-panelinha,java-soft,timaster,etc…tem como pre-requesitos struts, tanto para manutencao dolorosa,como para novos projetos…

Me ajudem decidir, se estudo struts ou n…

Grato desde ja

Mauricio_Linhares

Heero Yuy:
Como dizia a assinatura de alguem ai q nao lembro do forum e só alterando de Spring pra JSF
"Eu usava Struts, deixe de usar vc tbm http://java.sun.com/javaee/javaserverfaces/"

huahuahuahua 8)

Era a minha assinatura, tirei porque eu realmente achava que ninguém mais tinha coragem de começar um novo projeto no Struts, principalmente sabendo que já existe uma nova versão e é completamente diferente do 1.x, mas parece que eu me enganei né, vou ter que colocar a assinatura denovo :smiley:

A

Alguém já usou o Rife? Como foi?

L

Luca:
Olá

Não muitos porque também parei no meio quando estudei JSF 1.0. Mas na época fiquei com 2 impressões:

  1. Não é simples,

  2. A proxima versão a ser lançada promete corrigir todos os problemas da atual.

Minha pergunta: Já podemos descartar a questão 2 ou o JSF ainda está em fase de amadurecimento? Se estiver maduro e pronto acho que volto a estudar. Mas a coisa meia boca cheia de gambiarras que estudei não me seduziu.

[]s
Luca

Não cheguei a usar ainda a versão 1.2 que lançou há algum tempo. Mas na versão 1.1_01 foi possível desenvolver aplicação sem problemas (a versão 1.1 tinha um problema muito sem noção que quebrava o Faces quando se clicava no Back do browser), pelo menos até onde foi mexido.

Porém continua a história de que não é nada simples desenvolver com JSF. O tempo que se perde pra aprender a utilizá-lo de forma decente é grande. Além disso, depois de um grande trabalho desenvolvendo o sistema o resultado final fica muito menos flexível pra uso na Web do que um PHP da vida.

Não conheço os demais frameworks, mas a princípio com o conhecimento que adquiri com JSF, é possível fazer com um tempo médio uma aplicação mais complexa mantendo uma estrutura organizada.

Segundo o que li em alguns tópicos aqui no fórum, pessoal fala bastante do Spring e chegou a citar um uso de JSF com Spring. Alguém já utilizou ambos no mesmo projeto? Quais facilidade o Spring adiciona à aplicação que justificaria seu uso integrado ao JSF?

L

Quando eu comecei a mexer em JSF eu só tinha mexido em PHP pra desenvolvimento Web e tinha visto Struts bem básico. A empresa chegou e disse que JSF e Struts foram as tecnologias que eles tinham analisado e que JSF se mostrava superior em alguns aspectos (não lembro ao certo, mas provavelmente era na parte de manutenção).
No começo, eu estava mexendo com JSF por causa da empresa mesmo. Meus colegas de trabalho e eu demoramos alguns meses mexendo com JSF até achar uma arquitetura decente e organizada para fazermos uma aplicação rodar com uma manutenção simples (ninguém da equipe conhecia JSF até então).

Depois de revirar o JSF e tendo em mãos uma arquitetura simples e funcional, fica bem tranquüilo desenvolver. Então hoje eu gosto de desenvolver com JSF. Faço uma aplicação na boa, sem estresse.

jmp

nao entendo por que usar struts + jsf. JSF ja nao tem tudo o que tem no struts?

L

Um bom motivo pra adicionar o struts.jar numa aplicação JSF é para utilizar “tiles” para utilização de templates nas páginas JSP.

Mauricio_Linhares

Um bom motivo pra não se fazer isso é usar Facelets :smiley:

L

Um bom motivo pra não se fazer isso é usar Facelets :D

Ah… dava pra utilizar templates sem precisar adicionar lib externa, é? :shock:
Vou dar uma olhada nisso…

Acho que vou ter alguns pescoços pra apertar essa semana na empresa :evil:

bebad

ix, acabo com o emprego dos cara…
hahaha

ta vendo, nisso que da enganar o chefe :stuck_out_tongue:

F

Galera para com isso a melhor solucao vai de projeto para projeto, mas ninguem pode falar mal do struts ele atende a necessidade, pelo menos para quem sabe usar, sou mais ele que vraptor e outros q existe, muita coisa o struts atende e bem, outra coisa pq será que varias empresas grande usa ele
Bradesco, Itau, Sul America, Maritima entre outras falo isso pq acabei de sair de uma consultoria q atende esses clientes, entao para mim ele deu $$$ huahuahauhauha…
agora uma coisa eu sei agredito que logo logo o JSF vai pegar força no mercado, pois ele tem alguns objetos bons de se trabalhar exemplo JTable dele entre outros…

[]'s

Grinvon

ManchesteR:
andgonca:

Artigo interessante comparando JSF com Struts:

http://jroller.com/page/dgeary?entry=top_ten_reasons_to_prefer

[]´s

Eu não conheço nada de JSF, mas me parece que dá para trabalhar com Struts e JSF juntos, será que não seria 1 melhor solução?

Tentei por Struts + JSF juntos, e ainda por cima na versao 8 do WebLogic, foi um processo horrível e no final não funcionou do jeito previsto.

Daniel_Quirino_Olive

foliveira81:
outra coisa pq será que varias empresas grande usa ele
Bradesco, Itau, Sul America, Maritima entre outras falo isso pq acabei de sair de uma consultoria q atende esses clientes, entao para mim ele deu $$$ huahuahauhauha…

[]'s

Usam só porque Struts foi o framework pioneiro e, nestas empresas que você citou, é o único framework web homologado. Homologar outro framework é um processo caro que nem sempre pode compensar. Além disso, no caso da adoção de um segundo framework, a empresa vai passar a ter duas bases de código para dar manutenção, o que pode sair mais caro do que era antes e migrar o legado já existente para simplesmente adequá-lo a um outro framework, sem agregar valor ao software, nunca é uma alternativa que agrada os gerentes (com razão).

David

Concordo que a melhor solução varia de projeto pra projeto, mas dai a achar q o struts é bom… :shock:

foliveira81:
Galera para com isso a melhor solucao vai de projeto para projeto, mas ninguem pode falar mal do struts ele atende a necessidade
Pode atender, mas “quando você só tem um martelo, tudo parece um prego”…

A

Se voce utiliza o Struts em projetos pequenos com no máximo uns 30 casos de uso, ainda vale a pena mas quando voce trabalha com um projeto de 200 uc’s, se torna impossível gerenciar tanto xml, tanta action e mapeamento hibernate.

Solução; utilizar um framework orientado a componentes (Tapestry), usar um banco pós-relacional e controle altamente rigoroso sobre toda a parte de construção.

Anderson Fonseca,
SCJA, SCJP, SCBCD, SCWCD, SCEA

Mauricio_Linhares

Anderson Fonseca:
Se voce utiliza o Struts em projetos pequenos com no máximo uns 30 casos de uso, ainda vale a pena mas quando voce trabalha com um projeto de 200 uc’s, se torna impossível gerenciar tanto xml, tanta action e mapeamento hibernate.

Solução; utilizar um framework orientado a componentes (Tapestry), usar um banco pós-relacional e controle altamente rigoroso sobre toda a parte de construção.

Anderson Fonseca,
SCJA, SCJP, SCBCD, SCWCD, SCEA

Hã? :lol:

_fs

hahaha…

lobinhojr

Engraçado isso. Trabalho com Java e mais ainda com .Net e tô vendo a galera se render a produtividade da utilização de super componentes web.

Pra mim, JSF é uma versão meio .Net, mas com o poder e robustez da arquitetura java. Apanhei muito fazendo algo muito semelhante ao caso citado pelo “Mauricio” em Java.

As vezes acho que .Net quer virar java e java quer virar .Net, e um dia elas se encontram no meio do caminho. eheheh Isso para os mais puritanos é o fim.

Lobo Jr

Nada também é muito :stuck_out_tongue:

JSF é mais uma resposta ao ASP.NET do que qualquer outra coisa, mas ele trouxe idéias interessantes que não estão presentes no ASP.NET mas que terminaram não sendo muito valorizadas ou utilizadas pela comunidade por diversos motivos.

A mais clássica é a noção de renderers. Teoricamente, você poderia ter um mesmo conjunto de componentes JSF gerando saída em vários formatos diferentes, como XHTML, WML, XUL e outros. Contudo, entretanto, todavia, os conjuntos de compoentes suportados por essas diferentes linguagens de marcação são tão diferentes (e conflitantes, em alguns casos) que tornou-se simplesmente impossível (ou impraticável) conseguir desenvolver uma aplicação com eles.

Imagine que você vai desenvolver uma aplicação pra gerar WML e XHTML, você vai ter que tomar cuidado pra fazer com que os componentes que você use sejam todos componentes que tem “renderers” pra as duas linguagens e vai ter que pensar em alguma maneira de não “poluir” demais a interface, porque quem vai receber WML não vai poder ver o mesmo que um browser XHTML poderia. Então essa idéia terminou sendo meio furada (isso mudou um pouco com a chegada do AJAX, mas também não melhorou muito não).

Não vou dizer aqui que aprender JSF é excitante, nem que JSF vai trazer a paz aomundo de frameworks web em Java, mas pras minhas necessidades hoje não encontrei nada melhor em Java. A noção de componentes e controle total sobre a interface fazem dele pra mim hoje a melhor opção no mercado.

Um exemplo interessante disso e uma aplicação que eu comecei a desenvolver recentemente, que é um “gerador de relatórios”. O sistema recebe as informações da tela de filtro de um relatório e ela é montada dinâmicamente apenas com a criação e adição de componentes. Se eu estivesse utilizando um framework web “comum” (action-based) provavelmente teria que escrever horrores de HTML, JavaScript e ainda criar taglibs que fizessem isso, com JSF é só createComponent() e createValueBinding(), toda a conversão, validação e relacionamento entre componente e propriedades do formulário são feitas pelo próprio JSF.

Sempre existem “casos” e “casos”. O que nós temos que fazer é saber escolher qual a melhor ferramenta pro serviço.

A

andgonca:

Artigo interessante comparando JSF com Struts:

http://jroller.com/page/dgeary?entry=top_ten_reasons_to_prefer

[]´s

Tudo bem mas vcs tem uma apostila ou um artigo explicando o JSF passo a passo, pois sou novato e quero aprender o JSF

Daniel_Quirino_Olive

Já olhou a seção de artigos do GUJ? http://guj.com.br/artigos.jsp

Leozin

particularmente JSF está sendo MUITO BOM na minha opinião, principalmente quando se usa Ajax4JSF

estou num projeto utilizando JSF + ajax + Spring (AOP e Transactions) + EJB3 e está tudo andando muito bem! Há ótimas implementações do JSF que tornam o trabalho produtivo e de qualidade :wink:

bebad

Caras também odeio os erros do struts,
sou JSF - na mente x)

:wink:

sunshine

em relacão a teste
como é o JSF?

é possível testar com relativa facilidade?

gbmesso

lobinhojr:
Engraçado isso. Trabalho com Java e mais ainda com .Net e tô vendo a galera se render a produtividade da utilização de super componentes web.

Pra mim, JSF é uma versão meio .Net, mas com o poder e robustez da arquitetura java. Apanhei muito fazendo algo muito semelhante ao caso citado pelo “Mauricio” em Java.

As vezes acho que .Net quer virar java e java quer virar .Net, e um dia elas se encontram no meio do caminho. eheheh Isso para os mais puritanos é o fim.

Lobo Jr

Nada também é muito :stuck_out_tongue:

JSF é mais uma resposta ao ASP.NET do que qualquer outra coisa, mas ele trouxe idéias interessantes que não estão presentes no ASP.NET mas que terminaram não sendo muito valorizadas ou utilizadas pela comunidade por diversos motivos.

A mais clássica é a noção de renderers. Teoricamente, você poderia ter um mesmo conjunto de componentes JSF gerando saída em vários formatos diferentes, como XHTML, WML, XUL e outros. Contudo, entretanto, todavia, os conjuntos de compoentes suportados por essas diferentes linguagens de marcação são tão diferentes (e conflitantes, em alguns casos) que tornou-se simplesmente impossível (ou impraticável) conseguir desenvolver uma aplicação com eles.

Imagine que você vai desenvolver uma aplicação pra gerar WML e XHTML, você vai ter que tomar cuidado pra fazer com que os componentes que você use sejam todos componentes que tem “renderers” pra as duas linguagens e vai ter que pensar em alguma maneira de não “poluir” demais a interface, porque quem vai receber WML não vai poder ver o mesmo que um browser XHTML poderia. Então essa idéia terminou sendo meio furada (isso mudou um pouco com a chegada do AJAX, mas também não melhorou muito não).

Não vou dizer aqui que aprender JSF é excitante, nem que JSF vai trazer a paz aomundo de frameworks web em Java, mas pras minhas necessidades hoje não encontrei nada melhor em Java. A noção de componentes e controle total sobre a interface fazem dele pra mim hoje a melhor opção no mercado.

Um exemplo interessante disso e uma aplicação que eu comecei a desenvolver recentemente, que é um “gerador de relatórios”. O sistema recebe as informações da tela de filtro de um relatório e ela é montada dinâmicamente apenas com a criação e adição de componentes. Se eu estivesse utilizando um framework web “comum” (action-based) provavelmente teria que escrever horrores de HTML, JavaScript e ainda criar taglibs que fizessem isso, com JSF é só createComponent() e createValueBinding(), toda a conversão, validação e relacionamento entre componente e propriedades do formulário são feitas pelo próprio JSF.

Sempre existem “casos” e “casos”. O que nós temos que fazer é saber escolher qual a melhor ferramenta pro serviço.

Quem sai ganhando com isso somos nós no final não é ??? Sempre tentando um superar o outro e a gente aproveitando :slight_smile:

Quero aprender JSF com Facelets urgente !!!
Acho que vou deixar de lado temporariamente o estudo para certificação, pois todos comentam muito (e bem) de JSF. Assim como o amigo trabalho hoje tb com ASP.Net

D

Onde encontro um bom ‘How To’, um ‘Quick Starter Guide’ ou qq documentação boa para começar a estudar o que o JSF pode fazer ou não…

Estou acostumado ao Tapestry, que como todo o framework tem suas limitações, mas como eu não sou um Framework eu não quero me limitar ao Tapestry…Já trabalhei com Struts e sei que ele não é flor que se cheire mesmo…

Marcio_Nogueira

Há um número enorme de arquivos XML para configurar no Struts, dá até desânimo. :wink:

rodrigo_corinthians

A volta dos mortos vivos… rs

O Struts 1 parou na versão 1.3.9.

Marcio_Nogueira no Struts 1 realmente tinha uma penca de arquivos xml mas agora no Struts 2 tem uma opção para configurar via Annotations, faça você mesmo um teste para ver como está 1000 vezes melhor.

peerless

ManchesteR:
andgonca:

Artigo interessante comparando JSF com Struts:

http://jroller.com/page/dgeary?entry=top_ten_reasons_to_prefer

[]´s

Eu não conheço nada de JSF, mas me parece que dá para trabalhar com Struts e JSF juntos, será que não seria 1 melhor solução?

Mas, pra que ? JSF já faz tudo… não tem pq usar struts só pra dizer “to usando struts” :smiley:

S

Toda vez que usa Struts vc mata um bebê foca!

Tchello

Toda vez que se da um ress numa thread de 5 anos atrás você extingue uma espécie inteira!
hehehehe

deniswsrosa

Chegou um pouquinho atrasado amigo, essa piada era boa a 5 anos atrás, se bobear vc nem sabe o que ela significa. Da próxima, usa essa cartinha mágica:

Criado 17 de agosto de 2005
Ultima resposta 9 de mar. de 2010
Respostas 86
Participantes 52