Algum bom artigo relacionado à implantação de aplicativos GWT na produção?
-
20-09-2019 - |
Pergunta
Alguém conhece bons artigos sobre como implantar aplicativos do Google Web Toolkit (GWT) em um ambiente de produção? Quais são os requisitos? Devo usar o tomcat ou o cais com ou sem Apache? Meu aplicativo GWT aproveita o GWT-RPC exigindo que ele seja hospedado em uma pilha JVM.
Minha experiência atual com implantação na produção é baseada principalmente em uma pilha da Microsoft (IIS, Asp.net etc).
Espero que alguém possa me apontar na direção certa,
Obrigado.
Solução
Os requisitos seriam qualquer servidor J2EE que cumpra o padrão do Servlet 2.5.
Você não precisa instalar o Apache, Tomcat tem seu próprio servidor da web. GWT construiria para você um arquivo de guerra que você deveria copie esse arquivo para o tomcat webapps
e reinicie o Tomcat, ele o implantaria automaticamente. O arquivo de guerra conterá todo o arquivo necessário.
Para construir o arquivo de guerra, você deve usar a formiga, um artigo Aqui como fazer
Eu acho que o ant build
Criaria o arquivo de guerra, de qualquer maneira, fechando o diretório de guerra e alterando a extensão para '.war' é o mesmo (o arquivo de guerra é apenas arquivos zip)
Outras dicas
O GWT é principalmente uma tecnologia do lado do cliente. Você precisa decidir em qual pilha você estará desenvolvendo seu back -end. Pode ser um back -end do ASP.NET, pode ser uma simples implantação estática do Apache ou uma pilha J2EE completa. Depende do que seu aplicativo estará fazendo. Quando tudo é dito e feito, um aplicativo GWT é apenas um HTML e um monte de JavaScript. Você pode servir essa parte de qualquer servidor da Web.
A verdadeira questão é com o que o back -end estará falando. O que confunde a questão é que muitos aplicativos GWT usam o GWT-RPC, o que significa que eles serão escritos em Java e, portanto, exigem um back-end de Java. Mas você também pode escrever um aplicativo GWT que seja independente (ou seja, não é necessário processamento lateral do servidor) ou se comunicar com um aplicativo .NET usando algum tipo de interface de serviço da Web.