Publicando sua Aplicação Java Web no Microsoft Azure

O Azure é a solução de nuvem oferecido pela Microsoft. Ele oferece vários serviços como criar máquinas virtuais (IaaS – Infrastructure as a Service), criar Aplicações Web (PaaS – Platform as a Service) ou até usar recursos de software como Office 365 (SaaS – Software as a Service).

Que o Azure oferece soluções Microsoft, isso todo mundo já sabe. Mas o que alguns talvez ainda não saibam é que o Azure disponibiliza também soluções não Microsoft, como criar máquinas virtuais com o Sistema Operacional Linux e aplicações Web Java com Tomcat.

Nesse post iremos abordar o procedimento para criar uma aplicação Web Java usando o Netbeans IDE.

1. Preparar o ambiente de desenvolvimento

Antes de iniciar nosso procedimento, precisamos preparar nosso ambiente:

2. Criar a aplicação Web Java no Azure

Para criar a nossa aplicação Web Java no Azure, temos 2 opções:

  1. Fazer a criação personalizada e, posteriormente, configurar para usar o Tomcat
  2. Criar a partir da Galeria, selecionando o Apache Tomcat.

Aqui iremos adotar a primeira opção. Segue o procedimento passo-a-passo. Para o procedimento, utilizamos o portal corrente do Azure:

  1. Selecionar a opção “Aplicativos Web” no painel lateral do portal e depois selecionar “+ NOVO”:
    Criando nova Aplicação Web no Azure
    Criando nova Aplicação Web no Azure
  2. Será aberto um conjunto de opções na parte inferior da tela. Selecione a opção “COMPUTAÇÃO” > “APLICAÇÃO WEB” > “CRIAÇÃO PERSONALIZADA”:
    Selecionando a opção para Criação Personalizada
    Selecionando a opção para Criação Personalizada
  3. Fornecer as informações conforme solicitado:
    Preenchendo campos para criação do Aplicativo Web.
    Preenchendo campos para criação do Aplicativo Web.

    • URL: a URL que terá nosso aplicativo Web. Ele será criado como subdomínio dentro de azurewebsites.net.
    • PLANO DO SERVIÇO DE APLICATIVO: esse é o plano que será usado dentro da sua assinatura. Você pode tanto usar um plano previamente criado ou criar um novo. Se for um novo plano, ainda será solicitada a região onde você deseja criar o plano.
    • ASSINATURA: a assinatura que você quer associar com o aplicativo Web. No Azure podemos ter várias assinaturas.
    • REGIÃO: disponível somente se estivermos criando novo plano. Selecionar uma região que esteja mais próxima dos seus potenciais clientes. Eu vou selecionar a opção “Sul do Brasil”
    • BANCO DE DADOS: o banco de dados que iremos utilizar na nossa aplicação. Caso você já tenha um banco de dados criado no Azure, você pode selecioná-lo aqui. para esse nosso exemp, vamos manter esse campo vazio.
  4. Em cerca de 1 minuto o aplicativo será criado. Depois de criado, iremos visualizá-lo no portal dentro de “aplicativos web”:
    Aplicativo Web criado no Azure.
    Aplicativo Web criado no Azure.

    Notas:

    • Na coluna NOME temos o link para entrar na página de gerenciamento de serviço.
    • Na coluna URL temos o link para nossa Aplicação Web recém criada. Ao navegarmos para aquele link, será mostrada uma página padrão explicando como fazer a implantação do seu código.
  5. Na página que mostra as Aplicações Web, clicar no nome da Aplicação Web que acabamos de criar. O Azure irá exibir a página de gerenciamento com um conjunto de abas contendo várias opções como PAINEL, MONITORAMENTO e CONFIGURAR.
  6. Clicar na aba “CONFIGURAR” e então habilitar o Java e o servidor Tomcat:
    Configurando nosso Aplicativo Web para utilizar Java e Tomcat
    Configurando nosso Aplicativo Web para utilizar Java e Tomcat
  7. Salvar as modificações

Pronto! Ao acessar URL da Aplicação Web você verá que já esta sendo usado o servidor Web Tomcat.

3. Implantação do projeto Web Java no Aplicativo Web do Azure

