Culture is not supported: da/ is an invalid culture identifier.

Member since: 2013

Hi

I'm upgrading a CMS site from version 7.1 to 7.5. When requesting a page, I get the following error.

As is shown, a slash is appended to the danish culture (da), which doesn't make sense to me.

By the way, the only enabled language is danish (da).

 

Culture is not supported.
Parameter name: name
da/ is an invalid culture identifier.

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 

Exception Details: System.Globalization.CultureNotFoundException: Culture is not supported.
Parameter name: name
da/ is an invalid culture identifier.

Source Error: 

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.


Stack Trace: 

[CultureNotFoundException: Culture is not supported.
Parameter name: name
da/ is an invalid culture identifier.]
   System.Globalization.CultureInfo.GetCultureInfo(String name) +10634514
   EPiServer.Core.LanguageSelectorContext.get_SelectedLanguageBranch() +32
   EPiServer.DefaultContentProvider.LoadContent(ContentReference contentLink, ILanguageSelector languageSelector) +223
   EPiServer.Core.<>c__DisplayClass1c.<LoadContentFromCacheOrRepository>b__1a() +73
   EPiServer.Core.OptimisticCache`1.Read(String cacheKey, ReadAndCacheObject`1 readAndCacheObject) +595
   EPiServer.Core.ContentProvider.LoadContentFromCacheOrRepository(ContentReference contentreference, ILanguageSelector selector) +744
   EPiServer.Core.ContentProvider.Load(ContentReference contentLink, ILanguageSelector selector) +40
   EPiServer.DataFactory.TryGet(ContentReference contentLink, ILanguageSelector languageSelector, T& content) +214
   EPiServer.DataFactory.Get(ContentReference contentLink, ILanguageSelector languageSelector) +61
   EPiServer.Web.Routing.UrlResolver.GetVirtualPath(ContentReference contentLink, String language, ContextMode contextMode, RouteValueDictionary routeValues, RequestContext requestContext) +87
   EPiServer.Web.Routing.UrlResolver.GetVirtualPath(ContentReference contentLink, String language, VirtualPathArguments virtualPathArguments) +76
   EPiServer.Web.Routing.UrlResolver.GetUrl(ContentReference contentLink, String language) +15
   EPiServer.Web.HierarchicalUrlRewriteProvider.GetFriendlyPagePath(ContentReference contentReference, String currentLanguageBranch) +16
   EPiServer.Web.HierarchicalUrlRewriteProvider.ConvertToExternalInternal(UrlBuilder url, Object internalObject, Encoding toEncoding) +213
   EPiServer.Web.HierarchicalUrlRewriteProvider.ConvertToExternal(UrlBuilder url, Object internalObject, Encoding toEncoding) +162
   EPiServer.Web.FriendlyHtmlRewriteToExternal.HtmlRewriteUrl(UrlBuilder internalUrl, UrlBuilder externalUrl, UrlBuilder url, Encoding encoding, RebaseAction rebase, Object& internalObject) +55
   EPiServer.Web.FriendlyHtmlRewriteToExternal.rewritePipe_HtmlRewriteUrl(Object sender, HtmlRewriteEventArgs e) +394
   EPiServer.Web.RewritePipe.OnHtmlRewriteUrl(HtmlRewriteEventArgs e) +20
   EPiServer.Web.HtmlRewritePipe.WriteElement(MyHtmlRewriteEventArgs e, SgmlReader reader, TextWriter writer) +471
   EPiServer.Web.HtmlRewritePipe.RewriteToEnd(TextReader reader, TextWriter writer) +1973
   EPiServer.Web.HtmlRewriteStream.Close() +170
   System.Web.HttpWriter.FilterIntegrated(Boolean finalFiltering, IIS7WorkerRequest wr) +188
   System.Web.HttpResponse.FilterOutput() +104
   System.Web.CallFilterExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +49
   System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +69
