After a recent, but rare, reboot of my MacBook Pro caused by the OS update v10.10.1 being applied, I started having this very annoying issue. I got it resolved and since I could find no other post that mentioned the fix, here's me playing the "here's my fix" role for others.
On OSX we have this slick app Messages that lets you do SMS messaging to other people on iMessage (ie: others on iOS & iPhones), text to non-iOS folks and even chat through Google Talk or Facebook's Messages. But all the sudden none of the names were resolving in Message... only phone numbers. So my normal view that should look like this:
Wasn't... where the names show (#1 & #2 in the screenshot above), there would be a red number. That sucks because like most, I don't know cell numbers. It was frustrating as it worked on my iPhone so I had to pick up my phone to see who was I was talking to.
Upon further inspection, I realized that all the sudden my Contacts were no longer syncing correctly. My mailbox (email, calendar, contacts, etc) is in Office 365, specifically Exchange Online. I noticed that my contacts were empty for my Exchange account when I looked in the Contacts app. Even more so I noticed the sync icon (#2 below) was either always spinning or had a error next to it. The error was The operation couldn’t be completed. (SOAPWebServicesErrorDomain error -997.)
A friend, Ben Stegink, mentioned how his phone was setup. On iOS there's an app called OWA. Within the app there's a setting within the People section for sync'ing your contacts. Basically it creates a new group in your iCloud called OWA that is a carbon copy of your contacts.
Once I turned this on and saw it sync with my laptop, (as you can see from #1 in the 2nd screenshow above), I got my names resolved and showing in iMessage again!
Apparently this is a long-time bug / issue between OS X & Exchange... too bad Apple can't get this one figured out.