The Art of SharePoint Evolution

Custom edit forms breaking if workflows or custom event receivers/handlers are attached.

November 9, 2008 · 1 Comment

This has been documented elsewhere, but just in case you missed it…

Scenario: You have a custom editform.aspx where you made it all snazzy looking and then you decide to add a custom workflow or event handler to the list to handle data validation or business logic. When you try to submit updates you get a nasty error that looks like this:

The data source control failed to execute the update command.

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: Microsoft.SharePoint.WebPartPages.DataFormWebPartException: The data source control failed to execute the update command.

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.


Stack Trace:

[DataFormWebPartException: The data source control failed to execute the update command.]

Microsoft.SharePoint.WebPartPages.DataFormWebPart.UpdateCallback(Int32 affectedRecords, Exception ex) +170

System.Web.UI.DataSourceView.Update(IDictionary keys, IDictionary values, IDictionary oldValues, DataSourceViewOperationCallback callback) +4434003

Microsoft.SharePoint.WebPartPages.DataFormWebPart.FlatCommit() +724

Microsoft.SharePoint.WebPartPages.DataFormWebPart.PerformCommit() +92

Microsoft.SharePoint.WebPartPages.DataFormWebPart.HandleOnSave(Object sender, EventArgs e) +61

Microsoft.SharePoint.WebControls.SaveButton.OnBubbleEvent(Object source, EventArgs e) +1906

System.Web.UI.Control.RaiseBubbleEvent(Object source, EventArgs args) +50

System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +39

System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +321

Solution: Even though my server had the SP1 and the Infrastructure Update, I was still getting this error. Luckily, there’s a hotfix from March 2008 for this issue - http://support.microsoft.com/kb/949749

→ 1 CommentCategories: Uncategorized

Setting the AfterProperties of a DateOnly Field

November 2, 2008 · 1 Comment

I was banging my head for a good 4 hours trying to figure this event handler issue out.

Scenario:
Creating an ItemUpdating event receiver that will intercept and disregard an update on a Date Only column/ field type.

Usual Case with Text Fields:

When working with text fields, you would typically do something like this:

this.DiasbleEventFiring();
SPListItem currentItem = properties.ListItem;
string beforeValue = currentItem[fieldDisplayName].ToString();
properties.AfterProperties[internalFieldName] = beforeValue;
this.EnableEventFiring();

Error: If you tried the above with a Date field, you’ll get an error similar to invalid Date/Time value or format.


Not so usual case with Date Fields:

Using a Date Only field, I had to do this:

this.DisableEventFiring();
SPListItem currentItem = properties.ListItem;
DateTime beforeValue = System.Convert.ToDateTime(currentItem.Fields[displayName].GetFieldValueForEdit(currentItem[displayName]));
properties.AfterProperties[internalFieldName] = SPUtility.CreateISO8601DateTimeFromSystemDateTime(beforeValue.AddDays(1)).ToString();
this.EnableEventFiring();

I went through 3 SharePoint Dev books and countless online samples but couldn’t find anything on using the AfterProperties for Date fields so hope this helps you out! Credit goes to clues found in this MSDN SharePoint Forum post.

→ 1 CommentCategories: SharePoint
Tagged: , ,

Troubleshooting: SharePoint Backup Jobs stuck on Search Database/Components

October 21, 2008 · No Comments

Environment:
Windows Server 2008
1 x MOSS WFE Server
1 x MOSS APP Server
1 x SQL Server

I recently had to troubleshoot an environment where SharePoint backup jobs were becoming stuck on the Search related databases. The backup status would stay on the initializing phase and wouldn’t go past 50% for these databases and eventually the whole backup sequence would terminate or we’d have to terminate it manually. Checking all the event and diagnostic logs didn’t yield any helpful clues except for the generic event ID’s 6398, 7076, and 6482 which seemed totally unrelated at the time.

