Language packs : you just need to know that ….

When installing language pack there is thing you need to know. And that is the order in which to install.

Seems that microsoft is not using the same update functionality as in other updates.
meaning: with most updates it’s sufficient to update only the last service pack, which usually includes all updates.
For example: when installing a new Sharepoint server, and you need to install SP2, you don’t have to install SP1 first.

So what’s the catch with language packs.

Simple: you always install the base installation before installing a service pack.
Say , i would like to install the dutch language pack on my newly installed Sharepoint server (SP2).

  1.  
    1. Install the wss language pack
    2. Install the wss laguange pack SP2
    3. Install the Moss language pack
    4. Install the Moss language pack SP2

If you know the routine it’s simple, but it is sometimes nice to know the routine. :-D

One thing i haven’t checked out.
Do i need to run the Configuration manager after every update, or only ones at the end of all 4 updates?
If someone knows, please let me know

Eric

Alternate Access Mapping (AAM) on Windows 2008R2

Ever since i started installing SharePoint 2007 (over 2 years ago), i have been configuring Alternate Access Mappings.
This was never a problem. Up until yesterday.

Yesterday i configured SharePoint AAM for an installation i had done earlier.
For the record: Sharepoint 2006 x64 on a Windows 2008R2 x64. I must say: it was my first experience with 2008R2
Set al the settings that needed to be set.
Computername : Sharepoint1
New “Nice” name: Intranet

I created the AAM entries, and since i was configuring the machine (contained 1 empty site collection) i also started search.
I stopped the search after 38 minutes, because that was impossibly long

I then tried to reach the sharepoint site and i the only thing a got was a blank page where access denied should have been visible.
So besides not able to login, i also was not presented the right page.

This made me start my quest for information on the internet.
I assumed it was IIS7 related. 2008R2 has some new features and installation points. example : ASP.net 3.5.1 is automatically installed.

I took me a whole lot of time and testing to find out that the problem was eventually solved using the disableloopback registry setting.
Simply settings this registry setting, then rebooting  and everything works as intended.

So for every out there that has problems with AAM and Windows2008 (not sure if it’s R2 only or not)
Try the registry setting first. Here you can find more information about it
It’s a simple setting, doesn’t cost a lot of time, and can be easily removed.

Regards,

Eric

Importing profiles , but not all …..

So you are importing user profiles.

But then there comes the moment when you find out, you don’t want everything imported.
Just a subset, or maybe even just 2 out of 3 containers.

I have been there. A customer of mine had his Active Directory in very disordened way. But… a lot of software was configured to use this structure.
So rearanging was not an option.
But i had the idea, that the import was a LDAP-query, so any LDAP query should work. And i started out building LDAP queries that would give me the set of information needed. But i was unpleasantly surprised to see that none of them seem to work.

The only two attribtes i got the work where :

  • Disabled accounts
    LDAP option: (!userAccountControl:1.2.840.113556.1.4.803:=2)
  • Account with non-expiring passwords
    LDAP option:(!userAccountControl=65536)

Adding these would at least generate a more decent result.

Example: (&(objectCategory=Person)(objectClass=User)(!userAccountControl:1.2.840.113556.1.4.803:=2))

But i will continue my search for more options.

Eric

New memory leak in Sharepoint

As every developer should know m the SPSite and SPWeb objects have problem resulting in memory leaks. On the background they call “unmanaged code”. so when using SPSite objects or SPWeb objects in your code, always use ways to dispose these object (think of try-catch and using).

there is even a tool to check if you really dispose all the necessary object (link)

But today i saw an article that told me there is another memory leak problem.

Look at this article of Todd Carter to see more of it, he call’s it : SharePoint’s Sasquatch Memory Leak

BDC picker empty…. why ?

Last week i had to do some maintenance for a customer.
During this maintenance we had serious trouble with the bdc-definition.

We started out because the customer had serious performance issues. We decide to change 2 things, just for the test.
One of them was > recreate the Shared Service Provider

During installation someone installed the SSP on the default webapplication (port 80).
So now the SSP is part of the portal.

We decided this was not a good situation and started planning for a migration.
First, gather all current information about the SSP and check what will be lost and what not.

One big thing at this customers place is that we use a BDC that is vital for the working of the portal.

So we tested in a "test environment" and if we export the application definition file and import it into the new SSP , everything should continue to work. (we had some custom pages that rely on this bdc-file)

First issue : When ssp is configured to use with the default webapplication, the only way to add the default webapplication to the new SSP is to remove the original SSP. Hmm, i didn’t like that, because we might need some information afterwards. But we decided to continue and deleted the SSP (remember : removing the ssp from the default webapplication will NOT remove the webapplication, retaining the default portal)

As it seems everything was working, ……. until we checked the BDC .

After re-importing AND resetting the security> the application was not working !
Checking every website in the google universe , we never found a solution.

The bdc-file was imported correctly, we could set permission on it AND we could see all settings.

