Qual arquitetura MVC utilizar com o GWT?

Ola pessoal,

Sou totalmente novato na programacao WEB, e sempre programei em 2 camadas (Delphi + Banco)… conheco a ideia do MVC (ja brinquei com Servlets e JSP) mas agora a empresa onde trabalho esta fazendo uma aplicacao WEB, mas acho que eles estao comentendo um grande erro, pois estao usando o mesmo enfoque utilizado na versao de 2 camadas.

Basicamente o GWT faz um RPC para uma classe no servidor que simplesmente acessa o Hibernate, para mim esta faltando a camada CONTROLE… tem MUITA logica no GWT… preciso de subsidios para poder argumentar com meu chefe.

Alguem teria um PSEUDO-CODIGO de uma aplicacao MVC (com GWT em mente) onde o controle faria os calculos de um relatorio (onde os dados vieram do Hibernate) e o GWT faria uma RPC apenas para mostrar os dados?

Estou perdidao… mas quero fazer isso do jeito certo… para mim a solucao duas camadas esta horrivel!!

Pois se quisermos um dia escrever uma interface para celular ou recriar em Flex (por exempplo) teriamos que escrever quase tudo novamente.

Se alguem puder ajudar ficaria agradecido.

Obrigado a todos

Não sei se é o caso de criar uma ‘camada de controle’. Ao meu ver o MVC já está abstraído nos componentes utilizados no GWT. O que você precisa é pelo menos colocar a lógica de negócio/domínio atrás de uma fachada, evitando assim a duplicação de regras de negócios no tratamento de eventos dos componentes visuais. :wink:

Oi Thiado,

Obrigado pela resposta, mas se amanha precisarmos migrar para Flex, linha de comando ou celular (para celular eh uma forte possibilidade)… para mim o GWT parece mais duas camadas do que MVC.

Nao seria ideal ter um controller no servidor despachando os dados a serem mostrados no GWT??

Obrigado

Imagino que o intuito do padrão fachada é este. Seu componente do GWT pede pra fachada os dados que ela precisa exibir. No meu entendimento, o V e o C do MVC já está aplicado nos próprios componentes do GWT (ou Delphi, se preferir). O que você precisa é de uma fachada que guarde toda o seu negócio. Essa fachada poderia ser usada por qualquer outra aplicação ou até mesmo disponibilizado remotamente.

Talvez já seja tarde demais, mas aqui tem um capítulo de livro que fala sobre isso:

http://java.dzone.com/news/design-patterns-and-gwt?page=0%2C0