Upon closer inspection and some more sleuthing it was discovered that the incremental index jobs were scheduled and running during the backup jobs. Apparently, the backup job was getting confused and got tripped up on this fact. So we scheduled the incremental crawls to run outside of the backup window and everything turned out ok!

→ No CommentsCategories: SharePoint
Tagged: , ,

Good Read: “Finding and Growing Great SharePoint Talent”

October 16, 2008 · No Comments

I never ever linkback to any other blogs but Arpan Shah recently posted a great piece of commentary that I had to share. It’s about the state of finding and retaining qualified SharePoint professionals which is a great read for anyone that is looking to hire for SharePoint positions.

One consistent question that’s come up from customers, partners and internal Microsoft communities is: “How do we find great SharePoint talent?” I think an equally appropriate question is “How do we keep SharePoint talent?”.

So let’s start with the first question - How to find great SharePoint talent. There is a lot of talent & interest out there, but it’s important to find the right talent. Clearly this question depends on the type of talent you are looking for (eg. developer, IT Professional, architect, designer, analyst), when you need this person (eg. now, in 2 weeks, in 6 months), how long you’re looking to engage this type of person (eg. contractor, full-time, 1-time engagement) and several other factors (eg. remote, on-site).

Here are some tips:

Plan ahead for talent. It’s not always possible, but the more time you have to hire, the better job you’ll do. It’s too often that managers put developers or IT professionals with no experience with SharePoint on the job and say “go for it!”. One of the most frequent situations I’ve seen is an ASP.NET developer who is tasked to and expected to develop a SharePoint solution - no. An ASP.NET background is absolutely an asset, but that does not equate to SharePoint experience. Without good planning and architecture for your SharePoint deployments, you could run into challenges later on. For eg., a piece of code that runs just fine right now, may run into performance issues as the content grows. The SharePoint Best Practices Series is really focused on helping our customers & partners to plan appropriately.

If you need to employ someone now, either hire someone who has SharePoint experience or push back your plan, grow and invest in your talent. It’s better to wait than to go ahead and deploy/develop in haste.

SharePoint Expertise. SharePoint expertise is a function of training & real-world experience. And as I mentioned before, ASP.NET training/experience does not equal to SharePoint training/experience; SQL DB expertise does not equate to SharePoint IT Pro expertise. It’s important to keep in mind that folks with a strong Microsoft background in development or deployment can grow into SharePoint experts - absolutely. I recommend hiring smart dynamic people and investing in them through SharePoint training and certification.

If you are looking to hire someone to get started immediately, don’t rush your hiring decision. You need to make sure you have found good SharePoint talent. There are a lot of professionals that have SharePoint on their resume - take a deeper look. There is a large pool of SharePoint experts that has steadily increased over the last couple years. Things to look for, by no means comprehensive or a guarantee, are: SharePoint certification, real-world examples/experiences, references & background. Do a serious interview loop. Ironically, this especially goes for short-term contractors and partners you are looking to engage for a short amount of time - you are hiring them for the experience they will bring. Long term employees, of course, you need to make sure they have the competencies you are looking for to be successful at your company and that they possess the ability to learn and become a SharePoint expert.

Remote/Onsite. A strong onsite SharePoint presence is something important to have. Whether it’s a development lead or an architect, you need a “quarterback” that is accountable and can make sure the right things get done. This is true not just for SharePoint, but for any software project. If you’re hiring a contractor who’s a SharePoint rockstar developer/consultant/architect make sure that you either 1) have a quarterback onsite that can run the project and be accountable OR 2) the contractor works onsite. If you lack a strong onsite presence and hire a remote contractor, that doesn’t do the job.

