Tag: javamail

在java中将文件作为附件发送

我有一个java代码,我必须发送一个附件 ,它可能是.doc,.db或.file 。 因此,我使用以下代码,消息已成功传递,特定附件文件未发送和接收。 我的代码是: import java.util.Date; import java.util.Properties; import javax.activation.DataHandler; import javax.activation.FileDataSource; import javax.mail.Message; import javax.mail.Message.RecipientType; import javax.mail.MessagingException; import javax.mail.Multipart; import javax.mail.Session; import javax.mail.Transport; import javax.mail.internet.AddressException; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeBodyPart; import javax.mail.internet.MimeMessage; import javax.mail.internet.MimeMultipart; public class SendEmail { private String from = “example1@gmail.com”; private String to; private String subject; private String text; String filename […]

如何配置环境以使用JavaMail?

我需要用JavaMail发送简单的html消息。 当我试图在互联网上找到一些有解释的好例子时,每个下一个例子都让我更生气和愤怒。 所有这些愚蠢的例子都包含复制和粘贴的Java代码,这些代码仅在注释和一个不错的免责声明中有所不同,首先你应该配置你的smtp和pop3服务器。 我知道没有人想为某些具体产品做广告,但配置服务器是最难的部分。 那么,任何人都可以给我一些关于配置具体服务器(例如Kerio,或任何其他服务器)的非常有用的信息(没有java代码)吗? 我现在拥有的是下一个例外: 250 2.0.0 Reset state javax.mail.SendFailedException: Invalid Addresses; nested exception is: com.sun.mail.smtp.SMTPAddressFailedException: 550 5.7.1 Relaying to denied (authentication required) UPD。 所有以前的文本的简单重新构造是:想象你有Windows,jdk,没有别的。 你想制作java程序并在你的机器上运行它。 而这个程序应该发送“Hello world!” 到你的Gmail帐户。 列出你的步骤。 UPD2。 这是代码: Properties props = new Properties (); props.setProperty (“mail.transport.protocol”, “smtp”); props.setProperty (“mail.host”, “smtp.gmail.com”); props.setProperty (“mail.user”, “my_real_address_1@gmail.com”); props.setProperty (“mail.password”, “password_from_email_above”); Session mailSession = Session.getDefaultInstance […]

当“允许不太安全的应用程序:关闭”时,如何将邮件发送到Gmail

我可以用java发送邮件到gmail,当“ Allow less secure apps: ON ”时(你可以在这里找到代码)。但是当“允许安全性较低的应用程序:关闭”时出现错误。 请给我适当的步骤来解决这个问题。 错误: 534-5.7.14 Please log in via your web browser and 534-5.7.14 then try again. 534-5.7.14 Learn more at 534 5.7.14 https://support.google.com/mail/answer/78754 ud10sm34016765pab.27 – gsmtp 我如何得到令牌: 第1步:我在google开发者控制台中创建了服务帐户。 第2步:接下来,通过使用此服务帐户,我获得了令牌。 下面,您可以找到代码。 第3步:如何使用此令牌发送邮件到Gmail? 请指导我。请知道我是新手。 指导我,如果我错了 String emailAddress = “XXXX@XXXX.XX.gserviceaccount.com”; JsonFactory JSON_FACTORY = JacksonFactory.getDefaultInstance(); HttpTransport httpTransport; try { httpTransport = GoogleNetHttpTransport.newTrustedTransport(); GoogleCredential […]

javax.mail.MessagingException:

package com.mca2b; import java.util.Properties; import javax.mail.util.*; import javax.mail.*; import javax.mail.internet.*; import javax.activation.*; public class SampleMail { public static void main(String [] args) throws Exception{ String to = “kalgaonkarsiddhesh@gmail.com”;//change accordingly String from = “siddhesh.kalgaonkar@ves.ac.in”;//change accordingly String host = “localhost”;//or IP address // Get system properties Properties properties = System.getProperties(); // Setup mail server properties.setProperty(“mail.smtp.host”, host); // […]

javax.mail.internet.ParseException:在Content-Type字符串中,期望’/’,得到:

我想使用JSF实现附加文件的邮件。 我试过这段代码: private Part file; private String sendFromGMail(String from, String pass, String[] to, String subject, String body) { String status; Properties props = System.getProperties(); String host = “smtp.gmail.com”; props.put(“mail.smtp.starttls.enable”, “true”); props.put(“mail.smtp.host”, host); props.put(“mail.smtp.user”, from); props.put(“mail.smtp.password”, pass); props.put(“mail.smtp.port”, “587”); props.put(“mail.smtp.auth”, “true”); Session session = Session.getDefaultInstance(props); MimeMessage message = new MimeMessage(session); try { message.setFrom(new InternetAddress(from)); InternetAddress[] toAddress […]

使用Java Mail API保存电子邮件(包括图像和HTML数据)的最佳方法?

我正在寻找保存包含内嵌图像和HTML内容的电子邮件正文的最佳方法。 我想保留邮件中包含的所有内容。 我的最终目标是将完整的电子邮件正文保存为PDF 如果有直接的方式将电子邮件正文写入PDF? 如果不是什么是保存电子邮件的最佳格式? 我可以使用其他一些可用的API将HTML,DOC等转换为PDF。 private void downloadAttachment(Part part, String folderPath) throws Exception { String disPosition = part.getDisposition(); String fileName = part.getFileName(); String decodedText = null; logger.info(“Disposition type :: ” + disPosition); logger.info(“Attached File Name :: ” + fileName); if (disPosition != null && disPosition.equalsIgnoreCase(Part.ATTACHMENT)) { logger.info(“DisPosition is ATTACHMENT type.”); File file = new […]

java mail polling从邮件中读取内联或嵌入的图像(表情符号)

我是java邮件轮询的新手,如果用户向对方发送邮件,我会创建一种类型的会话应用程序,然后我从他们那里读取邮件并在对话中作为新邮件发布。 现在的问题是,如果有笑脸,内联或嵌入图像该怎么办。 例如在gmail邮件中我们也可以发送表情符号,现在如何阅读那个微笑并发布到页面上。 请给我一些适当的解决方案。

使用javamail API阅读邮件时的阿拉伯语内容问题

我正在使用Javamail API从Gmail服务器读取邮件。 我正在发送一封包含gmail id阿拉伯语内容的邮件到另一个Gmail ID。 邮件的Charset编码类型是windows-1256。 当我使用Javamail下载邮件时,我收到的内容是“??????” 格式而不是阿拉伯字符。 我将下载的内容转换为UTF-8格式,但仍未获得正确的显示。 提前致谢, 蒂姆 更新: 我使用以下代码来获取内容: Object content = message.getContent(); if (message.isMimeType(“text/html”) || message.isMimeType(“text/plain”)) { Al = (String) content; } 下载内容后,以下代码用于UTF-8编码: byte[] utf8Bytes = s.getBytes(“UTF-8”); s = new String(utf8Bytes, “UTF-8”); 更新:我目前用于阅读邮件内容的完整代码 String gmailMultipartMailDownload(Multipart multipart, String Uids) throws SocketException, UnsupportedDataTypeException, UnsupportedEncodingException { String Content = new String(“”); try { […]

如何使用groovy将html模板作为邮件发送

我正在使用JavaMail API 1.4.4发送邮件。 到目前为止,我能够发送邮件,但实际上我需要发送HTML内容,以便在收到邮件时处理html标签。 示例:如果我的消息中有表格代码,则应处理html代码并将其显示在邮件中 我的代码 import java.io.File; import java.util.* import javax.mail.* import javax.mail.internet.* import javax.activation.* class Mail { static void sendMail(mailProp) { // Get system properties Properties properties = System.getProperties() // Setup mail server properties.setProperty(“mail.smtp.host”, mailProp.host) // Get the default Session object. Session session = Session.getDefaultInstance(properties) try { // Create a default MimeMessage object. […]

如何使用MimeMultipart的JavaMail覆盖默认的唯一边界字符串并创建自己的边界?

我有一个我使用的网络应用程序,它需要一个特定的边界字符串(“公司mime边界”)。 当我这样做时,我没有找到覆盖MimeMultipart默认行为的方法 Multipart mp = new MimeMultipart(); 一个唯一的边界字符串总是由构造函数创建,我想覆盖此行为以拥有自己的边界字符串,但由于我没有找到任何API,因此无法执行此操作。 即使我在内容类型中设置它,它也不起作用并且创建一个唯一的边界字符串,因为MimeMultipart正在创建一个默认的边界字符串。 mimeMsg.setHeader(“Content-Type”,”multipart/mixed;boundary=”company mime boundary”); 任何人都可以建议/帮助我。 如何覆盖此默认行为?