javax.mail からメールを送信しています。
添付ファイル (PDF などの一部のファイル) を送信しています。
次のように、添付ファイルへのリンクをメール本文に追加したい:
親愛なるユーザー様、このリンク「ダウンロード」から添付ファイルのファイルをダウンロードできます。
私のコードは次のとおりです。
String cidLinks = "<br>";
int counter = 0;
for (String attachments : email.pathToAttachments) {
String cidData = "<data" + (counter) + ">";
MimeBodyPart mimeBodyPart = buildMimeBodyPart(attachments, cidData);
multipart.addBodyPart(mimeBodyPart);
counter++;
cidLinks += "<a href='cid:" + cidData + "'> " + mimeBodyPart.getFileName() + "</a>" + "<br>";
}
MimeBuilder は次のとおりです。
private MimeBodyPart buildMimeBodyPart(String path, String id) {
MimeBodyPart emailMemeBodyPart = new MimeBodyPart();
try {
DataSource source = new FileDataSource(path);
emailMemeBodyPart.setDataHandler(new DataHandler(source));
emailMemeBodyPart.setFileName(source.getName());
emailMemeBodyPart.setContentID(id);
} catch (Exception e) {
System.out.println("Err: " + e.getMessage());
}
return emailMemeBodyPart;
}
以下で生成されたリンクに問題があります:
cidLinks += "<a href='cid:" + cidData + "'> " + mimeBodyPart.getFileName() + "</a>" + "<br>";
メールのリンクをクリックしても、ファイルのダウンロードが開始されません。
添付ファイルのファイルは正常に送信されました。
手伝って頂けますか?どこに問題がありますか?添付ファイルからリンクでファイルをダウンロードするにはどうすればよいですか?
ありがとうございました。
注: メールの内容は有効な hmtl 形式です。