2013-01-11 34 views
2

因此,我正在ColdFusion 8中嘗試從同一頁面上的多個不同用戶獲取Exchange服務器的日曆/日程表。由於您似乎只能在打開連接時指定郵箱,所以看起來不幸的是,我必須爲每個希望訪問的郵箱打開一個新連接。問題是,似乎只有我打開的第一個連接工作...任何後續連接失敗。ColdFusion cfexchange連接和多個郵箱

我有以下幾點:

<cfloop list="mailbox1,mailbox2,mailbox3" index="mailboxname"> 

<cfexchangeconnection action="open" connection="conExchangeSchedules" 
    server="****" 
    username="****" 
    password="****" 
    mailboxname="#mailboxname#" 
    protocol="https" 
formbasedauthentication="false"> 

<cfexchangecalendar 
    action = "get" 
    name = "qrySchedule" 
    connection = "conExchangeSchedules"> 
     <cfexchangefilter name="StartTime" from="{ts '2013-01-06 00:00:00'}" to="{ts '2013-01-12 23:59:59'}"> 
</cfexchangecalendar> 

<cfexchangeconnection action="close" connection="conExchangeSchedules"> 

<cfdump var="#qrySchedule#"> 

</cfloop> 

只有第一個郵箱是成功的。我知道所有的郵箱都是有效的,因爲我已經單獨嘗試了每個郵箱,並將其作爲列表中的第一個值。

但所有其他連接返回錯誤

Could not login to the Exchange server. 

Verify the server name, username, and password. Ensure that proper client certificates are installed. 

顯然不是一個有用的錯誤,因爲第一連接工​​作正常(因此「檢驗」所有必要的設置)。

我甚至試圖用不同的名字創建每個連續的連接。同樣的問題。

有沒有人有任何指示或想法?

在此先感謝! -Carl

+0

您是否正在更改每個郵箱的用戶憑據,因爲它循環?或者使用一個擁有所有權利的人? –

回答

0

回答你的問題的一部分。您提到您只能在cfexchangeconnection標記中指定mailboxName屬性。不一定...如果您閱讀cfexchangecalendar標籤的文檔,它包含此註釋(請注意'如果您省略連接屬性..'語句):

注意:對於所有操作,請參閱cfexchangeconnection以瞭解其他屬性如果您未指定連接屬性,則使用該屬性。如果省略連接屬性,則通過在cfexchangecalendar標記中指定cfexchangeconnection標記屬性來創建臨時連接。在這種情況下,ColdFusion會在標籤完成時關閉連接。有關詳細信息,請參閱cfexchangeconnection標記打開操作。

所以我讀到,這意味着您可以通過在cfexchangecalendar標記本身中包含cfexchangeconnection標記的打開屬性來創建到Exchange服務器的臨時連接。

不知道這是否會解決您的其他問題。

Referenced documentation for the cfexchangecalendar tag.