Displaying Exchange public folders in Sharepoint

The Sharepoint / Exchange relationship is not exactly mature. I find myself struggeling to explain customers why seemingly simple stuff is kinda hard. A feature that have been requested by nearly all of our customers is to view exchange public folder contents in a Sharepoint site. So far we've done it in a couple of different ways.

What I really, really want to have is that Public Folder - Mail Library (the unborn sibling of the Document Library) integration. All complete with mail IFilters and all those goodies. That beeing virtually impossible to implement if you're not in MSFT, I really want to do is to use Outlook Web Access for this. OWA is an extremely powerful online Exchange viewer and I can never imagine that I'd be able to top it off. The only problem with OWA is that it uses Basic Authentication, which is very nice for those remote (through proxy) connections, but displays an annoying authentication box with every browser session.

Other than this OWA is great for displaying public folders simply by referencing the URL in a Page Viewer webpart. The visuals can even be altered by using a bit of client side scripting if you want to remove the navbar or other elements (provided as a property for your server-side pleasure).

The main principle when using OWA is that you're sooner or later going to authenticate. I started making a webpart that used a System.Net.WebRequest with credentials to retreive a public folder, but failed by design. The OWA html is not possible to clean up enough to avoid breaking sharepoint html (meet the html base element). This leaves two options: using an iframe or a new window. The IFrame would be the only good thing (it's a webpart) so I'd end up consuming an ASPX that passed credentials into OWA and returned the html for the public folder which again would be consumed by the IFrame.

Phuui, feels no good! Although the solution could have been made generic by passing the folder url and potentially encrypted user/pwd to the aspx it is still messy, and would require additional deployment. The main point is that when the public folder is presented for the end user, he still has to be authenticated on the next request. One might implement a URL rewriting solution, and eventually end up with some pseudo WSRP implementation, but no.

By the way; single sign-on sounds very correct when you have a authentication box popping up, especially when it's Microsofts own popup-devil. SSO is not suited here because 1. you want the same credentials as the current identity, and 2. you'd have to code against the SSO api's in Sharepoint context (the webpart) which creates the problem with the messy OWA html.

Update: Noel comments that the Outlook View Control could be used. I have to admit I've only just tried it, but as far as I can see this solution merely displays your Outlook client folders from the local machine. The Inbox view shows what's in my personal pst file, but not the newest mails in my Exchange inbox (until I do send/receive that is). This makes it pretty useless outside the firewall. Additionally it seems like viewing public folders with this tool has been discontinued, and it does feel a bit, ehm, old-school... Correct me if I'm wrong:-)

Filed under:

Comments

# TrackBack said:

linked

Monday, July 05, 2004 1:18 PM
# Noel Luneau said:

What about using a Content Editor Web Part and using the following html source code to reference the Outlook Control in the source editor:

<html>
<head>
</head>
<body>
<object classid="clsid:0006F063-0000-0000-C000-000000000046" id="ViewCtlFolder" width="100%" height="200" codetype="application/x-oleobject" codebase="http://activex.microsoft.com/activex/controls/office/outlctlx.CAB#ver=9,0,0,3203">
<param name="Namespace" value="MAPI">
<param name="Folder" value="\\Public Folders\All Public Folders\Foldername">
<param name="Restriction" value="">
<param name="DeferUpdate" value="0">
</object>

<P>
<P>

<OBJECT classid=CLSID:0006F063-0000-0000-C000-000000000046
id=ViewCtlFolder
width="100%"
height="200">
<param name="Namespace" value="MAPI">
<param name="Folder" value="Inbox">
<param name="Restriction" value="">
<param name="DeferUpdate" value="0">
</OBJECT>

</body>
</html>

----------------------------------------------------------

You would then display your Public Folder and your Inbox with the capability to move e-mail between the two.


Noel

Monday, July 05, 2004 4:32 PM
# Noel Luneau said:

So true about old school. Come on MS give us a E-mail Library :)

Noel
nluneau@powerlight.com

Tuesday, July 06, 2004 11:47 AM
# Stuart Preston said:

An excellent item -- which gave me the inspiration to develop a solution to poll a Public Folder and insert the body of the postings as an .MHT into an SPS/WSS Document Library. That way the Document Library is searchable, and users can subscribe to alerts - rather than an email group distribution list be subscribed to daily newsletters.

Stuart.
mail@stuartpreston.net

Monday, August 02, 2004 5:37 PM
# TrackBack said:

A way to quickly, easily, elegantly display the contents of an Exchange 2003 folder within a SharePoint web part.

Thursday, October 28, 2004 8:58 AM
# TrackBack said:
Thursday, June 02, 2005 5:19 AM
# saefeldin said:

can i display and move outlook public folder in MOSS 2007 ??

Thursday, October 18, 2007 2:21 AM
# santosh said:

how can i display outlook Public folder and it subfolder

using above script

i mean i want to show only folders

any solution

Thursday, February 21, 2008 4:05 AM
# ?ffentlicher Ordner - Kontakte - Sharepoint? | hilpers said:

Pingback from  ?ffentlicher Ordner - Kontakte - Sharepoint? | hilpers

Tuesday, January 20, 2009 9:07 AM
# elexx-by said:

<a href= http://adultchatsfinder.com >chat online</a>

Saturday, February 28, 2009 10:08 PM
# Olgunka-ot said:

<a href= adultpersonalsfinder.com >singles</a>

Saturday, February 28, 2009 10:09 PM

Leave a Comment

(required) 
(required) 
(optional)
(required)