- 浏览: 175363 次
- 性别:
- 来自: 苏州
文章分类
- 全部博客 (87)
- Android (7)
- J2EE (34)
- JavaScript (6)
- CSS (1)
- Scala (0)
- WEB (5)
- Ruby (1)
- J2EE Netbeans JDK (1)
- Maven (2)
- AndroidMenuTest (0)
- ExtJS (1)
- MyBatis (4)
- iBatis (3)
- Quartz (1)
- JavaABC (3)
- HTML (1)
- JQuery (2)
- mysql (3)
- Linux (2)
- windows (1)
- ant (2)
- jboss (1)
- eclipse (1)
- junit (1)
- nginx (1)
- Google (0)
- git (2)
- python (1)
- kafka (1)
- sqlserver (1)
- jdk8+ (1)
mail局域网Exchange服务器测试代码,仅限发送到domain内用户,发送外网需要exchange设置白名单,ref:
解决方案:
未加入白名单IP发送时,外网邮箱会提示:
解决方案:
Exchange 2003: Open the Exchange System Manager Go in Administrative Groups -> Administrative group name -> Server -> Server name -> Protocols -> SMTP Right click on Default SMTP Virtual Server -> properties Access tab -> Relay button Select "only the list below" and add the domain and\or IPs of your JIRA server Exchange 2007: For Exchange 2007, create a second receive connector for external addresses as described in 2007[url=https://confluence.atlassian.com/display/JIRA/How+to+Set+Up+SMTP+Relay+in+Exchange+2007]How to Set Up SMTP Relay in Exchange [/url]. (info) Check Microsoft's [url=http://msexchangeteam.com/archive/2006/12/28/432013.aspx]Exchange Archive[/url] as well. Office 365: Check [url=http://support.microsoft.com/kb/2572646]Microsoft's KB[/url] article on this.
package com.test.mail; import java.util.Date; import java.util.Properties; import javax.mail.BodyPart; import javax.mail.Message; import javax.mail.MessagingException; import javax.mail.Multipart; import javax.mail.Session; import javax.mail.Transport; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeBodyPart; import javax.mail.internet.MimeMessage; import javax.mail.internet.MimeMultipart; public class MailTest { private String host; private String auth; private String username; private String domainUser; private String password; public MailTest(String host, String auth, String domainUser, String username, String password) { super(); this.host = host; this.auth = auth; this.domainUser = domainUser; this.username = username; this.password = password; } public boolean send(String[] to, String[] cc, String[] bcc, String subject, String content) throws MessagingException { Properties props = new Properties(); props.put("mail.smtp.host", this.host); props.put("mail.smtp.auth", this.auth); Session s = Session.getInstance(props); s.setDebug(true); MimeMessage message = new MimeMessage(s); InternetAddress from = new InternetAddress(this.username); message.setFrom(from); InternetAddress[] Toaddress = new InternetAddress[to.length]; for (int i = 0; i < to.length; i++) { Toaddress[i] = new InternetAddress(to[i]); } message.setRecipients(Message.RecipientType.TO, Toaddress); if (cc != null) { InternetAddress[] Ccaddress = new InternetAddress[cc.length]; for (int i = 0; i < cc.length; i++) { Ccaddress[i] = new InternetAddress(cc[i]); } message.setRecipients(Message.RecipientType.CC, Ccaddress); } if (bcc != null) { InternetAddress[] Bccaddress = new InternetAddress[bcc.length]; for (int i = 0; i < bcc.length; i++) { Bccaddress[i] = new InternetAddress(bcc[i]); } message.setRecipients(Message.RecipientType.BCC, Bccaddress); } message.setSubject(subject); message.setSentDate(new Date()); BodyPart mdp = new MimeBodyPart(); mdp.setContent(content, "text/html;charset=utf-8"); Multipart mm = new MimeMultipart(); mm.addBodyPart(mdp); message.setContent(mm); message.saveChanges(); Transport transport = s.getTransport("smtp"); transport.connect(this.host, (null == this.domainUser) ? this.username : this.domainUser, this.password); transport.sendMessage(message, message.getAllRecipients()); transport.close(); return true; } public static void main(String[] args) { try { MailTest mailTest = new MailTest("edgeexc.xxxx.com", "true", "SSICN\\vince.carter", "devtest@xxxx.cn", "pwdtest"); mailTest.send( new String[] { "vince.carter@xxxx.cn" }, null, null, "Test smtp server", "<h3>Test exchange server sending mail to normal mail servers like: domain, qq, gmail, 163.</h3>"); } catch (MessagingException e) { e.printStackTrace(); } } }
未加入白名单IP发送时,外网邮箱会提示:
DEBUG SMTP: Valid Unsent Addresses DEBUG SMTP: vince.feng@xxxx.cn DEBUG SMTP: tomy.locus@xxxx.cn DEBUG SMTP: Invalid Addresses DEBUG SMTP: 8888@qq.com DEBUG SMTP: Sending failed because of invalid destination addresses RSET 250 2.0.0 Resetting javax.mail.SendFailedException: Invalid Addresses; nested exception is: com.sun.mail.smtp.SMTPAddressFailedException: 550 5.7.1 Unable to relay;
发表评论
-
日志过滤小工具
2020-01-06 20:15 4521.从全量日志中截断部 ... -
GC参考手册
2017-11-09 14:12 549英文版原文:GC Tuning: In Practice 垃圾 ... -
IDENTITY_INSERT 设置为 OFF 时无法指定插入自增ID
2017-02-15 16:10 660IDENTITY_INSERT 设置为 OFF 时,无法指定I ... -
运行时Exception:Wrong return type in function
2015-11-17 21:31 1524D:\Soft\jdk1.7.0_79\bin\java ... -
Java中的常量:如何避免反模式
2015-10-20 20:41 447参考http://www.importnew.com/1670 ... -
java Socket通信小栗子
2015-09-14 09:25 612server端: package com.test.soc ... -
MyBatis 自动生成xml文件
2015-03-12 11:22 3798package com.test.mybatis; ... -
Java Concurrency / Multithreading Tutorial
2014-10-28 09:35 703Java Concurrency / Multithreadi ... -
Comparison method violates its general contract!
2014-10-22 17:24 959jdk1.6升级到1.7后Comparator有null的参数 ... -
JDK1.7 不兼容compare方法
2014-10-21 16:20 786java.lang.IllegalArgumentExcept ... -
Unknown Source的出现及解决
2014-06-18 10:03 929http://www.2cto.com/kf/201103/8 ... -
ApplicationDeadlockException
2014-06-16 15:39 783参考 : How to avoid huge transact ... -
Java Date相关处理
2014-02-26 14:35 6061.获取UTC时间: Calendar c ... -
Error listenerStart
2013-12-11 19:25 728INFO: Deploying web applicati ... -
Error configuring application listener of class org.springframework.web.context.
2013-12-07 18:54 38181如果Eclipse的BuildPath里面不缺jar包并且在 ... -
iReport字体报错“JRFontNotFoundException”
2013-10-11 11:08 12796net.sf.jasperreports.engine.uti ... -
Eclipse里Jboss的配置
2013-07-15 17:41 9591.\WorkSpace\.metadata\.plugins ... -
Ant安装使用入门
2013-07-04 14:03 568下载Ant之后,增加环境变量1.ANT_HOME=xx/xx/ ... -
javaSystem获取系统信息
2013-03-27 16:30 807public static void main(Strin ... -
设计模式学习笔记
2013-03-22 18:01 839简单工厂,策略模式,单一职责,开放封闭,依赖倒转 装饰模式,代 ...
相关推荐
JavaMailTest是一个典型的Java应用程序,用于演示如何使用JavaMail API发送电子邮件。在本文中,我们将深入探讨JavaMail API,理解其工作原理,并通过一个实际的JavaMailTest示例来学习如何编写邮件发送代码。 ...
在“JavaMailTest111.7z”这个压缩包中,我们可以推测它包含了一个新手教程或者示例项目,用于演示如何使用JavaMail API来实现QQ邮箱和163邮箱的邮件发送与接收,以及附件的下载功能。 在JavaMail的使用过程中,...
这个“javamailtest带附件”可能是某个示例项目或教程,展示了如何使用JavaMail API来发送带有附件的电子邮件。下面将详细讨论JavaMail API以及如何在其中添加附件。 1. **JavaMail API基础**: JavaMail API 是...
JavaMailTest是一个典型的Java应用程序,主要用于学习和实现电子邮件的发送功能。这个项目是为初学者设计的,通过清晰、简洁的代码帮助理解如何在Java中使用JavaMail API进行邮件通信。下面将详细介绍JavaMail API...
message.setSubject("Java Mail Test"); // 主题 message.setText("你好,这是一封来自Java Mail的测试邮件。"); // 正文 // 发送邮件 Transport.send(message); System.out.println("邮件已发送成功!"); } ...
message.setText("This is a test email sent using Java Mail."); Transport transport = session.getTransport("smtp"); transport.connect("smtp.example.com", "username", "password"); transport....
message.setSubject("Java Mail Test"); message.setText("Hello, this is a test email sent from Java using the JavaMail API."); ``` 这里,"recipient@example.com"是收件人的邮箱地址,你可以根据实际需要进行...
String subject = "Java Mail Test"; String body = "Hello, this is a test email sent using JavaMail API."; Properties props = System.getProperties(); props.put("mail.smtp.starttls.enable", "true");...
message.setSubject("Java Mail Test"); message.setText("This is a test email sent using JavaMail API."); ``` 最后,通过`Transport`类发送邮件: ```java Transport.send(message); System.out.println(...
在这个Java项目"JavaMailTest-master"中,我们可以学习如何使用JavaMail API来实现邮件的发送。 首先,发送邮件的基本流程包括以下几个步骤: 1. **配置邮件服务器**:JavaMail需要知道SMTP(Simple Mail Transfer...
Java Mail 是一个强大的Java库,用于处理电子邮件的发送和接收。这个库提供了全面的API,使得开发者能够方便地实现SMTP(简单邮件传输协议)、POP3(邮局协议)和IMAP(因特网消息访问协议)等邮件服务。在Java应用...
在JavaMailTest项目中,可能包含了一个或多个jar文件,如`javax.mail.jar`, `mail.jar`以及`activation.jar`。这些库包含了发送邮件所需的所有类和接口。 要发送一封邮件,你需要完成以下步骤: 1. **创建Session...
2. JavaMailtest 是一个javamail程序,可以发送邮件. 3. 更新的网上商城-数据库脚本.sql 是数据库脚本,在sql 2000的查询分析器运行即可 a注意:确保你的sql 2000中没有testdb3数据库 b注意:执行后,有一个错误...
JavaMailTest.zip //15.JavaMail邮件服务开发样例 WebServiceTest.zip //16.Web服务开发样例 DroolsTest.zip //20.Drool规则引擎开发样例 AcegiTest.zip //24.Acegi安全验证开发样例 (3)企业信息管理...
JavaMailTest.zip //15.JavaMail邮件服务开发样例 WebServiceTest.zip //16.Web服务开发样例 DroolsTest.zip //20.Drool规则引擎开发样例 AcegiTest.zip //24.Acegi安全验证开发样例 (3)企业信息管理...
JavaMailTest.zip //15.JavaMail邮件服务开发样例 WebServiceTest.zip //16.Web服务开发样例 DroolsTest.zip //20.Drool规则引擎开发样例 AcegiTest.zip //24.Acegi安全验证开发样例 (3)企业信息管理...
JavaMailTest.zip //15.JavaMail邮件服务开发样例 WebServiceTest.zip //16.Web服务开发样例 DroolsTest.zip //20.Drool规则引擎开发样例 AcegiTest.zip //24.Acegi安全验证开发样例 (3)企业信息管理...
在`JavamailTest.java`文件中,你可以看到这些步骤的具体实现,包括可能的异常处理和自定义逻辑。通常,这个测试类会包含一个主方法,以便于直接运行测试邮件的发送。 总的来说,JavaMail API是Java开发者处理邮件...
至于"压缩包子文件的文件名称列表"中只有一个条目:JavaMailTest,这可能是一个测试类,用于测试JavaMail API的功能。在实际开发中,开发者会创建这样的测试代码来验证邮件发送、接收或其他相关操作是否正确无误。...
2. JavaMailtest 是一个javamail程序,可以发送邮件. 3. 更新的网上商城-数据库脚本.sql 是数据库脚本,在sql 2000的查询分析器运行即可 a注意:确保你的sql 2000中没有testdb3数据库 b注意:执行后,有一个错误...