Comments on “DotNetNuke and SharePoint, part deux”

responded to Shaun Walker’s DNN
vs. Sharepoint Feature Matrix
, and for some reason I can’t get the Submit
button to work on Bil’s blog.  So I’m posting my comments here.  Two
points to add to Bil’s great list:

1) Unless there have been some changes made, storing files in the file system
with DNN is not secure.  This is the only way to store files in DNN 3
(unless the newest release changes this), and one option in DNN 4.  Someone
paying attention can access files by direct URL.  In SharePoint, files are
stored in the database, and acceses to these files can be strinctly controlled
at several levels.

2) It’s actually far, far easier to develop and deploy SP webparts with the
free SmartPart
than it is to develop DNN PAs.  The distribution method of PAs is great,
but development of DNN modules can be a pain.  The SmartPart allows any
ASCX control to be used in SharePoint, and has found significant use in my SP
installations.  Without the SmartPart, developing for either can be a
miserable experience.

SharePoint or DotNetNuke?

In Mindsharp’s
SharePoint Discussions group
, the following question was posted:

Does anyone have experience
with both SharePoint and DotNetNuke to the point where they could comment on
the benefits of each are compared to the other?  Is there a type of
installation where you might use one vs. the other?

Here’s the answer I posted in the group:

SP and DNN are very different beasts which offer some similar
functionalities.  I’m using SP as a generic term for either WSS or SPS,
which is a different decision.  DNN is really an easy website creation
tool, while SP was designed to be an information repository and collaboration
tool in a corporate environment.  The best way to summarize might be
“Extranet vs. Intranet”.  My thinking is Extranet=DNN, Intranet=SP. 
DNN is designed to be used and maintained by persons with little IT
experience.  SP is one of those things that will require having a decent IT
person around.

First question would be whether or not you need tight integration with
Office.  If so, then hands down your only choice is SP.  Another
feature that DNN is lacking is a document library with version control, although
one may appear down the road.  SP offers full-text indexing of the
documents you store in it, and so you can search inside the documents in its
libraries.  DNN doesn’t offer this.  SP stores its documents very
securely in the SQL database; DNN stores them as files, which means if someone
knows the right path, the site’s security could be bypassed and the documents
downloaded directly.

If you don’t need the tight Office integration, DNN is a very valid choice
for a website.  A good use would be for a school’s website.  DNN
supports multiple child portals, just as SP does, and you can distribute
administration, just as with SP.  The school could have its main portal,
and each department or club could have its own child portal, each with their own
radically different looks.  True, you could pull off the school’s website
with SP, but it wouldn’t be so flexible, and you would put in a lot more effort
to make it work.

Another consideration is what type of authentication you need to use. 
WSS was designed to integrate with Active Directory, DNN was designed to work
with anonymous users and Forms Authentication.  There are ways to make DNN
work with AD, and WSS work with anonymous users, but anytime you make a change
as significant as authentication scheme, you introduce adminsitrative
overhead.  One point of using these tools is to simplyify your life, not
create extra work.

Cost might also be a consideration.  True, if you have Windows 2K3, then
WSS is essentially free; DNN is entirely free.  There are a lot of good web
parts available for free and cheap for WSS, but many are very expensive. 
DNN can also be extended with inexpensive or free modules, and even the ones you
have to pay for are still pretty cheap.

One main difference I see is the amount of different things you can do with
DNN.  DNN can also serve as an e-commerce platform, or host robust photo
galleries (rather than the “list of photos” in SP).  There are some nice
calendar modules for DNN that not only list events, but allow registrations and
can accept payment for them.  In this case, it might seem like SP is
lacking in some functionality, but SP was never designed to do these
things–these are functions of a website, not a collaboration tool.