Keeping Talent. Investing in your people is a great thing - all managers should do that. It’s important for your business, company & people. Many partners & customers have commented that they are having a tougher time retaining SharePoint talent. I can share with you my personal experiences on this front. I think I have one of the strongest teams. All managers should feel the same way about their team with the right hiring, training & growth opportunities. It’s important for each manager to have regular career discussions with each employee and have a good understanding of where employees stand; have a management retention strategy and a good pulse on team health. What is the career aspiration for your top talent? What is their trajectory in the current role and in other roles in your company? If someone is talented & their career aspirations can be met by your company, work with them on making the necessary adjustments. If someone is talented & their career aspirations cannot be met by your company, work with them and help them find the right opportunity. I know that sounds counter-intuitive, but planning, working with them, and parting with absolutely good intentions is a win/win. What you don’t want happening is your top rockstar knocks on your door and says “good-bye”. I’ve been lucky because everyone who has left the team, I’ve worked with them on that transition. So no surprises. Just like the first point about hiring good talent, plan ahead for keeping talent.

→ No CommentsCategories: SharePoint · Tech
Tagged: , , ,

Custom SharePoint Event Handlers not Updating on New Visual Studio Builds

October 3, 2008 · 3 Comments

That wasn’t too descriptive was it? Not sure if this has been documented anywhere else but I came across a quirk today while I was trying to create custom Event Handlers for a Document Library.

Environment:
Windows 2003
MOSS 2007
Visual Studio 2008
Visual Studio SharePoint Extension Kit 1.2

Scenario:
Using the EventReceiver SharePoint template in Visual Studio, I started out with the ItemUpdating method and deployed some code a few times and then decided to switch to using the ItemUpdated method instead. For a dozen builds or so after that I couldn’t figure out whether or not my code was working or the ItemUpdated event was even firing. When I switched back to the ItemUpdating method, it worked as expected even with new code. Switched back to ItemUpdated and no good, no events fired even after IIS resets.

Solution:
Finally I decided to remove the event handler manually by doing the following:

- deactivated the feature
- retracted the solution
- deleted the solution
- deleted the dll in the GAC
-IISReset

Then after rebuilding/redploying the solution everything worked just as expected. Woohoo!

→ 3 CommentsCategories: SharePoint
Tagged: , ,

So I’m not going to be a Microsoft SharePoint Premier Field Engineer after all…

September 22, 2008 · 8 Comments

I got some depressing news last Thursday via an overnight FedEx letter from MSFT. Three days before I was to be shipped out to Redmond to begin a new life, they officially denied my quest and retracted the job offer that was given to me 3 weeks prior. Heck, they even went so far as to denying me any employment offers until July 2015! That’s pretty damn harsh if you ask me…

So “what the hell happened?!” you’re probably wondering…

<insert shameless self-promotion>

Looking for an experienced SharePoint Professional for your next project? Look no further! I’m making myself available to you and your organization anywhere in the world. Looking for any of the following SharePoint related skillsets?

SharePoint Infrastructure Architect
SharePoint Information Architect
SharePoint Administration
SharePoint Business Analyst
SharePoint Demos
SharePoint Disaster Recovery
SharePoint General Consultant
SharePoint Development/ Enhancements
SharePoint Ninja
SharePoint Optimization
SharePoint Proof of Concepts
SharePoint Training (Admin/ Basic Dev /End-user)
SharePoint Troubleshooting
And just about anything else related to SharePoint.

Henry Ong (that’s me) has exceptional soft and technical skills that can put a smile on any hardened CIO or project manager out there!

If you’re interested, contact me now before someone else books me! If I was good enough for Microsoft, why not you right? :)

henry [at] henryong.com

</insert>

So back to my story. Apparently some person(s) up in Redmond’s “ethics committee” or something of that nature wasn’t so impressed by a negative mark on my background check. No, I didn’t hurt anyone. No, it wasn’t drug or alcohol related. It was something juvenile I did a few years back and heck, I felt so disgusted with myself afterwards I even voluntarily turned myself into two random cops on the street in an attempt to fix a problem that nobody was even aware of. Needless to say that one attempt to be forthright and honest turned into this lost opportunity with Microsoft.

