Upgrading and Fixing Email Enabled Lists in SharePoint 2010

Kelly Gibson, our engineer was working on Upgrade this last weekend and found that email enabled lists stopped working. He had already updated SMTP and the MX record and so forth to ensure it was pointing to the correct box. What he was noticing was SharePoint was losing track of the email enabled lists. Email was coming in right, but wasn’t configured correctly.

In the troubleshooting steps they found that if they un enabled the list for email and then re-enabled it, it would work. 400 lists and hours and hours later this batch in the upgrade was done.

Now that we’re looking back at it, we’re thinking, there’s got to be a better way.

When I got in this morning, I jumped on my favorite resourcing tool… Twitter and reached out to the community and asked…

@Joeloleson: Had problems with upgrading SharePoint 2010 and email enabled lists? Anyone have good workaround?

Todd Klindt chimed in with

@ToddKlindt: @joeloleson You have to go into each list’s email settings and hit ok. :("

That was a good start, and would have saved us a lot of time. He went on to explain why we were seeing the issue, that apparently isn’t the problem if you have the same Configdb as in InPlace Upgrade (still not a good reason to use in place IMO)…

@ToddKlindt: @joeloleson The incoming email settings don’t get upgraded in the Config DB when you do a database attach.

Daniel Glen how would one discover the email enabled lists…

@DanielGlen: @ToddKlindt @joeloleson is there a way to find all email-enabled lists before you upgrade??

Todd replied to him with an excellent resource from Gary Lapointe the best STSADM extensions ever built. He shares his info in a post "Enumerating Email Enabled Lists via STSADM" where he gives Todd credit for getting started on this and giving Gary the inspiration. This line was the missing piece for Gary:

m_emailSuffix = SPFarm.Local.GetChild<SPIncomingEmailService>().ServerDisplayAddress.ToLower();

@ToddKlindt: @DanielGlenn I use this: http://blog.falchionconsulting.com/index.php/2008/08/enumerating-email-enabled-lists-via-stsadm/

There was some chatter about the fact that we all thought there should be a way to fix this leveraging the ultimate power of Windows Powershell. Microsoft PFE script to the rescue… Don’t you wish more of this kind of stuff would make it’s way to the surface? I’m sharing this, not taking any credit for it, not sure who wrote it, and not even saying it works. What I like about it is it tells us what is wrong and tells us what objects we can work with. This two part script detects the lists that are email enabled and are essentially broken email enabled lists missing the alias setting and the second part once you have the web and the affected list you can update it.

Now that we’ve got this sample code, someone smart can ensure this is the right fix, combine this logic and build something useful for the rest of us J

 

##Script to detect affected lists (In SharePoint 2010)

[System.Reflection.Assembly]::Load("Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c") | out-null  

 
 

  [void][System.reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint")  

 
 

 $oContentService = [Microsoft.Sharepoint.Administration.SPWebService]::ContentService;  

 [Microsoft.SharePoint.Administration.SPWebApplicationCollection]$waColl = $oContentService.webApplications;  

 $waColl1 = $waColl | where-object {$_.IsAdministrationWebApplication -eq $FALSE}  

 write-host "WebApplication; Site Collection; List Title; List URL; EmailAlias" 

 foreach ($wa in $waColl1)  

 {  

 $sites = $wa.Sites  

 foreach ($obj in $sites)  

 {  

 $spSite = new-object Microsoft.SharePoint.SPSite($obj.URL)  

 $colWebsites = $spSite.AllWebs  

 foreach ($web in $colWebsites)  

 {  

 $colLists = $web.Lists  

  foreach ($list in $colLists)  

  {  

  if ( $list.EmailAlias -ne $null )  

  {  

  write-host  $wa.Name, ";", $obj.URL, ";", $list.Title , ";", $list.DefaultViewUrl, ";",  $list.EmailAlias  

 $a = $list.EmailAlias

 $a

 $list.Emailalias = $a

 $list.update()

 }  

 }  

 }  

 }  

 write-host "Finished." 

 

 

 

##Code to update the email settings

$site = Get-SPWeb <URL of the sub site>

$list = $site.Getlist("<URL of the list")>

$a = $list.EmailAlias

$a

$list.Emailalias = $a

$list.update()

 

KUDOS to Kelly Gibson for finding the issue and manual work around, Todd Klindt for giving us a better manual work around and helping spread and Daniel for asking follow up. Great twitter discussion on this topic with @BrianTJackett and Benjamin Athawes

 

 

SharePoint 2010 Upgrade Decision Tree

I love it when the community comes together.  You can see the twitter discussion with Todd Klindt, Rick Taylor and Benjamin Athawes (on his blog) that resulted in a few different decision trees to help us better discuss the recommendations of In Place Upgrade vs. Database attach and really one of my favorites, the hybrid.  In this recommendation decision tree, you’ll I rarely recommend in place without combining with database attach to mitigate the risks of full disk and other issues not captured by preupgrade check or in the prerequiste assessments such as SQL related patching issues.  The only case is in the smallest of deployments where people are using the basic install which I don’t recommend anyway.

Love to get your feedback on this.  I threw in the Third party migration & tools as a bonus.  Some people wonder how it fits in.

You can grab the PDF: SharePoint 2010 Upgrade Decision Tree

If you want to discuss the Visio then you can find me on twitter @joeloleson

 

image

What’s Next in SharePoint Land

I’ve been working with and watching the End User SharePoint model.  While I don’t get a ton out of all of the end user articles, I do find his model is working awesome and occasionally I’m very fascinated in the creativity that’s going on with the various contributors.

I personally have been able to monetize the blog to help cover some of my SharePoint user group and SharePoint Saturday and community travel which has been awesome.  My next example of this is Portugal and Norway… User Groups I plan to visit in late Sep/early Oct.  What I’ve found is well is some times Teched’s around the world can’t offer the plane ticket and occasionally I can convince Quest to cover the travel, but as was the case in India last year I had to fill the gaps, and the sponsorships came through to help.  I hope and expect that no one is really bothered by the sponsored SharePoint ads or the occasional promotion of a webcast or event.  I figure all that stuff is still good for the community as well.  You’ll note that I’ve gone out of my way to get rid of Google Ads in our community.  There’s a lot of FUD in Google ads for the term SharePoint that makes it stink.  If you see google ads on a SharePoint site, let them know there are much better alternatives.  Even an Amazon link to SharePoint books is much, much better.

So here’s the plan.

I am looking for smart and interesting IT Pro focused bloggers to join up with me on my quest to train and inform the community.  I’ll be blogging in the same way I have been with a couple of small changes. 

  • I will be joining up with top SharePoint IT bloggers to create the a big conglomerate of SharePoint IT bloggers making it even easier to find the best content.  You could say I’ve learned a few things from Mark Miller’s model of sharing the spotlight.  If you’re reading this… This is a call out to the top SharePoint bloggers who are looking for a home.  Even if your blog isn’t highly rated, but you’re looking for a place to put some really good content.  We need to talk.  What I can guarantee is readers.  There’s more to come in this space, including the FULL SharePoint 2010 Server in a farm at FPWeb, but just want to start reaching out. Best way to reach me is by email joel.oleson @quest.com or DM me @joeloleson and we’ll move the conversation to email.  The first in this announcement is Richard Taylor and Mike Watson.  Will be great to have them as authors.
  • I will be creating a new blog focused on travel.  Michael Noel and I are on a quest to join the Travelers Century club an exclusive club for people who have visited 100 countries according to their rules.  I’m not far.  I’ll be at 74 by the end of the month and at least 80 by the end of the year. We want to see the world.  I have a ton of stories I want to share, but that could water down my SharePoint stuff… So why not a dedicated blog on SharePoint travel?  I’ll still have some of the highlights integrated in, but you’ll get more of the stories and recommendations.  One of my first stories will be on the crazy european escape from the Ashcloud and adventures with Tony Frankola, Michael Noel and Paul Swider across Croatia, Bosnia & Herzegovina & Serbia and that wild adventure that covered no less than 8 countries.  You’ll also get details on my deportation story from Iran.  That will be an exclusive.  Thanks to Rackspace for Hosting this on SharePoint Foundation 2010.  Obviously more to come here as well.

Easier SharePoint 2010 Migrations and Upgrade with Tools

Why use a tool when you can upgrade using the built in upgrade methods?

  • Maybe you want to skip 2007 going from 2003 to 2010…
  • Maybe you want to get out of your MOSS enterprise and move into Standard or even WSS…
  • Maybe you want to get out of a site definition or template or from one language template to another… 
  • You’re finding that moving data on your own with the import or export is changing dates and making you own everything…
  • Already built a rock solid 2010 deployment and just want to get the data moved in.
  • Using the knife or using the precision scalpel tool… Upgrade is designed to get from A to B without transformation.  Transformation may be your goal.

That’s just a start.  I’m sure you’ll find even more reasons, like co-existence, control, more management interfaces, and flexibility.

The upgrade and migration space seems like it’s getting crowded, I say it’s great to have options.  How does one navigate this space?  First let me say that despite what I say, it will appear I’m biased due to my affiliation with Quest software as a paid employee, no I don’t have a quota or get paid any extra for this post.  If anything there’s more risk than reward for a post like this.  In the past when I’m asked specific requirements I try to push the vendor with the best solution.  Here I will list the various Upgrade and Migration vendors.  Many will be releasing their solutions RTM +60 including many making their announcements in June 2010 for their 2010 Solutions.  I highly encourage you to explore their solutions with them.  Special thanks to Owen Allen, Inna Gordin, and a great post by Deepak Bhat “10 Content Migration Tools to SharePoint Platform” which inspired me to not just include the traditional SharePoint vendors, but others that aren’t so traditional and dig even deeper for new ones.  I hope you don’t get lost in this list.  I hope you find the sorting by the source to be useful.

Note: If I’m missing tools, it’s my mistake, please contact me, tweet me @joeloleson or include in the comments and I’ll attempt to add them to this list.  Note this is the last chapter in my 2010 upgrade and migration book, so I am anxious to get this right for everyone. I’ve updated the tools a few times to make them more accurate.

New SharePoint 2010 Migration Tools!

Metalogix SharePoint Site Migration Manager 2010

“Whether you are migrating between SharePoint servers, upgrading from SharePoint 2003 or 2007 to SharePoint 2010, or re-organizing your SharePoint content, SharePoint Site Migration Manager is an easy-to-use and convenient way of moving your SharePoint data. With its familiar copy-and-paste-style user interface, you can quickly migrate all SharePoint sites, libraries, lists, web parts and permissions between servers. Migrate to the cloud or hosted SharePoint environments and reduce infrastructure costs.”

Quest Software Migration Manager (2003 to 2010)

“Quest Migration Manager for SharePoint enables direct migration of SharePoint 2003 content to SharePoint 2010 through a web console, avoiding a complex “two-hop” upgrade. With Quest Migration Manager for SharePoint, you can:

    * Migrate SharePoint 2003 sites, including content and security settings, to SharePoint Server 2010 or SharePoint Foundation 2010
    * Reorganize and rationalize existing SharePoint 2003 site structure during migration
    * Synchronize post-migration changes of the source SharePoint 2003 site content to the target sites to make sure no data is lost
    * Schedule resource-intensive migration operations for off-peak hours

Migration Manager for SharePoint also helps you consolidate and reorganize SharePoint 2007 environments before upgrading to SharePoint 2010.”

Tzunami Deployer for SharePoint 2010 migration

“The latest version of Tzunami Deployer for SharePoint Migration supports the migration of content into Microsoft SharePoint Server 2010 and includes numerous new features that enhance migration automation capabilities, and facilitate the entire migration process. The release enables seamless migration from SharePoint 2003 directly to SharePoint 2010, eliminating the previous requirement to initially migrate to SharePoint 2007 and only then to SharePoint 2010. It builds on its solid track record of comprehensive metadata mapping to enable complete preservation of business critical content properties, and eliminates the risk of data loss without disturbing business continuity.”

AvePoint DocAve SharePoint Migration Manager for 2001/2003/2007 to 2003/2007/2010

“DocAve SharePoint Migrator automatically moves content from source SharePoint 2001/2003/2007 instances to their mapped elements in SharePoint 2003/2007/2010. Information critical to the business in previous versions of SharePoint are kept intact, assuring users that no data will be lost during the transfer. All folder structures, document properties and associated metadata, as well as permissions and access control are all retained with full-fidelity. End-users can confidently continue to access their content without interruption”

MetaVis Migrator for SharePoint

“MetaVis Migrator is a simple tool for migrating content and objects between SharePoint sites, site collection or servers. Whether you are consolidating, upgrading or simply re-organizing your SharePoint 2010, 2007 or 2003 environment, Migrator provides a convenient and familiar way of moving your SharePoint data. Users can also easily load files from network drives and classify legacy or imported content to unlock the full potential of SharePoint search and navigation.”

Xavor SharePoint 2010 Migration Tool

Xavor announces the launch of its free SharePoint 2010 Migration Tool. Download our new Xavor SharePoint 2010 Migration Tool. Xavor has been working tirelessly with SharePoint Consultants to provide you with a timely release of Free and handy tools for SharePoint 2010. Reliability, convenience, ease of use, flexibility and free support are among the top features of our tools. If you face any problem with the use of our tool, please don’t hesitate to contact us and we will try our best to solve your query in due time without any charges. Xavor SharePoint 2010 Migration Tool is not a trial version. This tool will not expire and you can use it for as long as you want. Our SharePoint Migration Tool and Admin Tool give you the flexibility to migrate and administrate your SharePoint data easily.”

Migration Tools by Source

Source Company Tool
Aqualogic/Plumtree Tzunami Deployer
Blogs (WordPress, Blogger, Telligent) Metalogix Site Migration Manager for Blogs
CMS 2002 Metalogix Web Content Migration Manager
CMS 2002 Vamosa Vamosa Solution for SharePoint 2007
Custom Databases seeUnity Enterprise Integration for SharePoint
Custom Repository/ECM API Armedia Caliente I/O Suite
Custom Repository/ECM API Metalogix Web Content Migration Manager
Custom Repository/ECM API Metavis ECM Migrator
Custom Repository/ECM API Proventeq Content Migration for SharePoint
Custom Repository/ECM API seeUnity Intelligent Content Migration
Custom Repository/ECM API Tzunami Deployer
Custom Repository/ECM API Vamosa Vamosa Content Migrator
Custom Repository/ECM API Vitalpath Path Builder for SharePoint
Databases Armedia Caliente I/O Suite
Documentum AvePoint DocAve Documentum eRoom Migrator
Documentum Metalogix Migration Manager for Documentum
Documentum Tzunami Deployer
Documentum Valiance Partners TRUmigrate
Documentum Vernion Easy2Share
DocuShare Tzunami Deployer
DocuShare Vitalpath Path Builder for SharePoint
eRoom Armedia Caliente I/O Suite
eRoom AvePoint DocAve Documentum eRoom Migrator
eRoom Metalogix SharePoint Migration Manager for eRoom
eRoom Metavis eRoom to SharePoint ECM Migrator
eRoom Quest Software File Migrator
eRoom Tzunami Deployer
eRoom Vernion Easy2Share
File Share Coexistence seeUnity Enterprise Archiving & Distribution for SharePoint
File Shares Armedia Caliente I/O Suite
File Shares AvePoint DocAve File System Migrator
File Shares EchoTechnology FileLoader
File Shares Metalogix FileShare Migration Manager for SharePoint
File Shares Metaplus FileSync
File Shares Metavis Migrator
File Shares Proventeq Content Migration for SharePoint
File Shares Quest Software File Migrator
File Shares Tzunami Deployer
File Shares Syntergy Bulk Loader for SharePoint
Hummingbird Tzunami Deployer
Hyperwave Tzunami Deployer
Interwoven Metalogix Web Content Migration Manager
LiveLink AvePoint DocAve LiveLink Migrator
LiveLink Metalogix Migration Manager for Opentext Livelink
LiveLink Metavis LiveLink to SharePoint ECM Migrator
LiveLink Tzunami Deployer
LiveLink Syntergy LiveLink Exporter and Bulk Loader for SharePoint
Notes BinaryTree CMT
Notes Casahl EcKnowledge
Notes Quest Software Notes Migrator
Notes Tzunami Deployer
Notes Vernion Easy2Share
Notes Visionet systems VisiMigrate Enterprise
Oracle Stellent AvePoint DocAve Oracle/Stellent Migrator
Oracle Stellent Metalogix Site Migration Manager for Oracle Content Server Stellent
Oracle/Stellent Vernion Easy2Share
Public Folders AvePoint DocAve Public Folder Migrator
Public Folders Metalogix Migration Manager for Exchange Public Folders
Public Folders Quest Software Public Folder Migrator
Public Folders Tzunami Deployer
SharePoint 2001/2003/2007 to 2003/2007/2010 AvePoint Doc Ave SharePoint Migrator
SharePoint 2001/2003/2007 to 2003/2007/2010 Tzunami Deployer
SharePoint 2003 to 2003/2007 EchoTechnology SiteManager
SharePoint 2003 to 2007 Vamosa Vamosa Solution for SharePoint 2007
SharePoint 2003/2007 to 2003/2007 Syntergy Cut and Paste
SharePoint 2003/2007 to 2007/2010 Xavor SharePoint Migrator (XSPM)
SharePoint 2003/2007/2010 to 2007/2010 Metalogix Site Migration Manager
SharePoint 2003/2007/2010 to SharePoint 2003/2007/2010 Metavis Migrator
SharePoint 2003/2007/2010 to SharePoint 2003/2007/2010 Quest Software Migration Manager for SharePoint
SharePoint 2007 to 2007 EchoTechnology Echo for SharePoint 2007
SharePoint 2007 to 2007 Metaplus FileSync
Vignette AvePoint DocAve Vignette Migrator
Vignette Metalogix Web Content Migration Manager
Web Sites AvePoint AvePoint Website Migrator
Web Sites Metalogix Web Content Migration Manager
Web Sites Proventeq Content Migration for SharePoint
Wikis (Confluence, MediaWiki) Metalogix Site Migration Manager for Wikis
 

The list above is organized by the source system.  Beyond the source, it’s important to track down a few things about your migration vendor.  Here are a few suggestions…

Questions to help with Vendor Selection

1. What version is the tool?  Many SharePoint tools are on their third and fourth versions moving into a very mature system

2. Maturity in the field – Seasoned?  What is the usage experience with your favorite systems Integrators/consultants? with an ecosystem that includes full fledged support and deployment services.  More mature tools may have agreements with partners as resellers or even provide motivation.  I encourage you to try to understand if it’s a certification or if it’s a reseller program.  Some tools are easier than others, and you don’t want to get stuck trying to run a complex tool by yourself if you’ve got a day job.  Migration is very common outsourced project they can be expensive not just for the tool but for the services, so spending time may pay off.  That said, cheaper doesn’t mean better.

3. Microsoft Gold Certified? When I first started drilling into the migration tools I found there are really 4-5 common tools used for SharePoint migrations, but both new vendors and traditional ECM vendors have been moving into the space putting everyone into a position where it’s time to look again.  Even your mature vendors are revisiting their tools with SharePoint 2010.  Even if they aren’t listed here as having a SharePoint migration tool, they are likely waiting on the launch wave and testing to make their announcements.  Microsoft itself

4. Time to Migrate/Reliability – One consideration your firm should think about is the time it can take to migrate.  Some content will be easier than others, but throughput for large migrations like a SharePoint to SharePoint or a FileShares to SharePoint, the time to accomplish your migration can become critical and a major factor in your requirements.

5. Unique features such as Coexistence – You may or may not find features like coexistence where both can exist in production for some period of time.  Flushing out these types of requirements can definitely help you better decide what is important.

6. API Compliance – On the source there’s an API (the Application Programmability Interface) and the destination.  The more you work with the SharePoint API the more you’ll understand it’s got it’s quirks.  If you’re migrating applications and state into SharePoint you’ll find limitations in the API.  How does the vendor come up with creative solutions to overcome these?  Ever run an export and import and wondered why you lost your alerts, workflows, recycle bin, last modified date, and more.  So what is the vendor doing to overcome these limitations?  You’d be surprised to know if they are using FrontPage RPC or pushing the data into the database with some level of their own support.  The more you know…  If you care these are the questions you should ask.

7. Exception Handling – What is your tool doing to allow you to see what it’s dropping and to handle exceptions?  One of my favorites for testing a tool is to add common file names that SharePoint hates.  Add an ampersand & in your file name, add something in parentheses, add a few dots and then try to migrate.  You get the idea.  Does it crash, does it fail, does it allow you to change the & to and?  Can you say, yes forever?  That’s serious usability.  Also dig into the interfaces. 

8. For Whom is the UI Design – Definitely not all of these tools are created equally.  Some are designed for developers, some for engineers, some for end users.  Huge differences.  In the case of Notes for example, you may be looking to take an application and move it to a simple template or to simply mirror the functionality.  How does the tool help you analyze your needs and map them.  How much intelligence and how much does it require you to do the heavy lifting vs. trying to encourage the right thing? You should also ask if you as a customer can run this tool or will it require a trained expert or certified consultant?

9. Involvement in Technology Adoption Program and Partner Council – while not every company can be in the SharePoint 2010 TAP program, it does give them a pretty good head start on working with the new technologies.  It also frequently reflects the relationship with Microsoft.  Microsoft does have it’s favorites.  In the case of things like Notes, Microsoft can be very motivated.  Explore that motivation, they may be interested in helping you in more ways than one including some services.

10. More than Migration: It’s not about Point A to Point B – You might be surprised when you analyze it, but the best tools provide the best options for what you can do between the source and destination from sites and site templates, to content types, and meta data.  Even more.  Migration time is the best time to reconsider your information architecture, your security structure and inheritance, and to simplify or to even go more structured.  You know your better than the tool, so how does it expose the right features for you?

11. How complex is the installation and dependencies – Is this tool run on both sides, on a third party client?  How much hand holding does it need?  If it’s hard to install and you need a big book to run it, you’re likely going to wish you had a consultant helping you.

12. Does it support automation?  Has it been updated with powershell or at least have a way to batch script automate?  Sometimes it’s nice to have UI, and other times it’s nice to jump to the command shell.

13. Some tools are built with Java, others with older versions of .NET.  Do you care?  You may have data center standards or require special requirements around ensuring security requirements being met.  Something to consider.

14. Migration to and from Hosted – Understand your destination.  You may be looking at your source and miss the point about getting it into the source.  If it’s a site in the cloud how are you going to get the data there?  SharePoint Designer?  BPOS D may have you run the tool on your side and have you give them a database.  This may mess with your coexistence plans.

15. Who else is using the tool? Be sure to get customer references and if you’re putting some money into the tool, you may want to actually talk to them.  Don’t buy a tool based on the cool website.  You have to at least make sure it works.  Buying tools on sites happens these days, but often you’re laying down some serious cash, so do your due diligence and read a case study or two.

 

Migration Tools by Vendor

Source Company Tool
Custom Repository/ECM API Armedia Caliente I/O Suite
Databases Armedia Caliente I/O Suite
eRoom Armedia Caliente I/O Suite
File Shares Armedia Caliente I/O Suite
Documentum AvePoint DocAve Documentum eRoom Migrator
eRoom AvePoint DocAve Documentum eRoom Migrator
File Shares AvePoint DocAve File System Migrator
LiveLink AvePoint DocAve LiveLink Migrator
Oracle Stellent AvePoint DocAve Oracle/Stellent Migrator
Public Folders AvePoint DocAve Public Folder Migrator
SharePoint 2001/2003/2007 to 2003/2007/2010 AvePoint Doc Ave SharePoint Migrator
Vignette AvePoint DocAve Vignette Migrator
Web Sites AvePoint AvePoint Website Migrator
Notes BinaryTree CMT
Notes Casahl EcKnowledge
File Shares EchoTechnology FileLoader
SharePoint 2003 to 2003/2007 EchoTechnology SiteManager
SharePoint 2007 to 2007 EchoTechnology Echo for SharePoint 2007
Blogs (WordPress, Blogger, Telligent) Metalogix Site Migration Manager for Blogs
CMS 2002 Metalogix Web Content Migration Manager
Custom Repository/ECM API Metalogix Web Content Migration Manager
Documentum Metalogix Migration Manager for Documentum
eRoom Metalogix SharePoint Migration Manager for eRoom
File Shares Metalogix FileShare Migration Manager for SharePoint
Interwoven Metalogix Web Content Migration Manager
LiveLink Metalogix Migration Manager for Opentext Livelink
Oracle Stellent Metalogix Site Migration Manager for Oracle Content Server Stellent
Public Folders Metalogix Migration Manager for Exchange Public Folders
SharePoint 2003/2007/2010 to 2007/2010 Metalogix Site Migration Manager
Vignette Metalogix Web Content Migration Manager
Web Sites Metalogix Web Content Migration Manager
Wikis (Confluence, MediaWiki) Metalogix Site Migration Manager for Wikis
File Shares Metaplus FileSync
SharePoint 2007 to 2007 Metaplus FileSync
Custom Repository/ECM API Metavis ECM Migrator
eRoom Metavis eRoom to SharePoint ECM Migrator
File Shares Metavis Migrator
LiveLink Metavis LiveLink to SharePoint ECM Migrator
SharePoint 2003/2007/2010 to SharePoint 2003/2007/2010 Metavis Migrator
Custom Repository/ECM API Proventeq Content Migration for SharePoint
File Shares Proventeq Content Migration for SharePoint
Web Sites Proventeq Content Migration for SharePoint
eRoom Quest Software File Migrator
File Shares Quest Software File Migrator
Notes Quest Software Notes Migrator
Public Folders Quest Software Public Folder Migrator
SharePoint 2003/2007/2010 to SharePoint 2003/2007/2010 Quest Software Migration Manager for SharePoint
Custom Databases seeUnity Enterprise Integration for SharePoint
Custom Repository/ECM API seeUnity Intelligent Content Migration
File Share Coexistence seeUnity Enterprise Archiving & Distribution for SharePoint
File Shares Syntergy Bulk Loader for SharePoint
LiveLink Syntergy LiveLink Exporter and Bulk Loader for SharePoint
SharePoint 2003/2007 to 2003/2007 Syntergy Cut and Paste
Aqualogic/Plumtree Tzunami Deployer
Custom Repository/ECM API Tzunami Deployer
Documentum Tzunami Deployer
DocuShare Tzunami Deployer
eRoom Tzunami Deployer
File Shares Tzunami Deployer
Hummingbird Tzunami Deployer
Hyperwave Tzunami Deployer
LiveLink Tzunami Deployer
Notes Tzunami Deployer
Public Folders Tzunami Deployer
SharePoint 2001/2003/2007 to 2003/2007/2010 Tzunami Deployer
Documentum Valiance Partners TRUmigrate
CMS 2002 Vamosa Vamosa Solution for SharePoint 2007
Custom Repository/ECM API Vamosa Vamosa Content Migrator
SharePoint 2003 to 2007 Vamosa Vamosa Solution for SharePoint 2007
Documentum Vernion Easy2Share
eRoom Vernion Easy2Share
Notes Vernion Easy2Share
Oracle/Stellent Vernion Easy2Share
Notes Visionet systems VisiMigrate Enterprise
Custom Repository/ECM API Vitalpath Path Builder for SharePoint
DocuShare Vitalpath Path Builder for SharePoint
SharePoint 2003/2007 to 2007/2010 Xavor SharePoint Migrator (XSPM)

TDD Unit Testing SharePoint – What Tools Do You Use? A Twitter Conversation Q & A

This morning I was in a meeting with a bunch of developers and they asked me… “What is the best tool for Unit Testing SharePoint?” I talked to them about patterns and practices SharePoint  (Thanks Francis Cheung, your User Group session at Puget Sound SPUG paid off.)

I then went to http://www.SharePointDevWiki.com right in the meeting to look at the list of tools and resources and found a post on SharePoint Development with Unit Testing.  They were asking alternatives to WSPBuilder and I knew the spdevwiki had a comparison of solution package development tools including a killer side by side chart of WSPBuilder with STSDev and VSeWSS.  The resources were extensive and the name brand resources were great!  The people in the meeting had heard of the tools, but were looking for more.  Next I went to SharePointReviews.com to see if any third parties had any dev/testing tools, but I didn’t see a development category.  The deployment category didn’t fit.  Twitter was running through my brain.  It prompted me to say let me ask my twitter buddies… (even though my friends in the states were asleep.)

I posted this question to Twitter in the middle of my customer meeting and had 80% of theses responses by the end of the meeting.  The customer was super impressed by the quick quality responses.

JoelOleson – @jthake what is the best unit testing tool for SharePoint?

@AndrewWoody @harbars What do you use for Unit Testing SharePoint?

andrewwoody – @joeloleson @harbars either MSTest (built in to VS) or NUnit as framework with Typemock Isolator to mock out SharePoint

mahoekst – @joeloleson Check out: http://www.codeplex.com/spg they have used unit testing in version 2 of the solution (including mocks) very nice.

rmaclean – @joeloleson TFS – white paper on it: http://tinyurl.com/tfssharepoint

zimmergren – @joeloleson @AndrewWoody I use NUnit myself, and the Resharper has some cool testing utilities to help out.

JoelOleson – @AndrewWoody Awesome. It’s nice to see TDD coming to SharePoint, but we need more. Experience with Typemock, Isolator?

andrewwoody – @joeloleson yes lots of experience with Typemock Isolator see Unit Testing posts here http://www.21apps.com/agile/

JoelOleson – @zimmergren @AndrewWoody cool. Thanks for sharing. I’m filling in a customers here in Germany with this rich info.

harbars – @joeloleson @AndrewWoody NUnit is my preferred option. DevPartner also good …, MSTest is good also, lifestyle choice!

What an incredibly rich interactive world wide discussion in the course of an hour… and who knows… it may not be over!

What did I learn:

We also discussed some things I’d learned from twitter from a search on “#MIX09 and SharePoint.”

@katriendg VS2010 will have full debugging and development experience for SharePoint, yeah some people will be happy! #mix09

Blog Resources

Snippet from SPDevwiki on SharePoint Development with Unit Testing (from Top posts) please Contribute! Thanks Jeremy Thake, @spdevwiki the Wiki Rocks!

  • Microsoft – SharePoint Guidance – Unit Testing
    Microsoft has published an article on Unit Testing in SharePoint as part of the SharePoint Guidance
  • Andrew Woodward – 21Apps
    Andrew has a great set of articles on Unit Testing in SharePoint Development including 2 excellent White Papers.
  • Francis K. Cheung – Unit Testing SharePoint 2007 Applications
    Francis discusses the approaches and also the reasons why SharePoint Unit Testing is so difficult.
  • SPTDD: SharePoint and Test Driven Development, Part One by Eric Shupps
  • Spencer Harbar – "Test Driven" SharePoint Development