Skinning is a bazillion times easier with DNN.  The DNN core team did a
great job with its skinning engine, and there are lots of skins available for
free or cheap.  Changing the look of a single page, or entire portal is
done with a simple package upload and a few mouse clicks.  With enough
work, you can do some really nice skinning on SP (both SPS and WSS), but it
takes some work.  I’ve done both, and DNN is by far easier and more
powerful (mainly due to DNN’s simplicity–features which are hidden or difficult
really aren’t features at all).

DNN runs very well in a shared hosting environment; SP, not so much. 
Although DNN only ships with SQL Server provider, if you’re handy enough, you
would write one for MySQL, or Vista, etc.  You don’t have that option with
SP–it’s SQL Server only.

<update 2006-02-01>

If you didn’t come here from there, Bil Simser has a much more detailed post
Bil also includes some of the features of SharePoint ‘v-Next’ (currently due to
be released at the end of this year), and better breakdown of the OOTB



Saving Outlook 2003 E-mails to SharePoint Document Library

I see this a lot, and it’s easier than you might think:

  1. Open the e-mail, and click File >> Save.
  2. In the “File Name”, enter the URL to the document library, and click Save.
  3. A view of the document library will open in the folder list window.  Confirm the file name (which will be the e-mail subject), change it if you need to, and click Save again.
  4. Your e-mail message is now saved in the document library!

Tip #1: You can get the URL of the document library by navigating to it, and copying everything up to the end of the library name.  For example, you’d use http://MyPortal/sites/TestSite/Document%20Library/.

Tip #2: If you need to save a lot of e-mails in the same document library, create a Network Place for the document library.  Open My Network Places and use the wizard to create a new network place for this library, using the URL as shown in Tip #1.  Then, you can choose this library by browsing My Network Places.

Gantt Chart Web Part

Teun Dynstee released his Gantt Chart Web Part today:

The part allows you to specify a list and view to render. You select the fields from the view that will indicate the start and end date of an item. The third required field is the title field. Because the part works with view fields, you can also use calculated fields to specify the start date, end date or title of the item.


Now playing: Dierks BentleyLot of Leavin’ Left to Do

SharePoint Quick Launch Web Part

Bob Mixon has released a beta of his Quick Launch Web Part:

This Web Part can be used to replace the hard coded HTML in a Windows SharePoint Services (WSS) Site. The first advantage to this Web Part is simply being aware of the current users security permissions. Meaning, if a user does not have the permissions to view the items in a document library or list, even if it is marked to be displayed on the Quick Launch bar, it will not be displayed.

There are many additional features currently present in this Web Part, which include:

  1. The ability to turn any set of lists on or off. So if you chose to not display Surveys, simply turn it off!
  2. The ability to display separation lines below the grouping headers.
  3. And, the best of all features, the ability to dynamically add any items to the quick launch bar through a standard SharePoint list.


Now playing: MPopmuzik

SharePoint Error: HTTP Error 403 – Forbidden: Access is denied.

This is for people who get the following error either immediately after you create a WSS site, or when you try to access a WSS site or SPS portal:

You are not authorized to view this page
You do not have permission to view this directory or page using the credentials that you supplied.

Please try the following:

Contact the Web site administrator if you believe you should be able to view this directory or page.
Click the Refresh button to try again with different credentials.
HTTP Error 403 – Forbidden: Access is denied.
Internet Information Services (IIS)


Technical Information (for support personnel)

Go to Microsoft Product Support Services and perform a title search for the words HTTP and 403.
Open IIS Help, which is accessible in IIS Manager (inetmgr), and search for topics titled About Security, Authentication, and About Custom Error Messages.

If you are using SPS, try to access http://<portalname>/default.aspx instead of http://<portalname>/.  If you can access the URL with the pagename, then the problem may be in your application pool settings.  Likewise, if you try to access a WSS site and get this error, see if you can add default.aspx to the URL.  If that works, same problem.  You might also get this error immediatelyt after you create a WSS site, at the point where you are supposed to pick the site template.