Moral of the story? CLEAR YOUR BACKGROUND CHECK of anything negative going back at least 7 years if you’re looking to apply for a position @ MSFT. Why didn’t I do that? Well, I did. Except for the law firm I was trying to use lagged their ass off and it’s taking 3 times as long and 500x more expensive as if I had gone through with the expungement process myself.

So again, if you can overlook a once in a lifetime stupid juvenile decision that I made a long time ago and if you’re looking for a SharePoint Professional that can travel to any corner of the earth, provide remote support, or pitch SharePoint to you executive team feel free to contact me anytime @ henry [at] henryong.com.

I am also open to full time positions in either Orange County or the San Francisco Bay Area of California.

Thanks for listening! :)

→ 8 CommentsCategories: General · Personal · SharePoint
Tagged: , , ,

Anybody want my SharePoint domains?

August 23, 2008 · 2 Comments

Once upon a time I was going to do something with these domains but year after year they sit there collecting dust. So if you’re interested in buying any of the domains I have listed below, leave me a comment with your email in the ‘Mail’ field (it won’t get published) and I’ll get back to you asap. Also, if you or you know anyone that brokers domains, please let me know too! Thanks!

sharepointassassin.com
sharepointassassins.com
sharepointbuilders.com
sharepointninja.com
sharepointninjas.com
sharepointsolution.com
sharepointtime.com

Other domains I have for sale:

AIRPORTPLUGINS.COM
APARTMENT34.COM
APARTMENT3421.COM
APT34.COM
APT3421.COM
BSTRD.COM
CEREAYO.COM
CEREA-YO.COM
CEREYO.COM
CERE-YO.COM
CHATTERTRAIN.COM
DOINBIGTHINGS.COM
DOINGBIGTHINGS.COM
ERASEANOTE.COM
FLATBEANS.COM
GUERILLAEDUCATED.COM
GUERILLAEDUCATION.COM
HUNGRYROOMATE.COM
HUNGRYROOMATES.COM
HUNGRYROOMMATE.COM
HUNGRYROOMMATES.COM
LAAUTOCONCIERGE.COM
LOFTMATES.COM
LOLBO.COM
MILLENNIALMAVERICK.COM
MYERASABLES.COM
MYKEYBOARDSUCKS.COM
NONSENSORY.COM
NYAUTOCONCIERGE.COM
OCAUTOCONCIERGE.COM
OHSCHNAPP.COM
ORGNIZR.COM
RNDMLIFE.COM
ROUNDTALK.COM
SFAUTOCONCIERGE.COM
SPEAKRBOX.COM
STICKYERASABLES.COM
SUNSHINEJELLY.COM
TEMPTD.COM
VERBALIZR.COM
WTFBOX.COM

→ 2 CommentsCategories: For Sale · Personal
Tagged: , ,

I’m heading to Microsoft to be a SharePoint Premier Field Engineer!

August 20, 2008 · 6 Comments

Wahoo!!

Over 2 months and 5 interviews later, I was overjoyed to receive an employment offer from Microsoft to become a SharePoint Premier Field Engineer based out of Irvine, CA. I’ve been numb and ecstatic about the opportunity since seeing the email on Monday that I didn’t even know what to do with myself for awhile.

In case you’re wondering what a PFE does, here’s the job description from the Microsoft Careers website:

The purpose of the Premier Field Engineer (PFE) position is to provide Microsoft customers with reliable technical solutions to the complex integration problems associated with business solutions built using Windows SharePoint Services, SharePoint Portal Server and Microsoft Office SharePoint Server. Typical tasks performed in this role include specific problem isolation and correction, conducting application design and technical reviews, performance tuning, application stability consulting/troubleshooting, code reviews, porting/migration assistance, configuration/administration management, pre-rollout testing and general development consulting. The prospective PFE candidate should draw upon all resources at Microsoft, to advise and consult on the use of Microsoft SharePoint Technologies to avoid such problems in the future.

