Opens or closes a persistent connection to a Microsoft Exchange server, or gets information about mailbox subfolders. You must have a persistent or temporary connection to use the cfexchangecalendar, cfexchangecontact, cfexchangemail, and cfexchangetask tags.
ColdFusion (2018 release) Update 2: Added support for Microsoft Exchange Server 2016.
ColdFusion 10: Added the attribute serverVersion.
ColdFusion 8: Added this tag.
open getSubfolders |
Note: You can specify this tag's attributes in an attributeCollection attribute whose value is a structure. Specify the structure name in the attributeCollection attribute and use the tag's attribute names as structure keys. |
cfexchangecalendar, cfexchangecontact, cfexchangefilter, cfexchangemail, cfexchangetask; Managing connections to the Exchange server in the Developing ColdFusion Applications
Attribute |
Action |
Req/Opt |
Default |
Description |
---|---|---|---|---|
action |
all |
Required |
|
The action to take. Must be one of the following values:
|
connection |
all |
Required for open and close actions |
|
The name of the connection. You can specify this ID in any tag that you use with the open connection. |
ExchangeApplicationName |
opengetSubfolders |
Optional |
exchange |
The name of the Exchange application to |
ExchangeServerLanguage |
opengetSubfolders |
Optional |
english |
The language of the Exchange server. |
folder |
getSubfolders |
Optional |
The root of the mailbox |
The forward slash delimited path from |
formBasedAuthentication |
opengetSubfolders |
Optional |
no |
A Boolean value that specifies whether |
formBasedAuthenticationURL |
opengetSubfolders |
Optional |
|
The URL to which to post the user ID and exchweb/bin/auth/owaauth.dll }}. |
mailboxName |
opengetSubfolders |
Optional |
|
The ID of the Exchange mailbox to use. Specify this attribute to access a mailbox whose owner has delegated access rights to the account specified in the username attribute. |
name |
getSubfolders |
Required |
|
The name of the ColdFusion query variable that contains information about the subfolders. |
password |
opengetSubfolders |
Optional |
|
The user's password for accessing the Exchange server. |
port |
opengetSubfolders |
Optional |
80 |
The port the server listens to, most commonly port 80. |
protocol |
opengetSubfolders |
Optional |
http |
The protocol to use for the connection. Valid values are http and https. |
proxyHost |
opengetSubfolders |
Optional |
|
The URL or IP address of a proxy host, if necessary for access to the network. |
proxyPort |
opengetSubfolders |
Optional |
|
The port on the proxy server to connect to, most commonly port 80. |
recurse |
getSubfolders |
Optional |
false |
A Boolean value:
|
server |
opengetSubfolders |
Required |
|
The IP address or URL of the server that is providing access to Exchange. |
serverVersion |
|
Optional |
|
Specifies the Microsoft Exchange Server version. The values are:
The value you specify overrides the value that you specify at the application level. |
username |
opengetSubfolders |
Required |
|
The Exchange user ID. |
Note: If you specify the getSubfolders action, you can specify the attributes that are listed as working for both the open and getSubfolders actions only if you do not specify a connection attribute. |
The cfexchangeconnection tag can open or close a persistent connection with an Exchange server. If you use the cfexchangeconnection to open a connection before you use any cfexchangecalendar, cfexchangecontact, cfexchangemail, or cfexchangetask tags, you can use multiple tags to interact with the Exchange server without incurring the overhead of creating a connection for each tag.
Note: To establish any connection, the Exchange server must grant you Outlook Web Access. For information on how to enable this access, see Enabling access to the Exchange server in Managing connections to the Exchange server in the Developing ColdFusion Applications. Also, you cannot establish a connection to an Exchange server if you require a special authentication step, such as requiring a VPN PIN or performing biometric authentication, on a server that is outside your firewall, and the authentication server then routes the messages to your Exchange server inside the firewall. |
Use the cfexchangeconnection tag to close a persistent connection when you are finished accessing the Exchange server. If you do not close the connection, it remains open and does not time out.
The cfexchangecalendar, cfexchangecontact, cfexchangemail, and cfexchangetask tags also let you specify the open action connection attributes (but not the connection attribute) to create a temporary connection that lasts for the duration of the single tag's activities, without requiring you to use the cfexchangeconnection tag to create the connection. In this case, ColdFusion automatically closes the connection when the tag completes processing.
The getSubfolders action can get information about the immediate subfolders of a specified folder (or of the top level of the mailbox), or information about all levels of subfolders. You must have a persistent connection to get the subfolders.
The query returned by the getSubfolders action has the following columns:
Column |
Contents |
---|---|
FOLDERNAME |
The name of the subfolder, for example, ColdFusion. |
FOLDERPATH |
The forward slash |
FOLDERSIZE |
Size of the folder in bytes.
|
Note: The ColdFusion exchange tags, including cfexchangeconnection use WebDAV to connect to the exchange server. HTTP access must be enabled on the exchange server to use the tags. |
The following example opens a connection, gets all mail sent from spamsource.com, and deletes the messages from the Exchange server:
<cfexchangeConnection action="open" username="#user1#" password="#password1#" server="#exchangeServerIP#" connection="testconn1"> <cfexchangemail action="get" name="spamMail" connection="testconn1"> <cfexchangefilter name="fromID" value="spamsource.com"> </cfexchangemail> <cfloop query="spamMail"> <cfexchangeMail action="delete" connection="testconn1" uid="#spamMail.uid#"> </cfloop> <cfexchangeConnection action="close" connection="testconn1"> |
Sign in to your account