EV OWA Extension Failed to get hidden settings: System.NullReferenceException: Object reference not set to an instance of an object.
EV v10 OWA Extension is installed on two Exchange 2007 sp3 servers with both mailbox and CAS role in a resource forest. However, when we try to login to the OWA on a server (OWAExchange) to access the mailbox (mailbox@smtp.company.com) on the other server (MbxExchange), no EV buttons and toolbar is shown.
Turned on the OWA extension debug log shows that it could impersonate using the EV service account to load hidden settings of the mailbox. However, it failed to load the hidden settings with the error message:
Failed to get hidden settings: System.NullReferenceException: Object reference not set to an instance of an object.
Any hints on what this error is about?
Related web.config appSettings:
<add key="EnterpriseVault_ResourceVersion" value="v10.0.4.1189"/> <add key="EnterpriseVault_VaultServiceAccountUPN" value="EVServiceAccount@upn.company.com"/> <add key="EnterpriseVault_ExchangeWebServicesUrl" value="http://localhost/ews/exchange.asmx"/> <add key="EnterpriseVault_LogEnabled" value="true"/>
The complete log is included below:
12/5/2013 9:18:03 AM [2888,6] ############################################################# 12/5/2013 9:18:03 AM [2888,6] Request processing started 12/5/2013 9:18:03 AM [2888,6] Url: https://MbxExchangeFQDN/owa/forms/premium/StartPage.aspx 12/5/2013 9:18:03 AM [2888,6] RawUrl: /owa/default.aspx 12/5/2013 9:18:03 AM [2888,6] Query String parameters: 12/5/2013 9:18:03 AM [2888,6] Cookies 12/5/2013 9:18:03 AM [2888,6] UserContext: _j4u6CjbDEOOAcZehzY0cap1sc8pxdBI5P2vwnn8lIh2Q8FQ_4QUN6BPRXBKgnnwup5iulOkAAg. 12/5/2013 9:18:03 AM [2888,6] Form: 12/5/2013 9:18:03 AM [2888,6] OWA Session details 12/5/2013 9:18:03 AM [2888,6] User agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; Media Center PC 6.0; .NET4.0C; .NET4.0E; .NET CLR 3.5.30729; .NET CLR 3.0.30729; MS-RTC LM 8) 12/5/2013 9:18:03 AM [2888,6] Authentication type: Negotiate 12/5/2013 9:18:03 AM [2888,6] Authenticated user: DOMAIN\OWAExchange$ 12/5/2013 9:18:03 AM [2888,6] Client IP Address: OWAExchangeIP 12/5/2013 9:18:03 AM [2888,6] Server IP Address: MbxExchangeIP 12/5/2013 9:18:03 AM [2888,6] Host: MbxExchangeFQDN 12/5/2013 9:18:03 AM [2888,6] Primary SMTP Address: mailbox@smtp.company.com 12/5/2013 9:18:03 AM [2888,6] Explicit Logon: False 12/5/2013 9:18:03 AM [2888,6] Explicit Logon Address: owa 12/5/2013 9:18:03 AM [2888,6] EV Extensions DLL version: 10.0.4.0 12/5/2013 9:18:03 AM [2888,6] [RequestProcessor::StartImpersonation] Getting proxied user UPN from AD 12/5/2013 9:18:03 AM [2888,6] [RequestProcessor::StartImpersonation] SecurityException trying to impersonate user: mailbox@upn.company.com 12/5/2013 9:18:03 AM [2888,6] [RequestProcessor::StartImpersonation] Exception: Logon failure: account currently disabled. 12/5/2013 9:18:03 AM [2888,6] [RequestProcessor::StartImpersonation] Impersonating VSA: EVServiceAccount@upn.company.com 12/5/2013 9:18:03 AM [2888,6] [EVContext::Initialise] Loading EVContext 12/5/2013 9:18:03 AM [2888,6] [Resources::LoadLanguageFile] Trying to opening language file: C:\Program Files\Microsoft\Exchange Server\ClientAccess\owa\EnterpriseVault\v10.0.4.1189\Languages\en-us.lan 12/5/2013 9:18:03 AM [2888,6] [Resources::LoadLanguageFile] Language file not found 12/5/2013 9:18:03 AM [2888,6] [Resources::LoadLanguageFile] Trying to opening language file: C:\Program Files\Microsoft\Exchange Server\ClientAccess\owa\EnterpriseVault\v10.0.4.1189\Languages\en.lan 12/5/2013 9:18:03 AM [2888,6] [Resources::LoadLanguageFile] Loaded language: en 12/5/2013 9:18:03 AM [2888,6] [EVContext::ResetHiddenSettings] Resetting hidden settings to defaults 12/5/2013 9:18:03 AM [2888,6] [EVContext::LoadHiddenSettings] Loading hidden settings 12/5/2013 9:18:03 AM [2888,6] [EVContext::LoadHiddenSettings] Getting hidden message entry id using SMTP address: mailbox@smtp.company.com 12/5/2013 9:18:03 AM [2888,6] [WebDAVHelpers::GetEVHiddenMessageId] Mailbox Url: https://MbxExchange/exchange/mailbox@smtp.company.com 12/5/2013 9:18:03 AM [2888,6] [WebDAVRequest::Send] Request url: https://MbxExchange/exchange/mailbox@smtp.company.com 12/5/2013 9:18:03 AM [2888,6] [WebDAVRequest::Send] Request method: PROPFIND 12/5/2013 9:18:03 AM [2888,6] [WebDAVRequest::Send] Request timeout (milliseconds): 300000 12/5/2013 9:18:03 AM [2888,6] [WebDAVRequest::Send] Adding Depth header: 0 12/5/2013 9:18:03 AM [2888,6] [WebDAVRequest::Send] Request body: <?xml version="1.0"?><d:propfind xmlns:d="DAV:" ><d:prop><u:inbox xmlns:u="urn:schemas:httpmail:" /></d:prop></d:propfind> 12/5/2013 9:18:03 AM [2888,6] [WebDAVRequest::Send] Creating XmlDocument 12/5/2013 9:18:03 AM [2888,6] [WebDAVRequest::Send] Loading XmlDocument 12/5/2013 9:18:03 AM [2888,6] [WebDAVRequest::Send] Loaded XmlDocument: <?xml version="1.0"?><a:multistatus xmlns:b="urn:uuid:c2f41010-65b3-11d1-a29f-00aa00c14882/" xmlns:d="urn:schemas:httpmail:" xmlns:c="xml:" xmlns:a="DAV:"><a:response><a:href>https://MbxExchange/exchange/mailbox@smtp.company.com/</a:href><a:propstat><a:status>HTTP/1.1 200 OK</a:status><a:prop><d:inbox>https://MbxExchange/exchange/mailbox@smtp.company.com/Inbox</d:inbox></a:prop></a:propstat></a:response></a:multistatus> 12/5/2013 9:18:03 AM [2888,6] [WebDAVHelpers::GetEVHiddenMessageId] Inbox Url: https://MbxExchange/exchange/mailbox@smtp.company.com/Inbox 12/5/2013 9:18:03 AM [2888,6] [WebDAVRequest::Send] Request url: https://MbxExchange/exchange/mailbox@smtp.company.com/Inbox 12/5/2013 9:18:03 AM [2888,6] [WebDAVRequest::Send] Request method: SEARCH 12/5/2013 9:18:03 AM [2888,6] [WebDAVRequest::Send] Request timeout (milliseconds): 300000 12/5/2013 9:18:03 AM [2888,6] [WebDAVRequest::Send] Request body: <?xml version="1.0"?><d:searchrequest xmlns:d="DAV:" ><d:sql>SELECT "http://schemas.microsoft.com/mapi/proptag/x0FFF0102" FROM SCOPE('shallow traversal of "https://MbxExchange/exchange/mailbox@smtp.company.com/Inbox"') WHERE "DAV:ishidden" = true AND "http://schemas.microsoft.com/exchange/outlookmessageclass" = 'IPM.Note.EnterpriseVault.Settings'</d:sql></d:searchrequest> 12/5/2013 9:18:03 AM [2888,6] [WebDAVRequest::Send] Creating XmlDocument 12/5/2013 9:18:03 AM [2888,6] [WebDAVRequest::Send] Loading XmlDocument 12/5/2013 9:18:03 AM [2888,6] [WebDAVRequest::Send] Loaded XmlDocument: <?xml version="1.0"?><a:multistatus xmlns:b="urn:uuid:c2f41010-65b3-11d1-a29f-00aa00c14882/" xmlns:c="xml:" xmlns:d="http://schemas.microsoft.com/mapi/proptag/" xmlns:a="DAV:"><a:response><a:href>https://MbxExchange/exchange/mailbox@smtp.company.com/Inbox/No%20Subject-42.EML</a:href><a:propstat><a:status>HTTP/1.1 200 OK</a:status><a:prop><d:x0FFF0102 b:dt="bin.base64">AAAAAGjucy7vsVBLm3lzngjCHNQHAG7yOgOtVGVKrmG9Vw24A7oA888YuAAAAG7yOgOtVGVKrmG9Vw24A7oA89ATBLQAAA==</d:x0FFF0102></a:prop></a:propstat></a:response></a:multistatus> 12/5/2013 9:18:03 AM [2888,6] [WebDAVHelpers::GetEVHiddenMessageId] ID: AAAAAGjucy7vsVBLm3lzngjCHNQHAG7yOgOtVGVKrmG9Vw24A7oA888YuAAAAG7yOgOtVGVKrmG9Vw24A7oA89ATBLQAAA== 12/5/2013 9:18:03 AM [2888,6] [EVContext::LoadHiddenSettings] Retrieved hidden message entry id 12/5/2013 9:18:03 AM [2888,6] [Id::EwsId] Converting EntryId to EwsId 12/5/2013 9:18:03 AM [2888,6] [MailboxBase::MailboxBase] Connecting to Exchange Web Services using: http://localhost/ews/exchange.asmx 12/5/2013 9:18:03 AM [2888,6] [ConvertId::DoConvertId] Converting ID using web services 12/5/2013 9:18:03 AM [2888,6] [Id::EwsId] Converted EntryId to Mailbox EwsId: AAMkADQ0MTNmMDEyLTliZmYtNGNkMy05ZGNiLTM1MTRlZGUzMWJiMQBGAAAAAABo7nMu77FQS5t5c54IwhzUBwBu8joDrVRlSq5hvVcNuAO6APPPGLgAAABu8joDrVRlSq5hvVcNuAO6APPQEwS0AAA= 12/5/2013 9:18:03 AM [2888,6] [MailboxBase::MailboxBase] Connecting to Exchange Web Services using: http://localhost/ews/exchange.asmx 12/5/2013 9:18:03 AM [2888,6] [EVContext::LoadHiddenSettings] Retrieved hidden message from web services 12/5/2013 9:18:03 AM [2888,6] [HiddenMessage::LoadHiddenMessage] Failed to get hidden settings: System.NullReferenceException: Object reference not set to an instance of an object. at Symantec.EnterpriseVault.Owa.ExchangeStoreAccess.HiddenMessage.LoadHiddenMessage() 12/5/2013 9:18:03 AM [2888,6] [EVContext::LoadHiddenSettings] Settings from hidden message: 12/5/2013 9:18:03 AM [2888,6] [EVContext::LoadHiddenSettings] Exception loading hidden settings: 12/5/2013 9:18:03 AM [2888,6] [EVContext::LoadHiddenSettings] System.NullReferenceException: Object reference not set to an instance of an object. at Symantec.EnterpriseVault.Owa.Core.EVContext.LoadHiddenSettings(Log oLog, Boolean brefresh) 12/5/2013 9:18:03 AM [2888,6] [EVContext::LoadHiddenSettings] Using default settings 12/5/2013 9:18:03 AM [2888,6] [EVContext::ResetHiddenSettings] Resetting hidden settings to defaults 12/5/2013 9:18:03 AM [2888,6] [EVContext::LogHiddenSettings] Mailbox Settings loaded at: Monday, January 01, 0001, 12:00:00 AM 12/5/2013 9:18:03 AM [2888,6] [EVContext::LogHiddenSettings] Enabled for archiving: Never Enabled 12/5/2013 9:18:03 AM [2888,6] [EVContext::Initialise] EVContext intialised at 12/5/2013 9:18:03 AM 12/5/2013 9:18:03 AM [2888,6] [EVContext::Initialise] Hidden settings loaded at 1/1/0001 12:00:00 AM 12/5/2013 9:18:03 AM [2888,6] [EVContext::IsValidBrowser] Checking browser... 12/5/2013 9:18:03 AM [2888,6] [EVContext::IsValidBrowser] User agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; Media Center PC 6.0; .NET4.0C; .NET4.0E; .NET CLR 3.5.30729; .NET CLR 3.0.30729; MS-RTC LM 8) 12/5/2013 9:18:03 AM [2888,6] [EVContext::IsValidBrowser] Using premium client - browser valid 12/5/2013 9:18:03 AM [2888,6] [EVContext::IsValidBrowser] Returning: True 12/5/2013 9:18:03 AM [2888,6] [RequestProcessor::ProcessRequest] Setting response filter: Premium.WunderBar 12/5/2013 9:18:03 AM [2888,6] [RequestProcessor:StopImpersonation] Stopped impersonation 12/5/2013 9:18:03 AM [2888,6] Request processing finished 12/5/2013 9:18:03 AM [2888,6] #############################################################
On the CAS server you're running OWA on, can you log on and go to this address?
http://localhost/ews/exchange.asmxBased on it contacting this URL:
https://MbxExchange/exchange/mailbox@smtp.company.comMy best guess is that you only have https enabled on the server, and in the background you're getting an error saying that you should use SSL instead
you could try changing this in your web.config, the same place where you enabled the logging
<add key="EnterpriseVault_ExchangeWebServicesUrl" value="https://localhost/ews/exchange.asmx"/>