栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何使用Java Mail发送iCal会议请求并接收响应

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何使用Java Mail发送iCal会议请求并接收响应

所以我解决了这个问题,这是我发现的:

1-您必须更新到Java Mail API 1.4.2,才能使一切正常运行

2-编写消息的文本/日历部分,如下所示:

package com.xx.xx;import java.util.Properties;import javax.mail.*;import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeBodyPart;import javax.mail.internet.MimeMessage;import javax.mail.internet.MimeMultipart;import javax.mail.util.ByteArrayDataSource;public class Email {    public Email() {    }        public static void main(String[] args) {        try { Email email = new Email(); email.send();        } catch (Exception e) { e.printStackTrace();        }    }    public void send() throws Exception {        try { String from = "xx@xx.com"; String to = "xx@xx.com"; Properties prop = new Properties(); prop.put("mail.smtp.host", "mailhost"); Session session = Session.getDefaultInstance(prop, null); // Define message MimeMessage message = new MimeMessage(session); message.addHeaderLine("method=REQUEST"); message.addHeaderLine("charset=UTF-8"); message.addHeaderLine("component=VEVENT"); message.setFrom(new InternetAddress(from)); message.addRecipient(Message.RecipientType.TO, new InternetAddress(to)); message.setSubject("Outlook Meeting Request Using JavaMail"); StringBuffer sb = new StringBuffer(); StringBuffer buffer = sb.append("BEGIN:VCALENDARn" +         "PRODID:-//Microsoft Corporation//Outlook 9.0 MIMEDIR//ENn" +         "VERSION:2.0n" +         "METHOD:REQUESTn" +         "BEGIN:VEVENTn" +         "ATTENDEE;ROLE=REQ-PARTICIPANT;RSVP=TRUE:MAILTO:xx@xx.comn" +         "ORGANIZER:MAILTO:xx@xx.comn" +         "DTSTART:20051208T053000Zn" +         "DTEND:20051208T060000Zn" +         "LOCATION:Conference roomn" +         "TRANSP:OPAQUEn" +         "SEQUENCE:0n" +         "UID:040000008200E00074C5B7101A82E00800000000002FF466CE3AC5010000000000000000100n" +         " 000004377FE5C37984842BF9440448399EB02n" +         "DTSTAMP:20051206T120102Zn" +         "CATEGORIES:Meetingn" +         "DEscriptION:This the description of the meeting.nn" +         "SUMMARY:Test meeting requestn" +         "PRIORITY:5n" +         "CLASS:PUBLICn" +         "BEGIN:VALARMn" +         "TRIGGER:PT1440Mn" +         "ACTION:DISPLAYn" +         "DEscriptION:Remindern" +         "END:VALARMn" +         "END:VEVENTn" +         "END:VCALENDAR"); // Create the message part BodyPart messageBodyPart = new MimeBodyPart(); // Fill the message messageBodyPart.setHeader("Content-Class", "urn:content-  classes:calendarmessage"); messageBodyPart.setHeader("Content-ID", "calendar_message"); messageBodyPart.setDataHandler(new DataHandler(         new ByteArrayDataSource(buffer.toString(), "text/calendar")));// very important // Create a Multipart Multipart multipart = new MimeMultipart(); // Add part one multipart.addBodyPart(messageBodyPart); // Put parts in message message.setContent(multipart); // send message Transport.send(message);        } catch (MessagingException me) { me.printStackTrace();        } catch (Exception ex) { ex.printStackTrace();        }    }}

3-替换变量,一切顺利!



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/507604.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号