Desconhecido <application/octet-stream>"

Boa tarde a todos.

Estou com um probleminha na classe abaixo.

Email email = AbstractEmailFactory.getInstance().createEmail();
StringBuffer sb = new StringBuffer(“Prezado Colaborador,”);
sb.append("\n");
sb.append(“Segue arquivo anexo.”);
sb.append("\n");
sb.append(“Atenciosamente,”);
email.setData(sb.toString());
email.setMailFrom("email.origem@empresa.com.br);
email.setMailTo("email.destino@empresa.com.br");
// GRAVAR O PDF DA ATA
File fPdf = new File(caminho+"/diretorio/arquivo.pdf");
FileOutputStream fos = new FileOutputStream(fPdf);
baosPDF.writeTo(fos);
baosPDF.close();
fos.close();
File[] f = null;
f = new File[]{ fPdf };
email.setFiles(f);
email.setSubject(“Ata de Reunião Diária”);
email.sendHTML();

Quando eu recebo o e-mail no nome do arquivo não vai “arquivo.pdf” e sim “Desconhecido <application/octet-stream>”.

Saberiam dizer o que pode ser?

Grato.
Abs.

Essa classe Email é de qual framework? Qual pacote?

mail.jar

Cara, talvez isso ajude.
Aparentemente, você não define o nome do arquivo em momento nenhum.

Darlan,

Eu uso a classe Email e não tem esse método.

Email email = AbstractEmailFactory.getInstance().createEmail();

Grato.

OK, e esse tal de mail.jar foi obtido onde?
Qual o pacote dessa classe Email?

Até hoje sempre enviei email com anexo utilizando a API JavaMail com as seguintes classes:

  • javax.mail.Message;
  • javax.mail.internet.MimeMultipart;
  • javax.mail.Transport;

Qual o pacote da classe AbstractEmailFactory?
Que API é essa, onde você a obteve?

o pacote é " org.apache.commons.mail" baixei da internet

Eu ainda vou entender por que as pessoas pegam ferramentas que nunca firam e saem usando, sem sequer olharem a documentação.

1 curtida

Legal, procure sempre dar esses detalhes quando tem dúvida. :wink:

Há alguns dias perguntei qual era o pacote e você respondeu mail.jar, isso não é um nome de pacote… :expressionless:

O arquivo mail.jar é o JAR da API JavaMail a qual não tem a classes Email e AbstractEmailFactory.

Não tenho como adivinhar de qual endereço na internet, concorda? :wink:

Um dos grandes enigmas da humanidade.

Eu uso a Apache Commons Mail, você pode a classe HtmlEmail para gerar um email formatado com html/css ou sem formatação com SimpleEmail

Email email = new SimpleEmail();

ou

HtmlEmail email = new HtmlEmail();

De onde você tirou esse seu código de e-mail?