As aplicações desenvolvidas no Cronapp não possuem lock-in e podem ser exportadas para serem desenvolvidas em outras plataformas, pois o conteúdo é extraído em código padrão, sem componentes proprietários, de forma organizada, otimizada e atualizada em linguagem padrão de mercado.
Veremos abaixo como importar e exportar os projetos e recursos desenvolvidos no Cronapp.
Para importar um projeto ou recurso, acesse no menu do sistema Projeto > Importar (Figura 1). Essa janela também pode ser acessada através do menu de contexto na raiz do projeto (nome do projeto) na árvore de arquivos.
Figura 1 - Opções para importar projetos
Zip: permite importar um projeto compactado em um arquivo *.zip
.
Abra a janela Importar, conforme a Figura 1. Na nova janela (Figura 1.1), selecione a opção Soap e clique em Finalizar. Preencha as informações na janela Importar SOAP e clique em Importar ao final.
Acesse a documentação Consumindo Web Service SOAP para detalhes sobre os campos da janela Importar SOAP. |
Figura 1.1 - Importar web service SOAP
Abra a janela Importar, conforme a Figura 1. Na nova janela (Figura 1.2), selecione a opção OpenApi/Swagger e clique em Avançar. Preencha as informações na janela OpenAPI e clique em Avançar.
Acesse a documentação Importar OpenAPI/Swagger para mais detalhes sobre os campos da janela OpenApi. |
Figura 1.2 - Importar OpenApi/Swagger
Abra a janela Importar, conforme a Figura 1. Na nova janela (Figura 1.3), selecione a opção Zip e clique em Finalizar. Clique em Selecionar para escolher o arquivo em seu sistema operacional, espere carregar e clique em OK.
Ao importar um projeto Zip a partir de um projeto aberto, o conteúdo do projeto atual será substituído pelo conteúdo do arquivo. Recomendamos importar um projeto Zip selecionando a opção "O projeto está em um arquivo ZIP?" ao Criar projeto. |
Figura 1.3 - Importar arquivo .zip
Clique com o botão direito do mouse sobre o nome do projeto na árvore de arquivos e selecione a opção Exportar (Figura 2).
Figura 2 - Opções para exportar projetos
*.zip
, mantendo a mesma estrutura de arquivos.Abra a janela Exportar, conforme a Figura 2. Na nova janela (Figura 2.1), selecione a opção Exportar para repositório Git, clique em Avançar, preencha as informações da janela Versionar o projeto para um repositório Git e clique em Finalizar. Aguarde o progresso e verifique no seu repositório se o projeto foi exportado.
Acesse o tópico "Exportar projetos" da documentação Versionamento usando Git para detalhes sobre os campos da janela Versionar o projeto para um repositório Git. |
Figura 2.1 - Exportar para repositório Git
Abra a janela Exportar, conforme a Figura 2. Na nova janela (Figura 2.2), selecione a opção Biblioteca e clique em Finalizar.
Figura 2.2 - Exportar Biblioteca
Na janela Informações de Geração de Biblioteca, confira os dados apresentados e clique em OK para iniciar a compilação da biblioteca e, depois de algum tempo, iniciará automaticamente o download do arquivo *.jar
. Acesse a documentação Importar e exportar bibliotecas para mais detalhes.
Abra a janela Exportar, conforme a Figura 2. Na nova janela, selecione a opção Zip e clique em Finalizar. Após o processo, o download será feito automaticamente. Essa função também pode ser executada através da opção Baixar do menu de contexto na raiz do projeto (nome do projeto) na árvore de arquivos.
Figura 2.3 - Exportar para repositório Zip
Abra a opção Exportar, conforme a Figura 2. Na nova janela (Figura 2.4), selecione a opção Pacote para Deploy e clique em Finalizar para abrir a janela Opções da Geração de Pacote para Deploy, configure suas propriedades, clique em OK e aguarde o processamento. O download será feito automaticamente.
Figura 2.4 - Exportar Pacote de deploy do projeto
Janela Opções de Geração de Pacote para Deploy:
Tipo de Artefato: define o formato do artefato gerado.
O front-end mobile só será incluído no pacote ao selecionar a opção Exportar PWA. |
*.war
contendo todo o projeto (back-end e front-end). *.war
contendo apenas o back-end do projeto. *.war
contendo apenas o front-end do projeto. Zip Front-end: arquivo *.zip
contendo os arquivos estáticos do front-end.
Essa opção pode ser utilizada para publicar sem a necessidade de um servidor de aplicação como o tomcat, servindo diretamente ao nginx, por exemplo. |
Dockerfile
.*.war
, sendo necessário configurá-los posteriormente no servidor da aplicação.*.war
o diretório mobileapp/
com o conteúdo do projeto mobile. Esse recurso pode ser utilizado para o PWA. Mais detalhes na documentação Cronapp PWA.Ao selecionar essa opção na janela de Opções de Geração de Pacote para Deploy, o pacote sofrerá algumas alterações:
*.zip
.Dockerfile
será incluído dentro do arquivo compactado, junto com o artefato, e seu conteúdo será modificado com base nas opções selecionadas.Os arquivos run.bat
e run.sh
serão incluídos dentro do arquivo compactado, junto com o artefato. Eles possuem comandos docker para simplificar ainda mais a virtualização da aplicação.
bash run.sh |
Figura 2.5 - Configuração do pacote e o conteúdo compactado aberto após o download
Essa opção ficará ativa após habilitar a opção Dockerfile e permitirá a seleção de um dos certificados Let's Encrypts gerado e criado no Serviços de Cloud. Com isso, o pacote sofrerá algumas alterações:
fullchain.pem
e privkey.pem
serão incluídos dentro do arquivo compactado, junto com o artefato.Dockerfile
será modificado e apontará para os caminhos dos arquivos *.pem
.443
e redirecionando a porta 80
para ela.80
.Ao separar os artefatos do projeto em back-end e front-end, será possível manter duas publicações distintas se comunicando. Para isso, é necessário atender aos critérios abaixo:
Projetos Cronapp criados antes da versão 2.9.6-SP.44 precisam que o arquivo |
Caso o Perfil selecionado contenha um banco de dados local (H2), mesmo que não utilizado, e a opção Dados de Conexão Embutidos esteja marcada, uma mensagem de alerta será exibida. (Figura 2.6)
Figura 2.6 - Mensagem de confirmação de uso de banco de dados local
Ao clicar em Sim, a IDE irá criar um novo arquivo para o banco H2 no pacote *.war
da aplicação, não carregando os registros do banco de dados em ambiente de desenvolvimento.
É possível parametrizar as propriedades da janela Opções de Geração de war no comando Maven "mvn package
". Esses parâmetros são úteis para usuários que automatizam entregas/integração contínuas (CD/CI pipeline) através de ferramentas externas, como por exemplo, o Jenkins.
Os parâmetros extras do "mvn package" são:
*.war
contendo todo o projeto (back-end e front-end) (Padrão).*.war
contendo apenas o back-end do projeto. *.war
contendo apenas o front-end do projeto. *.zip
contendo os arquivos estáticos do front-end.Dockerfile
no arquivo compactado, junto com o artefato (true/false - Padrão: true).fullchain.pem
).privkey.pem
).Cada parâmetro deve ser precedido com "-D", como no exemplo abaixo:
mvn package -Dcronapp.profile=DEV -Dcronapp.populate=true -Dcronapp.useContext=true -Dcronapp.generationType=create-tables -Dcronapp.mobileapp=true -Dcronapp.artifactType=all -Dcronapp.dockerfile=true |
Para acessar a janela do terminal, clique no botão do menu do sistema (destaque 1 da figura 2.7) e em seguida clique no ícone do Terminal (2).
Figura 2.7 - Exportar o arquivo .war do projeto por linha de comando
No terminal, o comando deve ser executado a partir do diretório "~/ project/
" e o pacote gerado será encaminhado para o diretório "~/project/target/
", ficando acessível apenas via terminal.