Função buscar anexo no email

Bom dia pessoal, poderia me ajudar por favor, eu fiz uma função onde busca anexos dentro do email, mais esta dando erro, na verdade trabalho com plataforma maker onde programação feito por fluxos mais eu tenho opção de fazer o codigo em java, poderia me ajudar onde estou errando, eu tinha pesquisado antes ja fiz codigo baseado no topico que eu encontrei aqui.

protected final Variant ebfEmailGetMessageAttachment(Variant messageVar) throws Exception{
    Object messageObj = messageVar.getObject();
    if (!(messageObj instanceof javax.mail.Message)) {
      return Variant.VARIANT_NULL;
    }
    javax.mail.Message message = (javax.mail.Message) messageObj;
    String subject = message.getSubject();
    String attachFiles = "";
    String contentType = message.getContentType();
    String messageContent = "";
    if (contentType.contains("multipart")) {
        Multipart multiPart = (Multipart) message.getContent();
        int numberOfParts = multiPart.getCount();
            for (int partCount = 0; partCount < numberOfParts; partCount++) {
                MimeBodyPart part = (MimeBodyPart) multiPart.getBodyPart(partCount);
                   if (Part.ATTACHMENT.equalsIgnoreCase(part.gprotected final Variant ebfEmailGetMessageAttachment(Variant messageVar) throws Exception{
    Object messageObj = messageVar.getObject();
    if (!(messageObj instanceof javax.mail.Message)) {
      return Variant.VARIANT_NULL;
    }
    javax.mail.Message message = (javax.mail.Message) messageObj;
    String subject = message.getSubject();
    String attachFiles = "";
    String contentType = message.getContentType();
    String messageContent = "";
    if (contentType.contains("multipart")) {
        Multipart multiPart = (Multipart) message.getContent();
        int numberOfParts = multiPart.getCount();
            for (int partCount = 0; partCount < numberOfParts; partCount++) {
                MimeBodyPart part = (MimeBodyPart) multiPart.getBodyPart(partCount);
                   if (Part.ATTACHMENT.equalsIgnoreCase(part.getDisposition())) {
                    String fileName = part.getFileName();
                    attachFiles += fileName + ", ";
                    part.saveFile(saveDirectory + File.separator + fileName);
                } 
                else 
                {
                    messageContent = part.getContent().toString();
                }
               }
                 if (attachFiles.length() > 1) {
                    attachFiles = attachFiles.substring(0, attachFiles.length() - 2);
                }
    } 
    else if (contentType.contains("text/plain") || contentType.contains("text/html")) {
           Object content = message.getContent();
            if (content != null) {
                messageContent = content.toString();
            }
    }

    return attachFiles;
  }etDisposition())) {
                    String fileName = part.getFileName();
                    attachFiles += fileName + ", ";
                    part.saveFile(saveDirectory + File.separator + fileName);
                } 
                else 
                {
                    messageContent = part.getContent().toString();
                }
               }
                 if (attachFiles.length() > 1) {
                    attachFiles = attachFiles.substring(0, attachFiles.length() - 2);
                }
    } 
    else if (contentType.contains("text/plain") || contentType.contains("text/html")) {
           Object content = message.getContent();
            if (content != null) {
                messageContent = content.toString();
            }
    }

    return attachFiles;
  }

Qual o erro?

erro de compilção

Eu criei outra conta pois não conseguia responder,nao sei por que enfim… está dando erro de compilação

Erros de compilação podem ser gerados por uma série de coisas, a priori, as possibilidades são:

  • Uso de classes que não foram importadas
  • Invocar métodos que não existem em determinada classe
  • Atribuição de valores diferentes dos que são esperados (ex. setar String em variável Date)

Então, estes são os primeiros pontos a serem analisados.

certo entendi, vou analisar, qualquer coisa do um feedback obrigado pela atenção

Você está usando alguma IDE específica para java? Se sim, toda IDE indica qual a linha onde tem o erro.
Se não, está compilando como? Se for pelo prompt, ele também indica a linha com erro.
Isso ajudaria a filtrar o problema.

na verdade trabalho com fluxo grama por tras esta os codigos java tendel eu compilo ele usando webrun

esse campo esse fluxo obter anexo, por tras dele esta essa função que postei aqui tendel?

O código que você postou tem muitos erros de sintaxe.
Tem pedaços de declaração de método perdidas no meio do código, veja:

if (Part.ATTACHMENT.equalsIgnoreCase(part.gprotected final Variant ebfEmailGetMessageAttachment(Variant messageVar) throws Exception{

Você copiou isso de onde?
Outra pergunta, esse tipo de dado Variant é alguma classe sua?

Abaixo um exemplo que talvez seja mais simples pra você:

public void salvarAnexosNaPasta(Message mensagem, File pasta) throws Exception {
    String tipoDeConteudo = mensagem.getContentType();
    if (!tipoDeConteudo.contains("multipart")) {
        return; // não há anexos
    }
    Multipart conteudo = (Multipart) mensagem.getContent();
    int partes = conteudo.getCount();
    for (int i = 0; i < partes; i++) { // iterar as partes e extrair os anexos
        MimeBodyPart parte = (MimeBodyPart) conteudo.getBodyPart(i);
        if (!Part.ATTACHMENT.equalsIgnoreCase(parte.getDisposition())) {
            continue; // essa parte não é um anexo
        }
        String nomeDoArquivo = parte.getFileName();
        File arquivo = new File(pasta, nomeDoArquivo);
        parte.saveFile(arquivo); // salvando o anexo em disco
    }
}