The PFE position requires a long list of technology experience or demonstrated understanding of these technologies. The ideal PFE skill set is grounded in a solid understanding of the Microsoft Windows platform. From this foundation, the PFE position is exposed to many technologies, including but not limited to: Windows SharePoint Services, SharePoint Portal Server, Microsoft Office SharePoint Server, IIS, SQL Server, development with .NET languages, XML and Scripting technologies, and data access technologies. Practical user mode debugging is a preferred skill, but not required.

Candidates must have exceptional customer service, problem solving, and communication skills, and the ability to work in a team environment. Must have sufficient technical depth to communicate with development and other internal organizations at a peer level as well as convey technical concepts to non-technical individuals. Must possess the ability to work with minimal supervision and operate as a self contained business unit within the Premier Field Engineering team. Must have the ability to work independently and as part of a team. Strong business background in Fortune 500 and/or experience with systems technology consulting firm desired.

Overnight travel is required. Travel requirements vary regionally and could be as much as 40-70%. Candidates must possess current passport or be able to obtain passport within 90 days of hire. They must be available for travel dispatch 24×7x365.

Education: College degree, preferably in Computer Science, is required. MCTS in SharePoint Technologies or other applicable advanced certification is strongly preferred, but not required at hire; however, must be obtained within 12 months of hire. Will consider related field (or equivalent) experience.

I’m going to be shipped out to Redmond for 3 weeks of training starting September 21 so this blog will be pretty quiet and comments may not recieve timely responses as I’ll have to spend most of my time wrapping up current projects. But next time, you can expect to see a post about my PFE interview experience! :)

→ 6 CommentsCategories: Personal · SharePoint
Tagged: ,

Can’t upload large files to WSS v3 on Windows Server 2008?

August 4, 2008 · 3 Comments

If you’re hosting Windows SharePoint Services v3.0 on Windows Server 2008/IIS 7.0 then you’ll eventually find that you can’t upload files around the ~30MB mark. The symptoms are as follows:

Single File Upload via Document Library
Nothing happens, you get a 404 page.

Multiple File Upload via Document Library
It seems to upload the file but then after the page refreshes, the file is nowhere to be found.

Single or Multiple File Upload/Copy/Paste using open with Windows Explorer
The file begins uploading but then towards the end you get the following error:

Could not find this item

This is no longer located in C:\filepath. Verify the item’s location and try again.

You can retry all day long but it won’t work. The solution is here: KB 944981

→ 3 CommentsCategories: SharePoint
Tagged: , , ,

Major Headbanging with WSSv3 + Extranet Collaboration Toolkit on Windows Server 2008

July 30, 2008 · 3 Comments

And I’m not talking about the rock and roll type of headbanging either. I’m talking about the type of headbanging where you slam your forehead onto your desk every hour or so and pray to the SharePoint gods for moral support.

I was actually part of a small group of non-Microsoft beta testers while the ECTS Solution Accelerator was still Beta and was able to work with it pretty easily in a dev 2003 environment so I thought what the heck, can’t be much different for a Windows Server 2008 environment right? Yeah…right… So I’ve spent the last couple of days trying to install this Extranet Collaboration Toolkit (Technet documentation here) onto a Windows Server 2008 production box hosting Windows SharePoint Services version 3.0 and luckily for me none of the documentation had been written for Windows Server 2008 yet. On the flip side, I get to try to write everything I remember down and to share my experience with all of you guys! :)

Architecture (My Setup)

1 - Windows Server 2008 Standard 64-bit hosting latest WSS v3.0 bits + AD LDS + the ECTS.
1 -SQL Server 2005 with a new instance just for the new WSS farm.
1- Windows Server 2003 Domain Controller (Also the Enterprise Root Certificate Authority).