Fortunately, the fix is really easy.  You need to open up the IIS manager on the server, and the open the properties for your virtual server.  On the Home Directory tab, you probably need to change the Application Pool the site is running under.  There’s probably one named SpsAppPool or something like that.  If there are several and you’re unsure, try choosing them one by one, and trying to access the URL (the one without the default.aspx) after each change.

For more technical information, I recommend

Now playing: The CallingWherever You Will Go

A Few Clarifications For Mike Drips

Leaving the easy ones aside, here’s a few things Mike Drips might want to know before he writes another article:

1) Hello?  Java and JavaScript are two separate technologies.  JavaScript was independently developed by Netscape, Java was developed by Sun.  JavaScript was actually known as LiveScript until Netscape and Sun entered into a marketing agreement, and rebranded LiveScript as JavaScript.  Netscape’s JavaScript was marketed as a lightweight complement to Sun’s Java on both the server and client side.  That’s right–the ‘Java’ part of ‘JavaScript’ is a marketing gimmick, not a technological bond between the two (however, since both are dreived from some C-variant, you’ll find inevitable similarities).

Microsoft’s JScript almost completely supports Netscape’s JavaScript.  More importantly, both are considered an implementation of ECMAScript, so you can count on a very standard base between the two.  You could make an equal counterargument that Netscape’s JavaScript almost completely supports JScript, but since only ECMAScript is the accepted standard, support for that is all that really matters.

Serious developers know there is more documentation available than just MSDN Library (while we’re on the subject, MSDN Library is head, shoulders, sternum and probably naval above what Netscape and Sun provide for online knowledge).  There’s these things called ‘books’, you see, and you can buy them fairly cheaply.  They are full of really good information.  If you insist on downloading something for free, MS provides a complete JScript reference in its Windows Script Documentation.  You’ll find the latest version at  This download also includes a VBScript reference.

Here’s the skinny on the lawsuits: they were never about JavaScript.  Not one.  Nor were they about the fact MS built a better Java VM for Windows than Sun did.  They were about the fact that MS called their product a Java Virtual Machine, and infringed on Sun’s trademark.  And, MS wasn’t including non-MS software with its OS, even though anyone who wanted or needed the Java VM could go download it for free whenever they wanted to.  Trademark and market exclusion, not technology.

In response to

Once you get past the shock and horror of encountering the alien JavaScript files, to professionally program SharePoint you also have to deal with CSS, HTML, XML, ASP.Net, Visual Studio.Net, and your choice of C# or VB.Net. That doesn’t include dealing with Windows Server 2003, Active Directory, and the wonderful world of IIS.

All I can say is “OMG!  To program a website, you have to know how to program a website!”  Guess what–if you wanted to program for another platform, you’d still need to know HTML, CSS, XML, Apache and probably PHP and DreamWeaver.  BTW – You forgot FrontPage 2003, which is the recommended editor for SharePoint pages, and SQL Server 2000.  You only need VS if you want to build web parts.

Exactly how ‘alien’ should a technology be that has been around since 1995?  Hello?

2) The next release of SharePoint isn’t timed for Longhorn, it’s timed with Office Wave 12, which is scheduled for late 2006.  SharePoint doesn’t rely on Windows APIs now (the WSS are extensions to the web server, not a native API), so the next OS release is irrelevant.  SPS v3 will run on Win2K3 servers.

3) WSS is not a subset of SPS.  SPS is a superset of technologies that adds functionality on top of WSS.  MS does clear this up at

SharePoint Portal Server 2003 is a secure, scalable, enterprise portal server built upon Windows SharePoint Services that you can use to aggregate SharePoint sites, information, and applications in your organization into a single, easy-to-use portal. SharePoint Portal Server 2003 relies on Windows SharePoint Services to provide basic Web hosting and document storage functions, but extends it with additional functions for navigation, search, application integration, and personalization.

This particular page might be more recent than Mike’s SP experience, but that explanation has been around for a long while.

4) You didn’t start with the “Microsoft SharePoint Products and Technologies Resource Kit”, did you?  I guess if you don’t know how to program a website, then yeah, a lot of the SP books will be useless.  That web programming thing might have been something to look into before diving into a SP installation.

