Strutus X Java Server Faces

17 respostas
R

Pessoal, gostaria de uma opinião de vcs…

Estou por optar em utilizar um, minha dúvida é qual???

Quais dos dois frameworks vcs usariam, levantando uns requisitos:

1-) Praticidade
2-) Facilidade
3-) Rapidez
4-) Desempenho

Obrigado…

[]'s

17 Respostas

saoj

Os dois são chatos demais !!! Trabalheira gigantesca para imprimir Olá na tela.

Sei lá, essa é a minha opinião. Tem gente que gosta e domina, o que certamente não é o meu caso.

Eu prefiro fazer minhas próprias Tags ou usar Velocity.

R

Eu também sempre fiz…

Me falaram que facilitam mais o desenvolvimento… Por isso estou pesquisando…

Mas valew…

falow…

[]'s

W

se voce puder escolher, estude velocity + Webwork.Mais facil de aprender e mais produtivo, pelo menos essa eh a minha opniao.

eu prefiro ao inves de struts, o webwork
e em vez de jsf eu estudaria o Tapestry

pesquise aqui no forum q tem muita coisa a respeito do webwork e velocity

flws

wbsouza

Java Server Faces saiu do JCP e contou com a colaboração do criador da Struts. É uma boa escolha a longo prazo, pois trata-se de uma solução padronizada.

Embora a curva de aprendizado seja maior (tudo que é novo exige esforço), vale a pena estudar, pois as principais ferramentas do mercado já estão vindo com suporte à JSF.

[]s, Welington B. Souza

louds

JSF com uma boa IDE é de longe o framework mais produtivo. A curva de aprendizado é um pouco grande. Tirando a nhaca que são as taglibs e as urls gerada o código fica razoavel.

Struts é a pior opção, mas bem melhor que nenhuma.

Tapestry e Webwork são as melhores opções se você quer desenvolver usando frameworks orientados a componentes ou command-pattern.

Tapestry de longe é com menos suporte e maior curva de aprendizado. Mesmo com um documentação bem legal deve demorar um bom tempo para ficar proficiente e produtivo. A não ser que você seja o HLS.

Luca

Olá

A meu ver a principal vantagem de usar um framework tipo Struts é aproveita-lo como front controller. Já o JSF é um framework apenas e tão somente para a camada de apresentação. Então para mim não tem nenhum sentido comparar JSF com Struts. Usando JSF você ainda precisará de algo que se encarregue das camadas Controller e Model do modelo MVC.

Talvez as vantagens do JSF só apareçam quando suas telas são complexas e você precisa do sofisticado modelo de eventos que ele possibilita. Caso contrário o velocity, o freemarker ou mesmo o JSP + JSTL dão conta do recado.

Aqui no GUJ há muita gente que adora o Webwork. Para mim a comparação melhor seria entre Struts, webwork, spring, vraptor e outros análogos.

[]s
Luca

_fs

Pelo pouco que li do JSF, ele parece uma versão piorada do WebWork :expressionless: porém tem muito muito mais documentação e um livro publicado (o do webwork ainda está em produção).

Mas há a grande vantagem de ter bastante usuários de WW aqui no GUJ :smiley: que ficariam muito felizes em te dar uma mão no que fosse.

boaglio

O problema do “Strutus” é que ele é meio “complicadus” :lol:
desnecessariamente…

Eu consegui enxergar isso há pouco tempo que comecei a
mexer com WW.

:mrgreen:

wbsouza

A meu ver a principal vantagem de usar um framework tipo Struts é aproveita-lo como front controller. Já o JSF é um framework apenas e tão somente para a camada de apresentação. Então para mim não tem nenhum sentido comparar JSF com Struts. Usando JSF você ainda precisará de algo que se encarregue das camadas Controller e Model do modelo MVC.

Não é bem assim, no JSF vc tem o Servlet FacesController que faz o papel do ServletController do Struts. Acontece que este processo é muito transparente que quem usa com uma IDE nem sabe da existência dele se não ficar fuçando no web.xml :slight_smile:

O JSF pode substituir por completo o Struts, e sem as coisas nojentas de herdar de uma classe Action nem dos Forms (se nao usar dinamicos). É tudo declarativo. Estou estudando o JSF, e até onde eu ví estou gostando bastante.

