Free Exchange Testing

This post is more than 2 years old.

Believe it or not - I think the one feature of ColdFusion 8 I haven't tested at all is the Microsoft Exchange functionality. It looked cool and all (check out Scott's nice article on the feature) but I had no way of testing it. Today I ran across this article:

Keep in Sync With a Free Exchange Server

This describes a free Exchange service at Mail2Web. I signed up and then pointed my ColdFusion code at the account and it worked like a charm. I just tested mail and contacts, but it looks like it supports everything ColdFusion's Exchange API does.

Raymond Camden's Picture

About Raymond Camden

Raymond is a senior developer evangelist for Adobe. He focuses on document services, JavaScript, and enterprise cat demos. If you like this article, please consider visiting my Amazon Wishlist or donating via PayPal to show your support. You can even buy me a coffee!

Lafayette, LA https://www.raymondcamden.com

Archived Comments

Comment 1 by Ali Daniali posted on 4/8/2008 at 9:50 AM

Thanks Raymond for pointing this out. It didn't click until you mentioned it. Now I have my CF8 connected too!

Comment 2 by Charlie Arehart posted on 4/9/2008 at 4:28 AM

This is awesome, Ray. I'd been looking for such a freely available exchange server for months when 8 first came out, to help with demos, and finally gave up. Perhaps this will help more people to share discoveries and observations to help those interested in the Exchange features. Thanks for sharing.

Comment 3 by Patrick posted on 4/9/2008 at 6:06 PM

Hi Ray,
thanks for this usefull hint. I have some issue, with exchange a while ago. I always thought, it's the exchange 2007 which is responsible for that. But seems, mail2 web works on exchange 2003.

The issue occures when trying to get contacts or calendar entries. The error message is always "Requested Exchange resource was not found on the server." But when i try to get my mails, with the same connection, it works fine. Any suggestion?

Code for calendar:
<cfexchangeconnection action="open" connection="conn"
server="exchange.mail2web.com"
username="mymail@mail2web.com"
password="mypass" />

<cfexchangecalendar action="get" name="cal" connection="conn">
<cfexchangeconnection action="close" connection="conn" />
<cfdump var="#cal#">

If i replace cfexchangecalendar with cfexchangemail it dumps my emails as expected.

Greets from Germany
Patrick

Comment 4 by Raymond Camden posted on 4/9/2008 at 8:49 PM

Are you saying this code works with mail2web but not exchange 2007? I can't really help much out here. As I said, I've just begun to play with it. If you feel a real bug is in play here, be sure to a) first test with 801, the newest release, and b) file a report at http://www.adobe.com/go/wish

Comment 5 by Patrick posted on 4/10/2008 at 1:53 AM

Hi Ray,
i'm using 801. I tried the Calendar example on both, mail2web and exchange 2007. Failed on both, only the cfexchangemail works for me. I first thought the issue comes from Exchange 2007, because MS changed something. But it also fails on mail2web, using Exchange 2003. Well, i'll try to post it on Adobe. Thanks for the link!

Comment 6 by John posted on 4/18/2008 at 11:06 PM

This may be a dumb thing to ask, but do you actually have any events in your calendar? I don't know much about exchange administration but i wonder if they can have it set to not create a calendar in your account until you create an event? It would probably save a huge amount of overhead if a lot of their users never actually use it.

That being said, I have worked successfully with CFexchangecalendar in our private environment with both Exchange 03 and 07. I have always included the mailboxName in the connection and the exchangefilter within the exchangecalendar call. Unlike a mailbox a which has a definite size, a calendar may not so i never thought to not include it. I did just test it without the filter and it did still work. It seemed to retrieve the events in this Calendar Year.

But i would try doing the following after creating a few events:
<cfexchangecalendar action="get" name="cal" connection="conn"> <cfexchangefilter name="starttime" from="SOME_START_DATE" to="SOME_END_DATE" />
</cfexchangecalendar>

The only issue we have seen is when the user's exchange acccount was set to something other than English. It seems to look for the folder name "CALENDAR" within the exchange folder structure and throws an error if that is not the case. In this scenario we found adding ExchangeServerLanguage = "" helped to stop the error, but it took a really long time to complete.

Comment 7 by Martijn van der Woud posted on 4/26/2008 at 1:57 AM

@Patrick: I ran into this problem myself tonight. Turns out that specifying the correct value for ExchangeServerLanguage ("dutch" in my case, in your case probably "german"?) solved my problem. Hope it will work for you as well.

grtz from the Netherlands

Martijn van der Woud

Comment 8 by Francisco Montes posted on 6/12/2008 at 11:08 AM

I was having the same problem. As Martijn pointed out, changing the ExchangeServerLanguage parameter to the correct value seems to be very important. In my case i tried "spanish" and it worked rightaway!

Thank you so much!!

Comment 9 by Martijn van der Woud posted on 6/12/2008 at 3:58 PM

@Francisco: glad this worked for you!

I am guessing the ExchangeServerLanguage is important, because it determines the name of the folders in which tasks, calendarevents, etc. are stored. That's probably why cfexchangemail can work without specifying the correct language, because the foldername "Inbox" is used in many different languages (it is used in "dutch").

Might be useful as a comment in the Adobe CF8 livedocs, but comment moderation is slow as hell there, and Adobe does not provide any feedback. :(

Martijn van der Woud