MSExchangeGuru.com

Learn Exchange the Guru way !!!

 

Exchange 2013 OAB troubleshooting: Task reported error (0x8004010F): ‘The operation failed. An object cannot be found.’

In my experience, I’ve never had to face an OAB download issue with exchange 2013. This was the first ever.

Exchange team did an excellent job with OAB in Exchange 2013 and made troubleshooting process very seamless.

OAB download wasn’t working on a domain joined and non-domain joined machine.

Error: Task reported error (0x8004010F): ‘The operation failed. An object cannot be found.’


Questions:

Happening for one user or all users?

Happening on one Outlook client or all outlook clients?

Is Outlook updated to the latest version and service pack?

OAB broke internally/externally/both?

When you have an issue with OAB, first thing to check is whether you can see the address list you’re trying to download in Outlook. If it’s missing, outlook just can’t locate the OAB to download.

 


Data collection:

Let’s collect some data and ensure all settings are configured the way it is supposed to be

1. Make sure authentication settings and URL’s are setup properly:

Get-OabVirtualDirectory -ADPropertiesOnly | ft Identity, *Auth* -AutoSize


2. Make sure URL’s are configured properly

Get-OabVirtualDirectory -ADPropertiesOnly | ft Identity, *url* -AutoSize


3. In Exchange 2013, OAB is processed by mailbox server role which owns the copy of the database of the Arbitration system mailbox with OAB PersistedCapabilities. OAB resides on the mailbox server in the folder “C:\Program Files\Microsoft\Exchange Server\V15\ClientAccess\OAB”. The database homing the System mailbox should be active and mounted. Clients will contact the mailbox server on which the OAB files are and downloads directly using AutoDiscover. The database can freely move to other mailbox servers if part of a DAG and the OAB files will be generated immediately for clients to download. In essence, this mailbox server becomes the OAB Generation server in Exchange 2013.

4.  Let’s now find out the state of the database on which the Arbitration mailbox resides:

Get-Mailbox -Arbitration | where {$_.PersistedCapabilities -like “*OAB*”} | ft Name, Servername, Database

Get-MailboxDatabaseCopyStatus MGUxxx

As shown in the screenshot Servername is MBX2 but the database is mounted on MBX1 which means clients will be contacting that server to download OAB.


5. It is also important to ensure all database have the OAB setup properly.

Use the CMDLET:

    Get-MailboxDatabase | Ft Name, *book*

If one or more databases do not have OAB setup, use the CMDLET to set OAB for it

Get-Mailboxdatabase | Set-MailboxDatabase -OfflineAddressBook “Default Offline Address Book”

6. If the issue is only affecting one or specific set of users, check and see if they have an OAB specified on their account:

Get-Mailbox ratish.nair | fl Name, OfflineAddressBook,Database

**This field is blank by default

Troubleshooting:

  1. Test-ServiceHealth and ensure all required Exchange services are started
  2. Microsoft Exchange Mailbox Assistant service generates OAB on the server. Try restarting this service on the mailbox server homing the database copy of the Arbitration mailbox
  3. Try Updating OAB using the cmdlet: Update-OfflineAddressBook “Default Offline Address Book”
  4. You can create a new Offline address book and assign it to all the databases:

New-OfflineAddressBook -Name “EXCHANGE 2013 OAB” -AddressLists “\Default Global Address List” -VirtualDirectories “MBX3\OAB (Default Web Site)”

Get-Mailboxdatabase | Set-MailboxDatabase -OfflineAddressBook “EXCHANGE 2013 OAB”

5. Try to move the Arbitration mailbox Database to a different server using the cmdlet:

Move-ActiveMailboxDatabase MGU -ActivateOnServer MBX3

Now navigate to the location of OAB and ensure the folder is there.

CAS role accepts the OAB download request from clients and proxies to a Mailbox role server. CAS maintains a log of each request it handles in the log files, present in %ExchangeInstallPath%\Logging\HttpProxy\OAB\. You can open this log in excel and review results.

6. Move the Arbitration mailbox to a new mailbox database

Get-Mailbox -Arbitration -Database DB10 | where {$_.PersistedCapabilities –like “*OAB*”} | New-MoveRequest -TargetDatabase DB12

7. Create a new OAB Gen Arbitration mailbox

New-Mailbox -Arbitration -Name “OABGen” -UserPrincipalName OABGen@exchguru.local –DisplayName “OAB Generation Mailbox” -Database DB30

Set-Mailbox -Arbitration OABGen@exchguru.local -OABGen $true

8. As always, your best friend in troubleshooting is none other as “TestEmailAutoConfiguration” tool in Outlook.

Take a look at the video @ 31.31 minute and understand the Outlook connection process and then jump to using Test email auto configuration with Outlook.

Outlook connection process: http://www.youtube.com/watch?v=AvywR9CWYHs#t=1886

TestEmailAutoConfiguration tool: http://www.youtube.com/watch?v=AvywR9CWYHs#t=2246

If AutoDiscover is not able to retrieve the AutoDiscover.XML file with all URL’s to Outlook, then the client will have trouble – not just with OAB but with EWS and other features.

Review the Authentication settings on both Default website and Exchange backend in IIS

Exchange 2013: HTTP redirection issues with ECP virtual directory – /owa/ecp: http://msexchangeguru.com/2013/10/30/http-redirect-owa-ecp/


Authentication on Default Website and Exchange backend should be Windows Authentication


HTTP Redirect should be disabled:


SSL should be enabled:


Ratish Nair

Microsoft MVP | Exchange Server

Team @MSExchangeGuru.com

Keywords: Exchange 2013 OAB, How to troubleshoot Exchange 2013 OAB, Exchange 2013 Offline address book, Offline address book issues with Exchange 2013


4 Responses to “Exchange 2013 OAB troubleshooting: Task reported error (0x8004010F): ‘The operation failed. An object cannot be found.’”

  1. NeWay Technologies – Weekly Newsletter #72 – December 5, 2013 | NeWay Says:

    […] Exchange 2013 OAB troubleshooting: Task reported error (0x8004010F): ‘The operation failed. An obj… – […]

  2. NeWay Technologies – Weekly Newsletter #72 – December 6, 2013 | NeWay Says:

    […] Exchange 2013 OAB troubleshooting: Task reported error (0x8004010F): ‘The operation failed. An obj… – […]

  3. TechNet Blogs Says:

    […] Exchange 2013 OAB troubleshooting: Task reported error (0x8004010F): ‘The operation failed. An… […]

  4. Steve T Says:

    Great article Ratish. I followed all the steps and created a new arbitration mailbox and a new OAB and assigned the new OAB to the mailboxes, but I’m still getting the 0x8004010F error. I’ve also ensured all of the permissions were correct. The only thing that didn’t match up was the Exchange Backend Virtual directories. I only have the PowerShell virtual directory. I’m assuming this is my issue. Is there a way I can rebuilt the virtual directories?

Leave a Reply

Notify me of followup comments via e-mail. You can also subscribe without commenting.

Categories

Archives