Envio de e-mail usando Aspose.Email Cloud no aplicativo Heroku Java

Este artigo ajuda você a configurar o Java App na Plataforma Heroku. Ele explica como usar o Aspose.Email Cloud para enviar e-mails usando um Java App na nuvem.

Heroku é uma plataforma como serviço (PaaS) que permite que desenvolvedores criem, executem e operem aplicativos inteiramente na nuvem. Ele suporta várias linguagens de programação, incluindo Java. O Heroku facilita a implantação e o dimensionamento de aplicativos Java. Quer você use as bibliotecas padrão com servidores de aplicativos como Tomcat ou Jetty, ou frameworks como Spring ou Play, o Heroku ajuda você a criar as coisas do seu jeito com as ferramentas que você ama. Este blog o orienta sobre como implantar um aplicativo Java no Heroku. O artigo ajuda você a entender o Aspose.Email Cloud e como usá-lo para enviar e-mails usando o aplicativo Heroku Java. O artigo pressupõe que você já tenha uma conta Heroku gratuita configurada e Java 8 e Maven 3 instalados localmente. O Maven é uma ferramenta poderosa de gerenciamento de projetos baseada em POM (modelo de objeto de projeto) principalmente para projetos Java. O Maven também pode ser usado para criar e gerenciar projetos escritos em C#, Ruby, Scala e outras linguagens. Ele é usado para criação, dependência e documentação de projetos. Ele simplifica o processo de criação como o ANT. Mas é muito mais avançado que o ANT. Resumindo, podemos dizer que o maven é uma ferramenta que pode ser usada para criar e gerenciar qualquer projeto baseado em Java. O maven facilita o trabalho diário dos desenvolvedores Java e geralmente ajuda na compreensão de qualquer projeto baseado em Java. Vamos começar!

Configurar Heroku

Para começar, você precisa primeiro instalar a Heroku Command Line Interface (CLI).A Heroku CLI é usada para gerenciar e executar várias tarefas de escalabilidade. Você pode usar isso para provisionar complementos, visualizar seus logs de aplicativos e executar seu aplicativo localmente. Se estiver usando macOS, você pode usar o Homebrew para instalá-lo ou pode visitar o Heroku oficial.

brew install heroku/brew/heroku

Após a instalação ser concluída, você pode executar o seguinte comando para autenticar o Heroku para ser usado localmente.

heroku login
heroku: Press any key to open up the browser to login or q to exit
 ›   Warning: If browser does not open, visit
 ›   https://cli-auth.heroku.com/auth/browser/\*\*\*
heroku: Waiting for login...
Logging in... done
Logged in as me@example.com

Este comando abre seu navegador para a página de login do Heroku para autenticação. Isso é necessário para que os comandos Heroku e git funcionem corretamente

Configurar Aspose.Email Cloud

Aspose.Email Cloud é um Cloud SDK para enviar, receber, anexar, sinalizar e converter e-mails na nuvem e suporte para criar uma estrutura de pastas para arquivamento de e-mails na nuvem. Esta é uma API fácil de usar e rápida, que não precisa instalar software adicional. A API suporta muitas linguagens de programação, como C#, Java, PHP, Python, Ruby e Typescript. Para configurar o Aspose.Email Cloud, siga as instruções abaixo.

Faça login no Aspose.Cloud Dashboard e clique na aba Applications na barra lateral esquerda. Agora role para baixo, clique no botão Create New Application, como mostrado na imagem abaixo.

Aspose.Email Cloud Configurar conta para envio de e-mail

Agora crie seu novo aplicativo selecionando seu armazenamento padrão, conforme mostrado na imagem abaixo. Você também pode configurar o armazenamento de terceiros para carregar seus arquivos de dados seguindo o guia como configurar o armazenamento em nuvem de terceiros.

Aspose.Email Cloud Configurar conta para envio de e-mail

Agora, role para baixo até a seção Credenciais do Cliente para copiar o ID do Cliente e o Segredo do Cliente, conforme mostrado na imagem abaixo.

Aspose.Email Cloud Configurar conta para envio de e-mail

Envio de e-mail usando Aspose.Email Cloud