#79802 Jan 07, 2014 21:12
  • Member since: 2004

    From the error my guess would be that there is a link somewhere in content that is stored with a slash after language. That is somewhere in content in db there would be a link something like /link/<guid>.aspx?epslanguage=da/

    You could try to run following queries from SQL Managment Studio 

    select LongString from tblContentProperty where LongString like '%epslanguage=da/%'
    select String from tblContentProperty where String like '%epslanguage=da/%'

    #79829 Jan 08, 2014 11:52
  • Member since: 2013

    I tried your queries with no result.

    I narrowed the errors down to two internal shortcuts between to pages and one of their subpages. In the EPiServerErrorLog the exceptions always occur when trying to load the ContentIDs of one of the two shortcut destinations.

    For some reason if I disable or redirect the shortcuts the site works.

    Another temporary workaroung I found, is that if I navigate to one of the shortcut destinations in edit mode, the whole site render again (both in edit mode and in view mode). Or I can navigate to the second of the shortcuts in view mode, and the whole site works, too.
    Then when the IIS application restarts, the errors are back again.

     

    This is an extract of the error log, when the IIS was restarted and the error occurred:

    2014-01-08 16:22:02,448 INFO [42] EPiServer.Core.ContentProvider+<>c__DisplayClass1c.<LoadContentFromCacheOrRepository>b__1a - ContentLink=3640, ReadAndCacheObject delegate...LoadContent returned Content object
    2014-01-08 16:22:02,448 INFO [42] EPiServer.Core.OptimisticCache`1.Read - cacheKey=EPPageData:3640, ReadAndCacheObject delegate returned object of type TObject
    2014-01-08 16:22:02,448 INFO [42] EPiServer.Core.ContentProvider.LoadContentFromCacheOrRepository - ContentLink=3640, returning ContentReference object
    2014-01-08 16:22:02,448 INFO [42] EPiServer.Core.OptimisticCache`1.Read - cacheKey=EP:LanguageBranch
    2014-01-08 16:22:02,448 INFO [42] EPiServer.Core.OptimisticCache`1.TryRead - cacheKey=EP:LanguageBranch
    2014-01-08 16:22:02,448 INFO [42] EPiServer.Core.OptimisticCache`1.TryRead - cacheKey=EP:LanguageBranch, retry 1, calling CacheManager.Get for key
    2014-01-08 16:22:02,448 INFO [42] EPiServer.Core.OptimisticCache`1.TryRead - cacheKey=EP:LanguageBranch, retry 1, CacheManager.Get returned object of type EPiServer.DataAbstraction.LanguageBranchCollection[] for key
    2014-01-08 16:22:02,448 INFO [42] EPiServer.Core.OptimisticCache`1.TryRead - cacheKey=EP:LanguageBranch, retry 1, returning object of type TObject
    2014-01-08 16:22:02,448 INFO [42] EPiServer.Core.OptimisticCache`1.Read - cacheKey=EP:LanguageBranch, returning an object of type TObject
    2014-01-08 16:22:02,449 INFO [42] EPiServer.Core.OptimisticCache`1.Read - cacheKey=EPPageData:3651:da/
    2014-01-08 16:22:02,449 INFO [42] EPiServer.Core.OptimisticCache`1.TryRead - cacheKey=EPPageData:3651:da/
    2014-01-08 16:22:02,449 INFO [42] EPiServer.Core.OptimisticCache`1.TryRead - cacheKey=EPPageData:3651:da/, retry 1, calling CacheManager.Get for key
    2014-01-08 16:22:02,449 INFO [42] EPiServer.Core.OptimisticCache`1.TryRead - cacheKey=EPPageData:3651:da/, retry 1, CacheManager.Get returned null for key
    2014-01-08 16:22:02,449 INFO [42] EPiServer.Core.OptimisticCache`1.TryRead - cacheKey=EPPageData:3651:da/, retry 1, returning null
    2014-01-08 16:22:02,449 INFO [42] EPiServer.Core.OptimisticCache`1.Read - cacheKey=EPPageData:3651:da/, inserting a RefCountedEvent object in cache
    2014-01-08 16:22:02,449 INFO [42] EPiServer.Core.OptimisticCache`1.Read - cacheKey=EPPageData:3651:da/, calling ReadAndCacheObject delegate passed
    2014-01-08 16:22:02,449 INFO [42] EPiServer.Core.ContentProvider+<>c__DisplayClass1c.<LoadContentFromCacheOrRepository>b__1a - ContentLink=3651, ReadAndCacheObject delegate...calling LoadContent
    2014-01-08 16:22:02,449 ERROR [42] EPiServer.Core.OptimisticCache`1.Read - cacheKey=EPPageData:3651:da/, last exception was:
    System.Globalization.CultureNotFoundException: Culture is not supported.
    Parameter name: name
    da/ is an invalid culture identifier.
       at System.Globalization.CultureInfo.GetCultureInfo(String name)
       at EPiServer.Core.LanguageSelectorContext.get_SelectedLanguageBranch()
       at EPiServer.DefaultContentProvider.LoadContent(ContentReference contentLink, ILanguageSelector languageSelector)
       at EPiServer.Core.ContentProvider.<>c__DisplayClass1c.<LoadContentFromCacheOrRepository>b__1a()
       at EPiServer.Core.OptimisticCache`1.Read(String cacheKey, ReadAndCacheObject`1 readAndCacheObject)
    2014-01-08 16:22:18,461 ERROR [42] EPiServer.Global.Global_Error - 1.2.5 Unhandled exception in ASP.NET
    System.Globalization.CultureNotFoundException: Culture is not supported.
    Parameter name: name
    da/ is an invalid culture identifier.
       at System.Globalization.CultureInfo.GetCultureInfo(String name)
       at EPiServer.Core.LanguageSelectorContext.get_SelectedLanguageBranch()
       at EPiServer.DefaultContentProvider.LoadContent(ContentReference contentLink, ILanguageSelector languageSelector)
       at EPiServer.Core.ContentProvider.<>c__DisplayClass1c.<LoadContentFromCacheOrRepository>b__1a()
       at EPiServer.Core.OptimisticCache`1.Read(String cacheKey, ReadAndCacheObject`1 readAndCacheObject)
       at EPiServer.Core.ContentProvider.LoadContentFromCacheOrRepository(ContentReference contentreference, ILanguageSelector selector)
       at EPiServer.Core.ContentProvider.Load(ContentReference contentLink, ILanguageSelector selector)
       at EPiServer.DataFactory.TryGet[T](ContentReference contentLink, ILanguageSelector languageSelector, T& content)
       at EPiServer.DataFactory.Get[T](ContentReference contentLink, ILanguageSelector languageSelector)
       at EPiServer.Web.Routing.UrlResolver.GetVirtualPath(ContentReference contentLink, String language, ContextMode contextMode, RouteValueDictionary routeValues, RequestContext requestContext)
       at EPiServer.Web.Routing.UrlResolver.GetVirtualPath(ContentReference contentLink, String language, VirtualPathArguments virtualPathArguments)
       at EPiServer.Web.Routing.UrlResolver.GetUrl(ContentReference contentLink, String language)
       at EPiServer.Web.HierarchicalUrlRewriteProvider.GetFriendlyPagePath(ContentReference contentReference, String currentLanguageBranch)
       at EPiServer.Web.HierarchicalUrlRewriteProvider.ConvertToExternalInternal(UrlBuilder url, Object internalObject, Encoding toEncoding)
       at EPiServer.Web.HierarchicalUrlRewriteProvider.ConvertToExternal(UrlBuilder url, Object internalObject, Encoding toEncoding)
       at EPiServer.Web.FriendlyHtmlRewriteToExternal.HtmlRewriteUrl(UrlBuilder internalUrl, UrlBuilder externalUrl, UrlBuilder url, Encoding encoding, RebaseAction rebase, Object& internalObject)
       at EPiServer.Web.FriendlyHtmlRewriteToExternal.rewritePipe_HtmlRewriteUrl(Object sender, HtmlRewriteEventArgs e)
       at EPiServer.Web.RewritePipe.OnHtmlRewriteUrl(HtmlRewriteEventArgs e)
       at EPiServer.Web.HtmlRewritePipe.WriteElement(MyHtmlRewriteEventArgs e, SgmlReader reader, TextWriter writer)
       at EPiServer.Web.HtmlRewritePipe.RewriteToEnd(TextReader reader, TextWriter writer)
       at EPiServer.Web.HtmlRewriteStream.Close()
       at System.Web.HttpWriter.FilterIntegrated(Boolean finalFiltering, IIS7WorkerRequest wr)
       at System.Web.HttpResponse.FilterOutput()
       at System.Web.HttpApplication.CallFilterExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
       at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

        

    #79858 Jan 08, 2014 17:06
  • Member since: 2011

    I have the same problem after upgrading from CMS 7.1 -> 7.5 

    [CultureNotFoundException: Culture is not supported.
    Parameter name: name
    sv~ is an invalid culture identifier.]
    System.Globalization.CultureInfo.GetCultureInfo(String name) +14293038
    EPiServer.Core.LanguageSelectorContext.get_SelectedLanguageBranch() +40
    EPiServer.DefaultContentProvider.LoadContent(ContentReference contentLink, ILanguageSelector languageSelector) +221
    EPiServer.Core.&lt;&gt;c__DisplayClass1c.&lt;LoadContentFromCacheOrRepository&gt;b__1a() +141
    EPiServer.Core.OptimisticCache`1.Read(String cacheKey, ReadAndCacheObject`1 readAndCacheObject) +1175
    EPiServer.Core.ContentProvider.LoadContentFromCacheOrRepository(ContentReference contentreference, ILanguageSelector selector) +945
    EPiServer.Core.ContentProvider.Load(ContentReference contentLink, ILanguageSelector selector) +233
    EPiServer.DataFactory.TryGet(ContentReference contentLink, ILanguageSelector languageSelector, T&amp; content) +526
    EPiServer.DataFactory.Get(ContentReference contentLink, ILanguageSelector languageSelector) +86
    EPiServer.Web.Routing.UrlResolver.GetVirtualPath(ContentReference contentLink, String language, ContextMode contextMode, RouteValueDictionary routeValues, RequestContext requestContext) +93
    EPiServer.Web.Routing.UrlResolver.GetVirtualPath(ContentReference contentLink, String language, VirtualPathArguments virtualPathArguments) +130
    EPiServer.Web.Routing.UrlResolver.GetUrl(ContentReference contentLink, String language) +18
    EPiServer.Web.HierarchicalUrlRewriteProvider.ConvertToExternalInternal(UrlBuilder url, Object internalObject, Encoding toEncoding) +262
    EPiServer.Web.HierarchicalUrlRewriteProvider.ConvertToExternal(UrlBuilder url, Object internalObject, Encoding toEncoding) +240
    EPiServer.Web.FriendlyHtmlRewriteToExternal.HtmlRewriteUrl(UrlBuilder internalUrl, UrlBuilder externalUrl, UrlBuilder url, Encoding encoding, RebaseAction rebase, Object&amp; internalObject) +230
    EPiServer.Web.FriendlyHtmlRewriteToExternal.rewritePipe_HtmlRewriteUrl(Object sender, HtmlRewriteEventArgs e) +494
    EPiServer.Web.HtmlRewritePipe.WriteElement(MyHtmlRewriteEventArgs e, SgmlReader reader, TextWriter writer) +575
    EPiServer.Web.HtmlRewritePipe.RewriteToEnd(TextReader reader, TextWriter writer) +1306
    EPiServer.Web.HtmlRewriteStream.Close() +220
    Microsoft.VisualStudio.Web.PageInspector.Runtime.Tracing.ArteryFilter.Close() +46
    System.Web.HttpWriter.FilterIntegrated(Boolean finalFiltering, IIS7WorkerRequest wr) +12599767
    System.Web.HttpResponse.FilterOutput() +121
    System.Web.CallFilterExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +119
    System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean&amp; completedSynchronously) +165

    I have searched for the string:  sv~ in the entire DB but no luck.

    The site started once but efter editing License.config the error occured. One more strange thing the url ...util/login.aspx generates in 404 page not found this is probably from the above error maybe something about redirect.

    #81344 Edited, Feb 14, 2014 13:40
  • Member since: 2013

    What caused the issue in my project, was that one of the user controls was building URL's (for a menu) by appending a slash to the PageData.LinkURL.
    And since LinkURL is formatted like: PageTemplate.aspx?id=100&epslanguage=da, the trailing slash was messing up the parsing of the QueryString.

    I ended up deleting the slash.
    Maybe this will help you out.

    #81362 Feb 14, 2014 16:52
  • Member since: 2011

    Well I have not identified the problem yet, but as it seems its only the startpage that generates the error, not any subpages, I have tried removing calls to blocks and usercontrols, but no light in the tunnel yet.

    Another strange issue is that I'm getting 404 in the /util/login.aspx page.

    #81408 Feb 17, 2014 9:45
  • Member since: 2011

    The upgrade of the site missed the appdata folder which was not upgraded to the latest version, I compared to a default installation of Alloy and updated the sites appdata folder and now I can login as expected. 

    The culture issue has its origin in one of the startpage's blocks, on the startpage there is 5 blocks in a ContentArea and one of these causing the problem?

    #81432 Edited, Feb 17, 2014 13:02