Java &引用;邮箱不存在。”;在EWS上获取电子邮件时
我正在尝试使用Exchange Web服务(EWS)访问Office 365邮箱上的电子邮件 我的O365管理员已创建:Java &引用;邮箱不存在。”;在EWS上获取电子邮件时,java,exchangewebservices,Java,Exchangewebservices,我正在尝试使用Exchange Web服务(EWS)访问Office 365邮箱上的电子邮件 我的O365管理员已创建: 共享邮箱:shared@domain.com 账户:我的。account@domain.com 一个组,用于访问邮箱上的帐户 我可以使用appId/tenantId和使用帐户凭据的UserNamePasswordParameters检索Oauth令牌,现在我正尝试从邮箱检索电子邮件,但出现以下错误: microsoft.exchange.webservices.data.
- 共享邮箱:shared@domain.com
- 账户:我的。account@domain.com
- 一个组,用于访问邮箱上的帐户
UserNamePasswordParameters
检索Oauth令牌,现在我正尝试从邮箱检索电子邮件,但出现以下错误:
microsoft.exchange.webservices.data.core.exception.service.remote.ServiceResponseException:
邮箱不存在
这是我的密码:
public Iterable fetchemail(字符串令牌、字符串帐户)引发异常{
if(标记==null){
token=getToken();
}
FindItemsResults电子邮件;
try(ExchangeService服务=新的ExchangeService(ExchangeVersion.Exchange2010_SP2)){
service.getHttpHeaders().put(“授权”、“承载人”+令牌);
service.setUrl(新URI(“https://outlook.office365.com/EWS/Exchange.asmx"));
setWebProxy(新的WebProxy(PROXY_主机,PROXY_端口));
FolderId folder=新FolderId(WellKnownFolderName.Inbox,新邮箱(帐户));
emails=service.findItems(文件夹,新项目视图(15));
}
回复邮件;
}
好吧,这有点愚蠢。。我很困惑,因为这个账户也是一封电子邮件
解决方法是传递邮箱(shared@domain.com)而不是帐户(我的。account@domain.com)构建邮箱
对象时:
FolderId folder = new FolderId(WellKnownFolderName.Inbox, new Mailbox("shared@domain.com"));
现在它工作了,我可以收到电子邮件了。Hi,我可以看看你的getToken()方法吗。我正在使用类似的代码创建outlook web加载项,无法决定是使用graph API还是EWS?EWS已被弃用,并且不会向其添加额外功能。如果可以,您应该使用graph AP