Supondo que você já tenha instalado o Java 8 e o Maven 3. Agora você tem um repositório git funcional que contém um aplicativo simples. Este repositório Git funcional deve conter um aplicativo Java simples. O aplicativo inclui um Procfile, um arquivo de texto simples especial usado por aplicativos Heroku. Você declara explicitamente os processos e comandos usados para iniciar seu aplicativo neste arquivo.

O Procfile no código-fonte do aplicativo de exemplo se parece com isto:

web: java -jar target/java-getting-started-1.0.jar

Este arquivo declara um único tipo de processo, web, e o comando necessário para executá-lo. O nome web é importante. Ele declara que esse tipo de processo se conecta à pilha de roteamento HTTP do Heroku e é capaz de receber tráfego da web. Procfiles podem conter tipos de processo adicionais. Por exemplo, você pode declarar um trabalhador em segundo plano que processa itens de uma fila. O aplicativo de exemplo também deve incluir um arquivo pom.xml, que é usado pelo gerenciador de dependências do Java, Maven. O Heroku identifica automaticamente um aplicativo como um aplicativo Java se ele contiver um arquivo pom.xml no diretório raiz.

Outro arquivo, system.properties, indica a versão do Java a ser usada. O conteúdo desse arquivo opcional se parece com isso:

java.runtime.version=1.8

Primeiro adicione o repositório em seu projeto

<repository>
    <id>aspose-cloud</id>
    <name>Aspose.Cloud repository</name>
    <url>https://repository.aspose.cloud/repo</url>
</repository>

e então adicione a dependência

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-email-cloud</artifactId>
</dependency>

adicione o seguinte código no seu projeto para envio de e-mail

import com.aspose.email.cloud.sdk.invoker.ApiException;
import com.aspose.email.cloud.sdk.model.\*;
import com.aspose.email.cloud.sdk.api.\*;

EmailCloud api = new EmailCloud("Your Client secret", "Your Client id");

EmailClientAccountPasswordCredentials credentials =
    new EmailClientAccountPasswordCredentials(
        "example@gmail.com", "password");

// Setup an email account for email sending
EmailClientAccount sendAccountDto = new EmailClientAccount(
    "smtp.gmail.com", 465, "SSLAuto", "SMTP", credentials);
String smtpAccount = "smtp.account";
String smtpLocation = new StorageFileLocation(
    storageName, accountFolder, smtpAccount);
api.client().account().save(new ClientAccountSaveRequest(
    smtpLocation, sendAccountDto));

EmailDto email = new EmailDto()
    .from(new MailAddress().address("example@gmail.com"))
    .addToItem(new MailAddress().address("to@aspose.com"))
    .subject("Some subject")
    .body("Some body");

api.client().message().send(
    new ClientMessageSendRequest(
        smtpLocation, new MailMessageDto(email)));

Implantar no Heroku (aplicativo Java)

Depois de concluir todas as alterações e estar pronto para implantar no Heroku (aplicativo Java), você pode usar os seguintes comandos para enviar suas alterações ao Heroku.

$ heroku create
Creating sharp-rain-321... done, stack is heroku-20
https://sharp-rain-221.herokuapp.com/ | https://git.heroku.com/sharp-rain-321.git
Git remote heroku added

isso criará um repositório git no Heroku e tudo o que você enviar para esse repositório será implantado no aplicativo Java Heroku.

$ git push heroku main

Agora você pode abrir seu aplicativo usando o comando heroku open.

Conclusão

Este artigo faz parte de uma série que explica a plataforma Heroku e como ela permite que os desenvolvedores criem, executem e operem aplicativos inteiramente na nuvem. Também aprendemos como configurar um aplicativo Java Heroku. Também exploramos o Aspose.Email Cloud e usamos para configurar um cliente de e-mail SMTP para envio de e-mail. O Aspose.Email Cloud não serve apenas para enviar e-mails. Em vez disso, é um SDK em nuvem para enviar, receber, anexar, sinalizar e converter e-mails em nuvem e oferecer suporte para criar uma estrutura de pastas para arquivamento de e-mail na nuvem. Esta é uma API fácil de usar e rápida, que não precisa instalar software adicional. A API oferece suporte a muitas linguagens de programação, como C#, Java, PHP, Python, Ruby e Typescript. Espero que este artigo tenha ajudado você.

Explorar