But when using the BDC-picker tool, our application was not visible.  :-(
At this moment we were getting desperate, until we found somewhere a note of someone (i really don’t know where) that it could be search related.

And one thing we hadn’t done yet was: Start up search. Because of the impact we decided earlier that day to wait until the weekend. We decided to start the search and wait until the weekend passed.

AND GUESS WHAT : the bdc was working as intended.

what is the bottomline of this story : somehow BDC is relying on a working search environment. Some make sure you run a full crawl to the end, before starting to troubleshoot BDC-related problems.

In our situation: the search had never run before. (Search is part of the ssp)

Hope this will help others,

Kind regards,

Eric

programming against Userprofileproperty Choicelist

Ok, so i was aked to program against the userprofileproperty choicelist.

The choicelist is the property of a userprofileproperty, when the userprofileproperty is a choicelist (sounds logic, not ?)

First i created a user profile property of the type choicelist.
I created a piece of code to connect to the userprofiles and retrieve the specific property. After retrieving the property, i retrieved the values of the choicelist.

Unfortunately, these values are “simple” strings without any form of ID. At least, not through the api.

I had the property object, next thing > add the value(s) AND don’t forget : programmed the commit.

I ran the code, and no errors, however, also no added values.

After some debugging and digging, i found out that adding value to the choicelist is not considered a change for profileproperties.

Funny ? NOT!

Then let’s create a workaround. Before committing , i programmed some code that forces the state of the property to : changed.
That way the values where added together with the change that in fact, wasn’t a real change.
Please notice the portion regarding the description :-)

                ServerContext sc = ServerContext.GetContext(curSite);
                UserProfileManager upm = new UserProfileManager(sc);

                Property p = upm.Properties.GetPropertyByName(Propertyname);
                p.ChoiceList.Add(Value);
                string descript = p.Description;
                p.Description = "";
                p.Description = descript;
                p.Commit()

after using this addition, the values where added succesfully to the property.

Hope this might help others.

Eric

SharePoint 2010 Public Beta is now available for download

Yes !

it’s finally there.

SharePoint Public Beta Resources

Where can I download SharePoint 2010 public beta?
You can download SharePoint and Office 2010 public beta from http://www.microsoft.com/2010

Is the SharePoint public beta supported?
The SharePoint public beta is not supported. However, we recommend looking at our resources listed above and asking questions in the SharePoint 2010 forums.

When is the final release of SharePoint and Office 2010?
We are planning to release SharePoint and Office 2010 in the first half of calendar year 2010.

Will there be a migration path from SharePoint public beta to final release?
We do not plan to support a SharePoint 2010 public beta to release bits migration path. The SharePoint 2010 public beta should be used for evaluation and feedback purposes only.

If I’m on SharePoint 2007, how do I get ready for SharePoint 2010?
Take a look here for getting ready guidance.

Is there a downloadable SharePoint 2010 VHD?
We plan to make a VHD available for download sometime in the future. We will announce its availability on our team blog.

How do I get trained on SharePoint 2010?
Please review the Getting Started page, the  IT Professional learning guide , the Developer learning guide , and the End User resources to ramp up on SharePoint 2010.

Sharepoint 2010 learning snack now available

Microsoft  has some nice snacks:  Microsoft Learning Snacks

the come in several flavours, but one of them is : Microsoft SharePoint Server 2010

there are 3 Sharepoint 2010 snacks

  1. Developing Solutions with Microsoft SharePoint Server 2010 (20 minutes)
    Microsoft SharePoint Server 2010 enables developers to build rich solutions easily, rapidly, and efficiently. This Learning Snack demonstrates how you can use Microsoft Visual Studio 2010 to create and deploy your solutions. It also demonstrates how you can build Microsoft Silverlight applications by using the SharePoint 2010 client object model, and how you can use LINQ to SharePoint to create SharePoint entities.
  2. Experiencing the Microsoft SharePoint Server 2010 User Interface (20 minutes)
    Microsoft SharePoint Server 2010 includes an enhanced user interface that provides IT professionals with a streamlined administration experience. This Learning Snack describes the features of the SharePoint Server 2010 user interface. It demonstrates how the new Central Administration console enables you to perform several administrative tasks from one central location. The Learning Snack also describes how shared application architecture can be used for flexible deployments in SharePoint Server 2010.
  3. Managing and Troubleshooting with Microsoft SharePoint Server 2010 (17 minutes)
    Microsoft SharePoint Server 2010 facilitates administration by providing several tools that help IT professionals efficiently manage data and troubleshoot any issues. This Learning Snack describes the Large List Resource Throttling feature, which helps you manage large lists. It demonstrates how a Microsoft SQL Server logging database can be used to log SharePoint events. The Learning Snack also demonstrates how the SharePoint Best Practices Analyzer can be used to detect and automatically fix common issues.

other snack-tastes are :

    bon appetit.

    Eric

    New Sharepoint 2010 Certification

    SharePoint 2010 Role-Based Learning Resources and Future Certifications (source Microsoft Partner site)
     
    Future SharePoint 2010 Certification Opportunities for IT Professionals: Coming in June 2010
    Certification Path for IT professionals
    • 70-667 TS: Microsoft SharePoint 2010, Configuring
      Microsoft Official Curriculum: Will cover configuration of SharePoint 2010 including deployment, upgrade, management, and operation on a server farm.
    • 70-668 PRO: SharePoint 2010, Administrator
      Microsoft Official Curriculum: Will cover advanced SharePoint 2010 topics including capacity planning, topology designing, and performance tuning.
     
    Certification Path for Developers
    • 70-573 TS: Microsoft SharePoint 2010, Application Development
      Microsoft Official Curriculum: Five-day instructor-led course designed for developers with six months or more of .NET development experience. Course covers what you need to know to be an effective member of a SharePoint development team using Visual Studio 2010.
    • 70-576 PRO: Designing and Developing Microsoft SharePoint 2010 Applications
      Microsoft Official Curriculum: Five-day instructor-led training course designed for development team leads who have already passed the Developing on SharePoint 2010 technical specialist exam. The course covers choosing technologies for and scoping a SharePoint project, best practices for SharePoint development, configuring a SharePoint development environment, advanced use of SharePoint developer features, and debugging of code in a SharePoint project.

    Eric