java 使用Microsoft exchange ews接口发送邮件报错

lad1984 lad1984 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
我编写了一个简单的代码,总是报错:
java.lang.NullPointerException
at microsoft.exchange.webservices.data.Strings.<clinit>(Strings.java:223)
at microsoft.exchange.webservices.data.EwsXmlReader.internalReadElement(EwsXmlReader.java:119)
at microsoft.exchange.webservices.data.EwsXmlReader.readStartElement(EwsXmlReader.java:620)
at microsoft.exchange.webservices.data.ServiceRequestBase.readSoapHeader(ServiceRequestBase.java:565)
at microsoft.exchange.webservices.data.ServiceRequestBase.readResponse(ServiceRequestBase.java:525)
at microsoft.exchange.webservices.data.SimpleServiceRequestBase.readResponse(SimpleServiceRequestBase.java:176)
at microsoft.exchange.webservices.data.SimpleServiceRequestBase.internalExecute(SimpleServiceRequestBase.java:49)
at microsoft.exchange.webservices.data.MultiResponseServiceRequest.execute(MultiResponseServiceRequest.java:144)
at microsoft.exchange.webservices.data.ExchangeService.internalCreateItems(ExchangeService.java:464)
at microsoft.exchange.webservices.data.ExchangeService.createItem(ExchangeService.java:535)
at microsoft.exchange.webservices.data.Item.internalCreate(Item.java:215)
at microsoft.exchange.webservices.data.EmailMessage.internalSend(EmailMessage.java:125)
at microsoft.exchange.webservices.data.EmailMessage.send(EmailMessage.java:253)
at Test.main(Test.java:23)
Exception in thread "main" microsoft.exchange.webservices.data.EWSHttpException: Connection not established
at microsoft.exchange.webservices.data.HttpClientWebRequest.throwIfConnIsNull(HttpClientWebRequest.java:394)
at microsoft.exchange.webservices.data.HttpClientWebRequest.getResponseHeaders(HttpClientWebRequest.java:280)
at microsoft.exchange.webservices.data.ExchangeServiceBase.processHttpResponseHeaders(ExchangeServiceBase.java:1045)
at microsoft.exchange.webservices.data.SimpleServiceRequestBase.internalExecute(SimpleServiceRequestBase.java:58)
at microsoft.exchange.webservices.data.MultiResponseServiceRequest.execute(MultiResponseServiceRequest.java:144)
at microsoft.exchange.webservices.data.ExchangeService.internalCreateItems(ExchangeService.java:464)
at microsoft.exchange.webservices.data.ExchangeService.createItem(ExchangeService.java:535)
at microsoft.exchange.webservices.data.Item.internalCreate(Item.java:215)
at microsoft.exchange.webservices.data.EmailMessage.internalSend(EmailMessage.java:125)
at microsoft.exchange.webservices.data.EmailMessage.send(EmailMessage.java:253)
at Test.main(Test.java:23)


下面是我的代码
import java.net.URI;

import microsoft.exchange.webservices.data.EmailMessage;
import microsoft.exchange.webservices.data.ExchangeCredentials;
import microsoft.exchange.webservices.data.ExchangeService;
import microsoft.exchange.webservices.data.ExchangeVersion;
import microsoft.exchange.webservices.data.MessageBody;
import microsoft.exchange.webservices.data.WebCredentials;


public class Test {
public static void main(String[] args) throws Exception {
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2010_SP1); //新建server版本
ExchangeCredentials credentials = new WebCredentials("benli", "12345"); //自己的用户名和密码
service.setCredentials(credentials);
service.setUrl(new URI("https://192.168.20.220/EWS/Exchange.asmx")); //mail.TESTMAIL.com 改为自己的邮箱
EmailMessage msg= new EmailMessage(service);
msg.setSubject("Hello world!"); //主题
msg.setBody(MessageBody.getMessageBodyFromText("Sent using the EWS Managed API.")); //内容
msg.getToRecipients().add("ben@com"); //收件人
msg.getCcRecipients().add("victorluo@com"); //抄送人
//msg.getAttachments().addFileAttachment("D:\\Downloads\\EWSJavaAPI_1.2\\EWSJavaAPI_1.2\\Getting started with EWS Java API.RTF"); //附件
msg.send(); //发送
}
}


https://192.168.20.220/EWS/Exchange.asmx这个地址是可以访问的,需要输入账号密码,用benli 12345可以通过
...全文

相关推荐

评论 1
收藏 已收藏
分享
返回顶部
lad1984
Java 51,407 成员 86,126 内容