我在处理复杂数组时遇到了困难,可以使用一些帮助。我正在使用 EWS API 将邮件功能与 Exchange 2010 和 CF 集成。下面的代码连接到主帐户授权的邮箱。我想在收件箱中返回邮件列表并使用 EWS 返回的值(主题行、正文、发件人、收件人等)。
我以前没有使用过像这样的复杂数组,所以我对如何引用返回的值感到困惑,特别是在 FindItemsResults 中返回的 getItems() 方法中。我查看了一个执行相同任务的 Java 示例,但我无法理解如何将其转换为 CF。CFDump 显示我正在获取信息,因此我确信连接按预期工作。我只需要获取数据,不知道该怎么做。
提前感谢您的帮助。
<cfobject type="Java" class="microsoft.exchange.webservices.data.ExchangeService" name="service">
<cfset service.init()>
<cfobject type="Java" class="microsoft.exchange.webservices.data.WebCredentials" name="credentials">
<cfset credentials.init("username","password", "domain")>
<cfset service.setCredentials(credentials) />
<cfset service.AutodiscoverUrl("email@domain.com")>
<cfobject type="java" class="microsoft.exchange.webservices.data.WellKnownFolderName" name="WellKnownFolderName">
<cfset ViewResults = service.findItems(CreateObject("java","microsoft.exchange.webservices.data.FolderId").init(WellKnownFolderName.Inbox,
CreateObject("java","microsoft.exchange.webservices.data.Mailbox").init("othermail@domain.com","SMTP")),
CreateObject("java","microsoft.exchange.webservices.data.ItemView").init(3)) />
<cfdump var="#ViewResults#">
<cfdump var="#ViewResults.getItems()#">