Algumas coisas é necessário dar mais voltas, mas por outro lado acaba o acoplamento que existe na Struts.

[]s, Welington B. Souza

Luca

Olá

Concordo que o processo é todo transparente. Mas o que eu quiz dizer que TODA a motivação de usar JSF está na camada de apresentação enquanto outros frameworks como o Struts se apresentam como solução para todas as camadas (o que eu não concordo muito, especialmente no caso do Struts que mistura as coisas). Porisso chamei a atenção que não se deve optar por JSF onde as vezes pode ir uma solução muito mais simples.

Mas em contrapartida, se o cara usar uma IDE do tipo do StudioCreator, JDeveloper ou WSAD pode ser que usar JSF seja bem mais simples do que o tal das foquinhas.

[]s
Luca

Diogenes

Não sei nada de JSF, mas se o ServletFacesController mantêm o processo transparente então quer dizer q ele não conhece as outras camadas de sua aplicação…Então será q ele pode ser considerado um controller da sua aplicação???

Luca

Olá

Diógenes, ele é um controller como foi dito. E realmente faz este controle de forma bem transparente. Talvez JSF possa propiciar ao programador se concentrar mais no que vai para a tela e no seu próprio modelo de negócio do que com o Struts onde a gente se mete no meio de tudo.

Se pode usar Struts com JSF e tem gente fazendo isto (advinhem quem). Eu só conheço um tiquinho de JSF, ainda não avancei muito no livro JSF in Action do Kito Mann. Eu ainda estou com a impressão que JSF na mão dá um trabalhinho danado. Mas tenho boas espectativas quanto ao sucesso futuro dele, principalmente porque ele não obriga o uso de JSPs.

[]s
Luca

wbsouza

Quando respondí o post estava meio sem tempo para buscar a informação em detalhes. Veja aí o trecho do arquivo web.xml

<servlet>
    <servlet-name>Faces Servlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
     <url-pattern>*.faces</url-pattern>
</servlet-mapping>

[]s, Welington B. Souza

Diogenes

Tá, mas minha dúvida é a seguinte:
O faces controller abrange toda a responsabilidade de um MVC controller?
Quais são essas responsabilidades formalmente falando?

plentz

It’s Official, Struts is History!

F

1 - o JSF tem um servlet controller sim, o framework foi feito focado na parte de view, re-utilização de componentes e modelo de eventos. O controller do jsf é para fazer o mvc ficar descente.

2 - o Controller de outros frameworks tem mais funções que o controller do RI do jsf, vale a pena ver o adf faces da oracle que tem cerca de 100 componentes UI prontos e funções legais no controller.

3 - Se vc quer fazer um ‘Ola Tela’ use HTML, se quer fazer um site institucional use HTML, se quiser fazer uma aplicação complexa onde necessite de produtividade alta o JSF é uma boa pedida.

4 - Caso seu projeto seja muito grande seria bom pegar uma fase para escrita de componentes e validadores atachados à lógica de negócio do projeto ou look and feel. Futuramente isso tira todo o trabalho do desenvolvedor de se preocupar com layout. (Alias onde trabalho temos um modelo muito parecido com isso, mas não é em JSF, quando o nosso framework foi feito o JSF nem existia. Eu NÃO toco em layout nem que a vaca tussa, só bato um ‘XML’ dizendo os campos que tem que aparecer, se deve ficar na coluna 1, 2 ou 3, ou se quero uma lista… Coisas assim, é show).

5 - O Suporte das empresas grandes do mercado ao JSF é muito bom, a Oracle mesmo entrou de cabeça, a IBM tem um ótimo suporte além das comunidades e projetos ai a fora.

6 - Se vc acha o RI uma merda: RI = Reference Implementation : É a prova que a especificação (JSR - 127) pode ser implementada, não foi feita pra ser a melhor implementação, mais rápida ou segura, é apenas a prova que o expert group não viajou quando fez a espec. Por isso recomendo a procurar implementações que não sejam o RI. (MyFaces, OurFaces, Adf Faces).

cv1

Jogaram perfume na merda. Hoo-ray.

Criado 27 de janeiro de 2005
Ultima resposta 28 de jan. de 2005
Respostas 17
Participantes 12