Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 3709
  • Last Modified:

Displayname property contains leading or trailing whitespace, which must be removed

I have users that I cant migate to E2k7 due to this error.
i am not a scripter, and have found at http://www.exchangeninjas.com/RecipientValidation  - the code to fix it:
Get-Mailbox | Foreach { Set-Mailbox -Identity $_.Id -DisplayName $_.DisplayName.Trim() }

however I dont know how to apply htis to an individial user eg. named testuser.
Can someone help me with the excact code htat i need to type into EMS to perform this function.
Thanks, P.
1 Solution
I recommend that you use Active Directory Users and Computers to make this change for a single user.

Navigate to the user in AD U&C and right click on the account.  Select rename.  Check the name is correct.  When you press Enter, you will be presented with a dialog box where you can make sure that all names have the correct format.
If you know the username but nothing else, you can search AD U&C for the user, using Windows 2003.  This feature wasn't in AD U&C in Windows 2000.
prospathoAuthor Commented:
Thaanks Steve, That was a much easier solution..
If anyone knows how to usev the script for future use id be grateful...
my concern is that is automatically sets off a batch process - or does it propmt for users?
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

The code offered is a PowerShell script.  You need to download and install it if you have an Exchange 2003 environment.  It is installed as part of Exchange 2007.

Basically, it works as follows:

1.  Retrieve the list of all mailboxes
2.  For each mailbox, do the following:
   a)  Set the display name property of the current object ($_) using the ID field to identify it ($_.Id)
   b)  To the value of the existing display name, after it has been trimmed ($_.DisplayName.Trim())

The Trim() function removes leading and trailing space from a string, so " Dave" becomes "Dave" and "Joey " becomes "Joey"

You can find loads of information on PowerShell at Microsoft TechNet (technet.microsoft.com).  It is a fairly new technology, and is designed to replace other scripting methods (for administration at least) in the future (such as scripting WMI, WSH, VBScript, batch files).
You are right, it does this for every mailbox in the Exchange organisation.  No prompts!
I am getting issue when i try to install exchange mangement console with sp1 CD on my windows 2008 server.
 I am getting below error. I want to clarify whether "get-mailbox" command will work in powershell
 only after installing exchange mangement console. I am getting error when trying to  install
exchange 2007 server , it says leading or trailing spaces are there in 2003 exchange server
presently running. My plan is to install exchange 2007 on a new server and move mailobxes and
 remove 2003 exchange. My question is - if "get-maibox" command is to find the mailboxes with
leading/trailing spaces in existing exchange and due to this exchange management console is
 not getting installed. I understand that "get-mailbox" command will work only after installing
exchange manegment console. Here i am totally confused. Now i cannot install exchange manegement
 console because of white spaces and to check whitespace issue i need "get-mailbox" command where
 exchange management console should be there . Please explain this logic.

Summary: 3 item(s). 0 succeeded, 1 failed.
Elapsed time: 00:00:08
Organization Preparation
The Name property contains leading or trailing whitespace, which must be removed.
The Name property contains leading or trailing whitespace, which must be removed.
Elapsed Time: 00:00:08

Copy Exchange Files

Management Tools

This worked for me - ran it on Exch2007
Errors were all with Exch2003 users with a space after displayname. Worked like a charm...thank goodness as the template used for years had 1500 problematic users.
All hail powershell!!!
Get-mailbox | foreach {set-mailbox $_.identity -display
name $_.DisplayName.Trim() }
in fact, use this for over 1000 mailboxes etc otherwise you'll have to suss out the syntax and run it again.....like me!!
Get-mailbox -resultsize unlimited | foreach {set-mailbox $_.identity -displayname $_.DisplayName.Trim() }

Featured Post

Has Powershell sent you back into the Stone Age?

If managing Active Directory using Windows Powershell® is making you feel like you stepped back in time, you are not alone.  For nearly 20 years, AD admins around the world have used one tool for day-to-day AD management: Hyena. Discover why.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now