in

Microsoft Experts

Memoirs of a goldfish

Cameron McFie

Smile! It is guaranteed to make your day come alive!

User cannot log into OWA 2007 Premium - The item that you attempted to access appears to be corrupted and cannot be accessed.

I came across the following problem today and thought I should share my fix.

When a user logged into OWA 2007 Premium they receive an error "The item that you attempted to access appears to be corrupted and cannot be accessed". The problem didn't occur in OWA Light. Full details of the error are below;

Request
Url: https://mail.mydomain.com:443/owa/forms/premium/StartPage.aspx
User host address: x.x.x.x
User: John Smith
EX Address: /o=HostedExchange/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=user.0001
SMTP Address: user@mycompany.com
OWA version: 8.1.340.0
Mailbox server: mailserver.mydomain.com

Exception
Exception type: Microsoft.Exchange.Data.Storage.CorruptDataException
Exception message: Corrupt restriction filter data.

Call stack
Microsoft.Exchange.Data.Storage.FilterRestrictionConverter.GetPropertyDefinition(MapiProp mapiProp, PropTag propTag) Microsoft.Exchange.Data.Storage.FilterRestrictionConverter.InternalCreateNativeFilter(ExchangeTimeZone timeZone, MapiProp mapiProp, Restriction restriction, Int32 depth)
Microsoft.Exchange.Data.Storage.FilterRestrictionConverter.InternalCreateFilters(ExchangeTimeZone timeZone, MapiProp mapiProp, Restriction[] restrictions, Int32 depth)
Microsoft.Exchange.Data.Storage.FilterRestrictionConverter.InternalCreateNativeFilter(ExchangeTimeZone timeZone, MapiProp mapiProp, Restriction restriction, Int32 depth)
Microsoft.Exchange.Data.Storage.FilterRestrictionConverter.InternalCreateFilters(ExchangeTimeZone timeZone, MapiProp mapiProp, Restriction[] restrictions, Int32 depth)
Microsoft.Exchange.Data.Storage.FilterRestrictionConverter.InternalCreateNativeFilter(ExchangeTimeZone timeZone, MapiProp mapiProp, Restriction restriction, Int32 depth)
Microsoft.Exchange.Data.Storage.FilterRestrictionConverter.InternalCreateFilters(ExchangeTimeZone timeZone, MapiProp mapiProp, Restriction[] restrictions, Int32 depth)
Microsoft.Exchange.Data.Storage.FilterRestrictionConverter.InternalCreateNativeFilter(ExchangeTimeZone timeZone, MapiProp mapiProp, Restriction restriction, Int32 depth)
Microsoft.Exchange.Data.Storage.FilterRestrictionConverter.InternalCreateFilters(ExchangeTimeZone timeZone, MapiProp mapiProp, Restriction[] restrictions, Int32 depth)
Microsoft.Exchange.Data.Storage.FilterRestrictionConverter.InternalCreateNativeFilter(ExchangeTimeZone timeZone, MapiProp mapiProp, Restriction restriction, Int32 depth)
Microsoft.Exchange.Data.Storage.FilterRestrictionConverter.InternalCreateFilter(ExchangeTimeZone timeZone, MapiProp mapiProp, Restriction restriction, Int32 depth)
Microsoft.Exchange.Data.Storage.SearchFolder.GetSearchCriteria()
Microsoft.Exchange.Data.Storage.DefaultFolderManager.GetRemindersSearchFolderState(SearchFolder reminders)
Microsoft.Exchange.Data.Storage.DefaultFolderManager.VerifyAndFixRemindersSearchFolder(StoreId reminderSearchFolderId)
Microsoft.Exchange.Data.Storage.DefaultFolderManager.GetDefaultFolderId(DefaultFolderType defaultFolderType)
Microsoft.Exchange.Clients.Owa.Core.UserContext.GetDefaultFolderId(DefaultFolderType defaultFolderType, String folderName)
Microsoft.Exchange.Clients.Owa.Core.UserContext.get_RemindersSearchFolderId()
Microsoft.Exchange.Clients.Owa.Premium.StartPage.OnInit(EventArgs e)
System.Web.UI.Control.InitRecursive(Control namingContainer)
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

Inner Exception
Exception type: Microsoft.Exchange.Data.Storage.InvalidPropertyTypeException
Exception message: Unable to create custom property with property key [{00062002-0000-0000-c000-000000000046}:0x8232] type [Boolean].

Call stack
Microsoft.Exchange.Data.Storage.NativeStorePropertyDefinition.TryFindEquivalentDefinition(Key key, Boolean isCustom, PropType type, TypeCheckingFlag typeCheckingFlag, Boolean& createNewDefinition)
Microsoft.Exchange.Data.Storage.GuidIdPropertyDefinition.InternalCreate(String displayName, Type propertyType, PropType mapiPropType, Guid propertyGuid, Int32 dispId, PropertyFlags flags, TypeCheckingFlag typeCheckingFlag, Boolean isCustom, PropertyDefinitionConstraint[] constraints)
Microsoft.Exchange.Data.Storage.InternalSchema.PropertyDefinitionsFromPropTags(TypeCheckingFlag propertyTypeCheckingFlag, MapiProp mapiProp, PropTag[] tags)
Microsoft.Exchange.Data.Storage.FilterRestrictionConverter.GetPropertyDefinition(MapiProp mapiProp, PropTag propTag)

The problem as you can see by the bit highlighted in red is that it is a problem with the reminders in the mailbox. You will probably find it is some corrupted calendar items that has corrupted the Reminders.

When I logged into the mailbox using Outlook I found two reminders in a popup window. When I tried to dismiss them I received an error "Cannot turn off the reminder. You may be reminded again."

To fix the problem I had to do the following;

  • Remove the corrupted calendar items in Outlook
  • Close Outlook
  • Download MFCMAPI (http://support.microsoft.com/?ID=291794)
  • Run MFCMAPI
  • Go to Session->Logon and Display Store Table
  • Select the users profile
  • Double click on "Mailbox – User"
  • Expand "Root Container"
  • Right Click "Reminders" folder
  • Select "Delete folder"
  • Close MFCMAPI
  • At a DOS prompt, change directory to where office is installed (in my case it is C:\Program Files\Microsoft Office\Office12)
  • Run "outlook.exe /resetfolders" and select the relevant outlook profile

 

I hope this helps you if you have the same problem.

Comments

No Comments

About Cam

Cameron is a highly experienced Microsoft specialist who has been working in IT for over 15 years. Currently he owns and operates a Hosting company named Emantra in Brisbane, Australia.

His expertise is particularly in Microsoft Exchange server and general hosting. He has been working with Exchange since version 4.0 and been in the hosting game since 2003. Microsoft Hosted Messaging and Collaboration platforms is another one of Cameron’s specialties. He has installed and maintained all versions from 3.5 upwards.

His loves are technology, beer and socialising with mates.