Agora vamos para a implantação do nosso projeto na Aplicação Web. Para isso, o Azure provê implantação contínua a partir de diferentes controles de origem:

  1. Acessar a aba “PAINEL” da sua Aplicação Web no Azure e nela clicar na opção “Configurar a implantação a partir do controle de origem.” (disponível em “visão rápida”).
  2. Será mostrada uma janela onde você irá selecionar onde está seu código fonte. Perceba que podemos selecionar várias opções como Dropbox ou até outro repositório externo. Para nosso post, vamos selecionar a opção “Repositório Git local”:
    Configurando implantação no projeto.
    Configurando implantação no projeto.
  3. Caso você ainda não tenha definido credenciais de implantação, você precisará fazê-lo quando estiver configurando a implantação ou ainda através da opção “Redefinir credenciais de implantação” na aba “PAINEL”. Serão solicitados o nome do usuário e a senha que você utilizará para subir as modificações tanto no FTP ou GIT.
  4. Uma vez terminada a configuração, será exibida uma nova aba “IMPLANTAÇÕES” na página da sua Aplicação Web. Acesse esta aba e nela copie a URL DO GIT. Vamos usar essa URL logo em seguida para fazer o deploy da aplicação Web Java.

Pronto! Agora é só subir os arquivos diretamente nesse repositório e o Azure já irá fazer a implantação desses arquivos na sua Aplicação Web. No caso do Java Web a implantação pode ser feita através de um arquivo .WAR ou também através dos arquivos gerados na construção do projeto. E para ambos os casos o que você precisa fazer é adicionar os arquivos na pasta [REPOSITORIO_GIT]\webapps.

Notas:

  • No caso o [REPOSITORIO_GIT] é o nosso repositório no Azure clonado no nosso ambiente de desenvolvimento.
  • No caso do .WAR, basta adicioná-lo na pasta webapps. Já para adicionar os arquivos de construção do projeto, podemos colocar ou na pasta webapps/ROOT (para ser definido na raiz do servidor Web) ou webapps/[RAIZ_CONTEXTO] (para acessarmos usando a raiz de contexto da nossa aplicação).
  • Se você criar a Aplicação Web no Azure a partir da galeria, sugiro clonar o repositório Git do Azure no seu ambiente de desenvolvimento e então adicionar o arquivo .WAR na pasta webapps do Tomcat disponível no diretório bin. Exemplo: bin\apache-tomcat-7.0.52\webapps.

Agora falta incluir os arquivos do projeto na sua Aplicação Web:

  1. Primeiro criar uma pasta que será usada para acessar o repositório GIT.
  2. Feito isso, fazer a inicialização git nessa pasta. Segue comando usando Git Bash:
    git init
    
  3. Em seguida criar a pasta webapps onde será feita a copia do arquivo .WAR do seu projeto Java.
  4. De volta na ferramenta de desenvolvimento Java Web, fazer a compilação e build do projeto e gerar o arquivo .WAR. Este arquivo será gerado no diretório dist dentro da pasta onde está o seu projeto Netbeans.

    Para que nosso site seja definido na raiz da Aplicação Web, você deve alterar o nome do arquivo de distribuição para ROOT.war.

  5. Depois disso, copiar o arquivo .WAR gerado para dentro da pasta webapps criada acima.

Pronto! Agora é só subir o arquivo .WAR contido na pasta webapps. Para tanto, acesse o diretório onde foi feito a inicialização do Git e, usando o Git Bash, executar:

git commit -m "initial commit"
git remote add azure URL_DO_GIT
git push azure master

Uma vez feito o commit e push no repositório Git da Aplicação Web, o Azure já detecta mudanças e faz a implantação:

Implantação automática do projeto no Aplicativo Web
Implantação automática do projeto no Aplicativo Web

E ao acessar a URL da Aplicação Web, perceba que o seu Site Java já estará lá. Lembre-se que também devemos especificar na URL a raiz de contexto da nossa aplicação Web (somente se nosso arquivo .WAR não for ROOT.war).

Considerações Finais

Nesse post tratamos da publicação de um aplicativo Web Java usando Netbeans. A forma que usamos aqui para fazer a publicação da aplicação Web é simples. Ainda podemos aprimorar usando outros recursos como os documentos nesse link.

Nos mande seus comentários e dúvidas e continue nos acompanhando no blog talkitbr.

Um comentário

Deixe um comentário