5) MS laid out a very solid plan for SharePoint in April at their strategy briefings for CIOs.  It was good.

Pre-configuring Windows 2003 Server for SharePoint Portal Server 2003

After you’ve installed Windows Server 2003, you need to add the role of Application Server to your server.  This will configure IIS, SMTP, etc. and you can optionally choose to configure FrontPage 2002 Server Extensions and the ASP.NET Framework.  At this point, do configure the ASP.NET Framework, but do not configure FPSE 2002, even if you are going to use FrontPage to customize your portal!  You don’t need the FPSEs on Win2K3 to customize SPS 2003.

If you did happen to install the FPSEs at this step, your Default Web Site will be extended with FPSEs, and appear to the SharePoint Central Administration to be a site already in production (which requires a different upgrade path).  You won’t be able to extend the Default Web Site to use SharePoint unless you remove the FPSEs.  You’ll know when you get this error message:

Setup has detected that your default virtual server is running FrontPage 2002 Server Extensions. To continue Setup and upgrade your default virtual server later, click OK. To exit Setup and move data from your default virtual server, click Cancel. For more information about moving data from FrontPage 2002 Server Extensions, see the Administrator’s Guide for Windows SharePoint Services.

Chances are, clicking OK isn’t going to do a darn thing.  There’s a Microsoft KB article that deals with the problem if you’ve already caused it:

“Virtual Server Is Running FrontPage 2002 Server Extensions” Message When You Run Windows SharePoint Services Setup or When You Try to Extend the Virtual Server with Windows SharePoint Services


SPS v3 and Office “Wave 12”

Back in March or April, Microsoft held a strategy summit for information officers here in Pittsburgh.  One of the sessions I attended had to do with the nerxt versions of SharePoint Portal Server (SPS v3) and Office System (“Wave 12”).  Here are some of the notes I took at that presentation.  This was all publicly presented, no secret side conversations involved.  The main foci of Wave 12 are knowledge worker collaboration and data centralization/management.  As always, features and dates are subject to change.

Microsoft’s research indicates a person receives between 50% and 75% of their job-related information from other people, and about 80% of a corporation’s knowledge is stored in “personal storage” (file servers, My Documents, PST files, etc).  This shows a large need to a collaboration platform, and that’s how Microsoft views the next wave (Wave 12) of the Office System.  “Office System” is a collection of servers (such as SharePoint Portal Server), clients (Word, Excel), and services (such as SQL Server Reporting Services).  An enhanced Live Communication Server will be the presence and instant messaging provider to enable real time collaboration on demand.  Enhanced digital rights media (already included in Windows Server 2003) can be used to limit the use of e-mail and documents.

As has already been announced, Office clients will consume a custom XML schema and make use of custom web services.  For instance, utilizing Smart Tags in a Word document will allow for a mail-merge via a web service accessing an enterprise database.  The workflow platform can be managed by non-developers, giving more control of operations to each business unit.  The data satys centeral, but can be used by each knowledge worker as they need to.

Document approvals and versions will be managed via SPS, and include metadata to set retention and expiration/deletion policies.  Document approval will use Outlook, which will route approvals via Exchange in order that e-mail addresses are specified.

Office Web Parts will be enahnced.  Excel can be used to create a dashboard, then publish it as a web part to SPS.  When the dashboard is loaded, the data are refreshed, providing a timely view of information.  End users will have more control to create office web parts to suit their business needs.

Outlook 12 will have improved task and time management tools.  Tasks can be associated with the a day and time, and can appear as appointments to improve time management.  OneNote, SharePoint and Outlook will be able to share tasks.

As with Office 2003, there will be an Access Conversion Toolkit for migrating Access projects to from earlier versions.

A tecnhical beta of Wave 12 is planned for Q4 CY 2005 (Oct-Nov-Dec of 2005), and a public release one year later.