java发送会议邀请邮件模板_使用java发送每封电子邮件的日历邀请
我正在尝试使用
java发送每封电子邮件的日历邀请.收件人收到电子邮件,但该活动不会显示接受或拒绝的邀请,而是自动添加到他的日历中.
我正在使用ical4j.jar构建活动/邀请
private Calendar getInvite(Session session) {
Calendar calendar = new Calendar();
calendar.getProperties().add(Version.VERSION_2_0);
calendar.getProperties().add(Method.REQUEST);
VEvent event = new VEvent(
new DateTime(sesion.getStartDate()),
new DateTime(sesion.getEndDate()),
session.getName());
event.getProperties().add(Priority.MEDIUM);
event.getProperties().add(Clazz.PUBLIC);
try {
UidGenerator ug = new UidGenerator("uidGen");
Uid uid = ug.generateUid();
event.getProperties().add(uid);
} catch (SocketException e) {
// Log things
}
for (Participant participant : session.getParticipants()) {
Attendee attendee = new Attendee(URI.create("mailto:" + participant.getEmail()));
attendee.getParameters().add(Role.OPT_PARTICIPANT);
attendee.getParameters().add(new Cn(participant.getName()));
attendee.getParameters().add(PartStat.NEEDS_ACTION);
event.getProperties().add(attendee);
}
calendar.getComponents().add(event);
return calendar;
}
这就是我发送电子邮件的方式:
public void sendEmail(String fromMail, String toMail, String subject, String text, net.fortuna.ical4j.model.Calendar calendar) {
try {
Session session = Session.getInstance(getMailProperties(), new javax.mail.Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(getUser(), getPassword());
}
});
MimeMessage mimeMessage = new MimeMessage(session);
mimeMessage.setHeader("Content-Transfer-Encoding:", "7bit");
Address address = new InternetAddress(fromMail);
mimeMessage.setFrom(address);
mimeMessage.setSentDate(Calendar.getInstance().getTime());
mimeMessage.setRecipients(Message.RecipientType.TO, toMail);
mimeMessage.setSubject(subject);
Calendar cal = Calendar.getInstance();
mimeMessage.setSentDate(cal.getTime());
Multipart multipart = new MimeMultipart("alternative");
// First part - HTML readable text
MimeBodyPart msgHtml = new MimeBodyPart();
msgHtml.setContent(text, "text/html; charset=UTF-8");
multipart.addBodyPart(msgHtml);
if (calendar != null) {
// Another part for the calendar invite
MimeBodyPart invite = new MimeBodyPart();
invite.setHeader("Content-Class", "urn:content- classes:calendarmessage");
invite.setHeader("Content-ID", "calendar_message");
invite.setHeader("Content-Disposition", "inline");
invite.setContent(calendar.toString(), "text/calendar");
multipart.addBodyPart(invite);
}
mimeMessage.setContent(multipart);
Transport.send(mimeMessage);
} catch (Exception e) {
// Log things
}
}
但是当我收到电子邮件(在Gmail中)时,我看不到邀请,该事件会自动添加到我的日历中.我只能通过点击日历中的活动来接受或拒绝.
我试图发送邀请,然后发生的是我收到一封带有ics附件的电子邮件.
我错过了什么?
java发送会议邀请邮件模板_使用java发送每封电子邮件的日历邀请相关推荐
- java 发送会议邮件模板_使用javamail发送会议邀请
网上找了很多关于javamail发送会议请求的文章,终于成功了,没有使用ical4j,发送的outlook直接打开就是一个会议请求,而不是以附件的形式存在.具体的注意点在代码中以注释的形式标明. DE ...
- outlook邮件模板_在Outlook 2003中创建电子邮件模板
outlook邮件模板 If you have an email you send out every day that contains the same information, or a for ...
- java发送会议邀请邮件模板_java mail text/calendar格式会议邀请邮件,网页版邮箱接收到的邮件内容无法换行...
java中用mail进行会议邀请邮件(text/calendar格式)的发送,客户端邮箱正常显示,网页版邮箱正文部分无法换行如何解决buffer.append("BEGIN:VCALENDA ...
- Java发送会议邮件 时区_【上海校区】基于JavaMail的日历(会议)邮件发送实现
[Java] 纯文本查看 复制代码/** * 发送会议邀请邮件 * * @param toMailAddress 收件人(邀约人),支持多个 * @param mailSubject 邮件主题 * @ ...
- outlook邮件模板_如何在Microsoft Outlook中创建和使用电子邮件模板
outlook邮件模板 Email templates in Microsoft Outlook are easy to create, but not so easy to navigate to ...
- java写新闻模板_基于java新闻发布及管理系统
基于java新闻发布及管理系统 java 2020-10-18 下载地址 https://www.codedown123.com/44681.html Java新闻发布系统新闻发布及管理系统就是一个能 ...
- java制作一个简单的画板_【Java】Thymeleaf一个简单示例
Thymeleaf简单介绍 Thymeleaf是用来开发Web和独立环境项目的服务器端的Java模版引擎 Spring官方支持的服务的渲染模板中,并不包含jsp.而是Thymeleaf和Freemar ...
- java下列语句正确的是_下列Java语句中,不正确的一项是( )。
[多选题]装卸搬运机械具有( )功能 [判断题]char[] str="abcdefgh"; ( ) [单选题]7.关于内部类,下列说法不正确的是( ). [单选题]下列关于Jav ...
- java web开源项目源码_适合Java新手的开源项目集合——在 GitHub 学编程
作者:HelloGitHub-老荀 当今互联网份额最大的编程语言是哪一个?是 Java!这两年一直有听说 Java 要不行了.在走下坡路了.没错,Java 的确在走下坡路,未来的事情的确不好说,但是瘦 ...
最新文章
- XAML实时显示更新插件LiveXAML
- 【Cocos2dx开发】精灵
- 控制台上的内容不输入到nohup.out
- Mysql的库与表的基本操作
- 我们真正需要的目标(原名:制定目标你会吗?)
- ==、Equals 、ReferenceEquals它们的异同
- 20155313 2016-2017-2《Java程序设计》课程总结
- docker run参数-v的rw、ro详解
- 学习笔记:Github(1)站在巨人的肩膀上
- 服务器linux攻击方法,Linux操作系统中实现DDOS攻击的方法
- 公共基础知识:地震逃生注意事项
- 今天找压缩算法,看到一段陈年往事
- promise解决回调地狱(callback hell)
- 中国“钱”途最光明10所大学
- 搭建springcloud微服务下的网关Netfilx Zuul
- R语言重复测量方差分析的多重比较
- C51单总线时序图分析与底层编程配置(DS18B20为例)
- 机票报价高并发实施的关键路径
- CentOS下用rinetd做端口转发
- InternetDownloadManager6.38.1(IDM)