Steps

  1. Installed 64-bit Windows Server 2008 Standard. This was basic, no biggies.
  2. Installed 64-bit WSS v3.0 with SP1
    - Download bits here
    - Download post SP1 infrastructure updates
    - Read deployment documentation here
    - Comments: The documentation is pretty good here, was able to install with all recommended service accounts.
  3. Download Extranet Collaboration Toolkit
    - Download bits here
    - Follow along with this prep and deployment guide
    - Comments: I’ll outline some of the gotchas I came across below

Gotchas

This section will pretty much follow the steps detailed in the deployment guide but I’ll intervene with comments where I met some difficulty.

Preparing the environment

1. Record all the Required Data on a piece of paper or something. Will make your life easier later on. These include of:

- Internal URL
- External URL
- ADAM host name
- SQL Server name
- etc, they’re all listed and detailed at the beginning of the guide.

2. Make sure you have an Enterprise Root Certification Authority deployed on your domain controller. If not, see this article. Comment: this step was pretty easy and self-explanatory.

3. Setup DNS alias using CNAME records for your internal and externally facing collaboration site URLs. Example internal: http://collab.mycompany.com; external: https://partners.mycompany.com

4. Install Certificate and Update Key File Permissions - now this part was a major pain the butt. I spent a solid day figuring this out. From the extranet server the guide tells us to use Internet Explorer to access our Enterprise Certification services, usually found at http://domainController/certsrv.

First road block was that with new features (security?) in Windows Server 2008 and Vista, you’ll need to download a hotfix for your Certification Authority (CA). I don’t have the link to the hotfix but you’ll see it when you try to access the webpage. The other gotcha in this step is the fact that it must be an encrypted site, so you’ll have to install a self-signed certificate and bind it to the IIS website. This part wasn’t too hard.

So after I got the CA prepped and was able to access the page, I resumed with the guide:

- Request a certificate
- Click advanced certificate request
- Click Create and submit a request to this CA
- Use the Web Server Certificate Template, type the FQDN of the extranet server. Ex: wssextranet.mycompany.com
- Under Key Options, create a new key set with Microsoft RSA SChannel Cryptographic Provider.
Click Automatic key container name and then select “the Store certificate in the local computer certificate store check box.”

This is where I got tripped up. I didn’t have that check box! I’m not sure why but I surely found out that it didn’t work after trying to complete this step for the 5th time unsuccessfully. Everytime that I was installing the certificate, it was being installed to the account’s profile and not the ‘All users’ profile. So with much digging I found 4 links that helped enable me to request a Certificate via command line.

- How to enable LDAP over SSL with a thir-party certification authority (KB 321051)

- Configuring LDAP over SSL Requirements for AD LDS (Windows Server 2008 )

- MSDN SharePoint Forum post by Dan Barua 7/24/2008

- Advanced Certificate Enrollment and Management

So after creating the request.inf file, and replacing the “Subject=” with the extranet server instead of the DC (another gotcha), I created a request file using:

certreq -new c:\request.inf c:\request.req

Then you have to submit it to your Enterprise CA using:

certreq -submit -attrib “CertificateTemplate:webserver” c:\request.req c:\certnew.cer

Then install using:

certreq -accept c:\certnew.cer

So now the certificate should be installed to the right place, except I was having a hard time finding where it was installed to so I found another way to change the permissions on the Certificate that I didn’t see mentioned in any of the documentation:

- Go to Run > MMC > Add in Certificates snap-in for Local Computer account
- Expand to Certificates (Local Computer) > Personal > Certificates
- Right-click on your certificate > All Tasks > Manage Private Keys… > Add Network Service permissions.

Unfortunately, we won’t really be able to test this out until we install the ADAM/AD LDS instance so you may have to loop back to this step and review if you can’t connect to it later on.

5. Set up the Web App, Site Collection, Extend it to port 443, and Set up Forms-based Authentication - This was easy, basic SharePoint admin stuff. Just make sure you bind an SSL cert to the extranet site in IIS or else you won’t be able to browse to it.

Install ECTS

