Iniciantes no Desenvolvimento Web - JSF2 ou GWT?

Boa tarde galera!

Sempre programei em Java para Desktop, mas surgiu a necessidade de desenvolver uma aplicação WEB. Até aí tudo bem, comprei o livro Head First - Servlets & JSP e comecei a estudar, porém percebi que pro projeto que eu e outro amigo iremos desenvolver, precisaremos de um bom framework para trabalhar.

Nosso projeto basicamente será composto de 3 coisas:
[list]Tabelas[/list]
[list]Gráficos[/list]
[list]Mapa com polígonos, pontos e até desenhos de rota para GPS[/list]

O desenvolvimento Web com Java é algo completamente novo para nós, portanto teremos que escolher, estudar e implementar a tecnologia do ZERO, o pouco que sabemos é sobre o padrão MVC.
Portanto temos duas perguntas:

1 - Qual será o melhor framework em nosso caso?
2 - O GWT é tão bem aceito no mercado de trabalho quanto o JSF? Pois 4 em cada 5 vagas que exigem um dos dois frameworks, este é o JSF.

Abraço a todos!

JSF2 você vai ter que estudar para que ele te ajude mais do que atrapalhe.

Não sei te falar com relação ao GWT, mas eu tenha impressão de ser mais simples que o JSF.

Com Jsf acho que a sua principal complicação seria essa :

Mapa com polígonos, pontos e até desenhos de rota para GPS

se for para criar na mão, acho que pode usar um framework action based

GWT nunca tive experiencia profunda

Talvez seja mais simples vocês utilizarem algum framework como o vraptor ou springmvc e alguma biblioteca de ui em javascript para as tabelas, gráficos, etc…

Como o Polverini mencionou. Para os gráficos e tabelas o JSF com Primefaces te ajuda bastante. Claro que vai ter que estudar o JSF.

Já com os mapas teria que ser algo na mão mesmo. Dependendo dos componentes que vai precisar para os gráficos e tabelas compense mais ir com um framework Action Based mesmo como o VRaptor e Spring MVC e pra interface usar jquery, jquery-ui e alguma biblioteca de gráficos.

Fala galera! Agradeço a todos pelas respostas!

Vamos lá. Pesquisei sobre o PrimeFaces e realmente me atraiu muito a grande variedade de componentes gráficos que poderemos utilizar, só ele já atenderia a todas as nossas necessidades quanto a gráficos e tabelas, sendo assim, implementaríamos com base em JSF.

Porém, posso dizer que a “chave” do nosso projeto é a interação do usuário com o mapa, onde queremos ir bem além do que geralmente vimos no google maps, por exemplo.
Nosso projeto depende de fatores específicos de informações geográficas que, se formos implementar manualmente, perderemos um precioso tempo no desenvolvimento.
Encontramos um framework chamado Geomajas (por sinal, alguem já utilizou?), feito sobre uma estrutura GWT que aparentemente atende todas as nossas necessidades.

Mesmo assim a nossa dúvida continua em aberto, por sabermos que boa parte das aplicações WEB e vagas no mercado de trabalho tendem ao JSF e, se isso acontece, existe algum motivo.

O GWT já é maduro o suficiente para apostarmos e até mesmo nos especializarmos nele?

