I'm having issues regarding My Settings page in Epi. This page seems to be working normally but after some time it starts throwing exceptions (500). After restarting application pool in IIS it again works correctly but after some time it crashes again.
Below is exception:
{"_index": "log-webapps-external-2022.10","_type": "logevent","_id": "u-5rFIQBXrtNk3Bd48Oo","_version": 1,"_score": null,"_source": {"@timestamp": "2022-10-26T15:12:05.1507940+02:00","level": "Error","messageTemplate": "Unhandled exception in ASP.NET\r\nSystem.Web.HttpUnhandledException (0x80004005): Exception of type 'System.Web.HttpUnhandledException' was thrown. ---> System.ArgumentNullException: Value cannot be null.\r\nParameter name: resourceKey\r\n at EPiServer.Framework.Validator.ThrowIfNullOrEmpty(String name, String value)\r\n at EPiServer.Framework.Localization.LocalizationService.GetStringByCulture(String resourceKey, FallbackBehaviors fallbackBehavior, String fallback, CultureInfo culture)\r\n at EPiServer.Framework.Localization.LocalizationService.GetStringByCulture(String resourceKey, String fallback, CultureInfo culture)\r\n at EPiServer.UI.WebControls.TabStrip.LoadPlugIns()\r\n at EPiServer.UI.WebControls.TabStrip.OnInit(EventArgs e)\r\n at System.Web.UI.Control.InitRecursive(Control namingContainer)\r\n at System.Web.UI.Control.InitRecursive(Control namingContainer)\r\n at System.Web.UI.Control.AddedControl(Control control, Int32 index)\r\n at System.Web.UI.Control.EnsureChildControls()\r\n at System.Web.UI.Control.PreRenderRecursiveInternal()\r\n at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)\r\n at System.Web.UI.Page.HandleError(Exception e)\r\n at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)\r\n at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)\r\n at System.Web.UI.Page.ProcessRequest()\r\n at System.Web.UI.Page.ProcessRequest(HttpContext context)\r\n at ASP.episerver_cms_edit_mysettings_aspx.ProcessRequest(HttpContext context)\r\n at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()\r\n at System.Web.HttpApplication.<>c__DisplayClass285_0.<ExecuteStepImpl>b__0()\r\n at System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step)\r\n at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)","message": "Unhandled exception in ASP.NET\r\nSystem.Web.HttpUnhandledException (0x80004005): Exception of type 'System.Web.HttpUnhandledException' was thrown. ---> System.ArgumentNullException: Value cannot be null.\r\nParameter name: resourceKey\r\n at EPiServer.Framework.Validator.ThrowIfNullOrEmpty(String name, String value)\r\n at EPiServer.Framework.Localization.LocalizationService.GetStringByCulture(String resourceKey, FallbackBehaviors fallbackBehavior, String fallback, CultureInfo culture)\r\n at EPiServer.Framework.Localization.LocalizationService.GetStringByCulture(String resourceKey, String fallback, CultureInfo culture)\r\n at EPiServer.UI.WebControls.TabStrip.LoadPlugIns()\r\n at EPiServer.UI.WebControls.TabStrip.OnInit(EventArgs e)\r\n at System.Web.UI.Control.InitRecursive(Control namingContainer)\r\n at System.Web.UI.Control.InitRecursive(Control namingContainer)\r\n at System.Web.UI.Control.AddedControl(Control control, Int32 index)\r\n at System.Web.UI.Control.EnsureChildControls()\r\n at System.Web.UI.Control.PreRenderRecursiveInternal()\r\n at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)\r\n at System.Web.UI.Page.HandleError(Exception e)\r\n at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)\r\n at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)\r\n at System.Web.UI.Page.ProcessRequest()\r\n at System.Web.UI.Page.ProcessRequest(HttpContext context)\r\n at ASP.episerver_cms_edit_mysettings_aspx.ProcessRequest(HttpContext context)\r\n at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()\r\n at System.Web.HttpApplication.<>c__DisplayClass285_0.<ExecuteStepImpl>b__0()\r\n at System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step)\r\n at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)","exceptions": [
{"Depth": 0,"ClassName": "System.Web.HttpUnhandledException","Message": "Exception of type 'System.Web.HttpUnhandledException' was thrown.","Source": "System.Web","StackTraceString": " at System.Web.UI.Page.HandleError(Exception e)\r\n at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)\r\n at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)\r\n at System.Web.UI.Page.ProcessRequest()\r\n at System.Web.UI.Page.ProcessRequest(HttpContext context)\r\n at ASP.episerver_cms_edit_mysettings_aspx.ProcessRequest(HttpContext context)\r\n at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()\r\n at System.Web.HttpApplication.<>c__DisplayClass285_0.<ExecuteStepImpl>b__0()\r\n at System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step)\r\n at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)","RemoteStackTraceString": null,"RemoteStackIndex": 0,"ExceptionMethod": {"Name": "HandleError","AssemblyName": "System.Web","AssemblyVersion": "4.0.0.0","AssemblyCulture": "","ClassName": "System.Web.UI.Page","Signature": "Boolean HandleError(System.Exception)","MemberType": 8
},"HResult": -2147467259,"HelpURL": null
},
{"Depth": 1,"ClassName": "System.ArgumentNullException","Message": "Value cannot be null.\r\nParameter name: resourceKey","Source": "EPiServer.Framework","StackTraceString": " at EPiServer.Framework.Validator.ThrowIfNullOrEmpty(String name, String value)\r\n at EPiServer.Framework.Localization.LocalizationService.GetStringByCulture(String resourceKey, FallbackBehaviors fallbackBehavior, String fallback, CultureInfo culture)\r\n at EPiServer.Framework.Localization.LocalizationService.GetStringByCulture(String resourceKey, String fallback, CultureInfo culture)\r\n at EPiServer.UI.WebControls.TabStrip.LoadPlugIns()\r\n at EPiServer.UI.WebControls.TabStrip.OnInit(EventArgs e)\r\n at System.Web.UI.Control.InitRecursive(Control namingContainer)\r\n at System.Web.UI.Control.InitRecursive(Control namingContainer)\r\n at System.Web.UI.Control.AddedControl(Control control, Int32 index)\r\n at System.Web.UI.Control.EnsureChildControls()\r\n at System.Web.UI.Control.PreRenderRecursiveInternal()\r\n at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)","RemoteStackTraceString": null,"RemoteStackIndex": 0,"ExceptionMethod": {"Name": "ThrowIfNullOrEmpty","AssemblyName": "EPiServer.Framework","AssemblyVersion": "11.20.8.0","AssemblyCulture": "","ClassName": "EPiServer.Framework.Validator","Signature": "Void ThrowIfNullOrEmpty(System.String, System.String)","MemberType": 8
},"HResult": -2147467261,"HelpURL": null
}
],"Logger": "EPiServer.Global","Application": "SCBSE.WebApps.External","MachineName": "SCB-PP-SEWIE01","RequestPath": "/EPiServer/CMS/edit/mysettings.aspx","RequestHttpMethod": "GET"
},"fields": {"@timestamp": ["2022-10-26T13:12:05.150Z"
]
},"sort": [
1666789925150
]
}Here is my web.config localization section:
<localization fallbackBehavior="Echo, MissingMessage, FallbackCulture" fallbackCulture="en"><providers><add virtualPath="~/LanguageFiles" name="languageFiles" type="EPiServer.Framework.Localization.XmlResources.FileXmlLocalizationProvider, EPiServer.Framework.AspNet" /></providers></localization>