This was tricky as your mileage may vary depending on your environment. The setup wizard didn’t work for me so I had to install all the components manually one by one.

1. Run the ADAM Setup Script - As pointed out by a post in this thread, you’ll have to manually update the ects_setup_adam.vbs file to reflect the new location of ldifde.exe.

strLDIFDE =  objFSO.BuildPath(colProcessEnvVars(”windir”), “\system32\ldifde.exe”)

Then run cscript ects_setup_adam.vbs CN=ExternalUsers,DC=domain,DC=com

After this step you’ll be able to test to see whether or not your certificate from earlier works properly with your LDAP connection. To test this:

- Run > ldp.exe > Connect > your AD LDS server’s FQDN, port 636 (default), check SSL > OK
- You should get a response and no pop-up error.

2. Run the Database Setup Script - For some weird security issues, I was unable to run this script from my extranet server so I copied all the files over to my SQL Server and ran the script there with no problems.

cscript ects_setup_sql.vbs sql\instance

3. Run the ECTS Setup Script - This step really gave me some new gray hairs. For some reason I was getting the following error:

Adding the WSPs to SharePoint…
ERROR: Could not add the ECTSBase.wsp to SharePoint.  Script aborting…

So after awhile, I thought I would try on a Windows 2003 server to see what would happen. I noticed that this time the script went further than on the 2008 Server so I ran it once more but this time interrupted the script right after it generated the WSPs and before it tried to deploy. I copied the WSPs over to the Extranet server and then tried to manually add them to the solution store. Then I noticed that my service account didn’t have access to run STSADM even though it was a member of the Local Administrators’ group. I still don’t know why this is, but after running STSADM as the Local Administrator account I was able to do the following commands to add the solution to the solution store:

stsadm -o addsolution -filename c:\ECTSBase.wsp

stsadm -o addsolution -filename c:\ECTSSolution.wsp

Now they show up in Central Admin > Operations > Solution Management. Woohoo! From here you can deploy the 2 solutions to your web app. Next step is to activate the features at the Site Collection level. I compared the available number of visible features to the script file and noticed a discrepancy. There were some hidden features - 6 visible and 2 hidden.

So I carefully activated each feature one at a time according to their order in the setup script:

stsadm -o activatefeature -name ExternalCollaboration -url http://collab

stsadm -o activatefeature -name ConfigurationUtility -url http://collab

stsadm -o activatefeature -name SiteCollectionApproval -url http://collab

stsadm -o activatefeature -name SiteCollectionManager -url http://collab

stsadm -o activatefeature -name UserManager -url http://collab

stsadm -o activatefeature -name CreateSiteCollection -url http://collab

stsadm -o activatefeature -name ExternalUserApproval -url http://collab

stsadm -o activatefeature -name ECTSBase -url http://collab

Working with the ECTS Web Parts

Configuration Utility Web Part - At first I was unable to update any of the configurations but after scanning my event viewer, it mentioned that a service account had insufficient permissions to the SharePoint_AdminContent_GUID database. Fixed this by giving the account sys_admin permissions to that DB.

[Update - 7/30/2008 5:30pm]

Site Collection Manager Web Part - I was getting an access denied page when trying to approve the submitted site creation request. Event ID error 6141. Fixed it by making the Application Pool account run as a domain account instead of Network Service. - TechNet

Adding External Users Error/External Login Error: “An invalid dn syntax has been specified. (C:\inetpub\…\web.config line 133)”. Solved this by manually updating the web.config file’s ADAMConnectionString. The LDAP string was incompletely configured. Should be:

<add name=”ADAMConnectionString” connectionString=”LDAP://ADLDSserver.mycompany.com:636/CN=Users,CN=ExternalUsers,DC=mycompany,DC=com” />

To be continued… I’ll update this post with more information as I continue to work with the ECTS.

→ 3 CommentsCategories: Aha! · SharePoint
Tagged: , , , ,