[quote=Bruno M Gasparotto]Mesmo assim a nossa dúvida continua em aberto, por sabermos que boa parte das aplicações WEB e vagas no mercado de trabalho tendem ao JSF e, se isso acontece, existe algum motivo.[/quote]Essa é a tenologia da Oracle, dona do Java. Ela apoia e faz propaganda. [=

É muito boa, mas requer muito estudo.

Pessoas que tentam utilizá-la sem saber a parte de Servlets e como funciona o JSF tendem a criticá-lo e achá-lo uma péssima ferramenta. [=

O motivo que você disse é que grande parte das aplicações web de mercado são cruds e o jsf é ótimo pra fazer crud

[quote=Bruno M Gasparotto]
O GWT já é maduro o suficiente para apostarmos e até mesmo nos especializarmos nele?[/quote]

Com certeza GWT é maduro e bastante utilizado. Pode dar uma olhada no ext-gwt, gwt-bootstrap, entre outros componentes que podem ajudar mais ainda.

[quote=Bruno M Gasparotto]Boa tarde galera! […]

2 - O GWT é tão bem aceito no mercado de trabalho quanto o JSF? Pois 4 em cada 5 vagas que exigem um dos dois frameworks, este é o JSF.

Abraço a todos![/quote]

Não. O JSF é amplamente mais utilizado.

[quote=fredericomaia10][quote=Bruno M Gasparotto]
O GWT já é maduro o suficiente para apostarmos e até mesmo nos especializarmos nele?[/quote]

Com certeza GWT é maduro e bastante utilizado. Pode dar uma olhada no ext-gwt, gwt-bootstrap, entre outros componentes que podem ajudar mais ainda.[/quote]
1+

Mas eu sinceramente apostaria por priorização em outras tecnologias como JQuery (muito mais difundidas).

Aliás, nunca mais vi discussões à respeito de Struts, estão usando?

[quote=andredecotia]Aliás, nunca mais vi discussões à respeito de Struts, estão usando?[/quote]Sim.

[quote=Hebert Coelho][quote=Bruno M Gasparotto]Mesmo assim a nossa dúvida continua em aberto, por sabermos que boa parte das aplicações WEB e vagas no mercado de trabalho tendem ao JSF e, se isso acontece, existe algum motivo.[/quote]Essa é a tenologia da Oracle, dona do Java. Ela apoia e faz propaganda. [=

É muito boa, mas requer muito estudo. [/quote]
Realmente é um ponto importante, eu costumava confiar mais em tecnologias da própria mantenedora da linguagem do que de terceiros, porém depois do JODA-Time por exemplo, eu mudei esse ponto de vista e vejo que a qualidade da API meio que independe da fonte.

Nos atentamos muito a isso, independentemente do que escolhermos, temos por REGRA ter a base sólida disso. Por exemplo, estou cansando de tanto usar JDBC mesmo sabendo da existência de Hibernate, gosto de fixar o conceito, quanto a isso fiquem despreocupados :slight_smile:

Velho, isso me fez parar e pensar por vários minutos sobre isso, e pra mim faz todo o sentido, é claro que não tenho muita propriedade para discutir sobre o que usar em desenvolvimento Web, mas pra mim fez sentido e tirou um pouco o “receio” de usar algo não tão presente no mercado. Valeu cara!

[quote=fredericomaia10][quote=Bruno M Gasparotto]
O GWT já é maduro o suficiente para apostarmos e até mesmo nos especializarmos nele?[/quote]

Com certeza GWT é maduro e bastante utilizado. Pode dar uma olhada no ext-gwt, gwt-bootstrap, entre outros componentes que podem ajudar mais ainda.[/quote]
Pesquisei pouco sobre os componentes, mas encontrei o vaadin e o Google Chart que me agradaram bastante, porém ainda não li sobre a licença deles pra saber se posso usar em um aplicativo comercial.

Quanto ao EXT-GWT, ele foi descontinuado, não?

Para quem gosta de lidar diretamente com Html e jquery, JSF atrapalha mais do que ajuda, espanta desenvolvedor web classico e web designers. Para quem nao gosta de lidar sempre com html e jquery é uma otima saída para resolver situacoes padronizadas como um sistema desktop. Entao escolhe o que você se sentir melhor, teste o jsf e algum actionbased que seja muito usado em empresas, como por exemplo struts2, o PlayFramework eu nao sei do uso mas tao elogiando muito e eu tambem gostei pelo que li. Entao teste em situacoes diferentes que seu projeto exija, e pense muito na manutencao e personalizacoes. E frontend recomendo o bootstrap e RGraph (graficos em Html5) caso optar por actionbased. Cada projeto tem que ter a solucao mais adequada para o mesmo, considerando tambem os seres humanos envolvidos na equipe.