Our monthly Virtual Happy Hour is happening this week, Fri Feb 23!

Try our conversational search powered by Generative AI!

Commerce 13 - Icons not loading in episerver backoffice



We've upgraded our Commerce from early 13 to latest 13 version. Everything seemed to have gone well, but when we browse through the episerver back office, all icons are not loading in. This seems to be the only issue occuring afte the upgrades.



We've narrowed down the update that causes the icons to not load in by starting from the beginning and hopping updates (from early 13 to current 13.30.0). The following nuget update step causes this:

EPiServer.Commerce.13.30.0 -> EPiServer.Commerce.13.31.1
EPiServer.Commerce.Azure.14.0.19 -> EPiServer.Commerce.Azure.14.0.20
EPiServer.Commerce.Core.13.30.0 -> EPiServer.Commerce.Core.13.31.1
EPiServer.Commerce.UI.13.30.0 -> EPiServer.Commerce.UI.13.31.1
EPiServer.Commerce.UI.CustomerService.13.30.0 -> EPiServer.Commerce.UI.CustomerService.13.31.1
EPiServer.Commerce.UI.ManagerIntegration.13.30.0 -> EPiServer.Commerce.UI.ManagerIntegration.13.31.1


The issue occurs on all localhosts (not tested yet in online environment). The issue occurs on all browers tested.

We've reviewed the dev tools and found the following contentlink errors returned on the network calls for the icon(s):

Server Error in '/' Application.
The provided content link does not have a value.
Parameter name: contentLink
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.ArgumentNullException: The provided content link does not have a value.
Parameter name: contentLink

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:

[ArgumentNullException: The provided content link does not have a value.
Parameter name: contentLink]
   EPiServer.Core.Internal.DefaultContentLoader.Get(ContentReference contentLink, LoaderOptions loaderOptions) +376
   EPiServer.Core.Internal.DefaultContentLoader.Get(ContentReference contentLink, CultureInfo language) +132
   EPiServer.Commerce.Routing.HierarchicalCatalogPartialRouter.GetCatalogContentByUri(SegmentPair segmentPair, SegmentContext segmentContext, CultureInfo cultureInfo) +81
   EPiServer.Commerce.Routing.HierarchicalCatalogPartialRouter.RoutePartial(PageData content, SegmentContext segmentContext) +378
   EPiServer.Web.Routing.PartialRouter`2.RoutePartial(IContent content, SegmentContext segementContext) +119
   EPiServer.Web.Routing.Segments.Internal.PartialSegment.RouteDataMatch(SegmentContext context) +302
   EPiServer.Web.Routing.Internal.<>c__DisplayClass28_0.<MatchSegments>b__0(ISegment s) +15
   System.Linq.Enumerable.All(IEnumerable`1 source, Func`2 predicate) +140
   EPiServer.Web.Routing.Internal.DefaultContentRoute.MatchSegments(SegmentContext segmentContext) +72
   EPiServer.Web.Routing.Internal.DefaultContentRoute.RouteSegmentContext(SegmentContext segmentContext) +13
   EPiServer.Web.Routing.Internal.DefaultUrlResolver.RouteInternal(UrlBuilder urlBuilder, ContextMode contextMode, Boolean matchContentRouteConstraints) +447
   EPiServer.Web.Routing.Internal.DefaultUrlResolver.Route(UrlBuilder urlBuilder, ContextMode contextMode) +11
   EPiServer.Web.Routing.UrlResolver.Route(UrlBuilder urlBuilder) +12
   ImageResizer.Plugins.EPiServerBlobReader.EPiServerBlobFile.get_Content() +75
   ImageResizer.Plugins.EPiServerBlobReader.EPiServerBlobReaderPlugin.FileExists(String virtualPath, NameValueCollection queryString) +39
   ImageResizer.Configuration.PipelineConfig.GetFile(String virtualPath, NameValueCollection queryString) +97
   ImageResizer.InterceptModule.CheckRequest_PostAuthorizeRequest(Object sender, EventArgs e) +302
   System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +201
   System.Web.<>c__DisplayClass285_0.<ExecuteStepImpl>b__0() +24
   System.Web.StepInvoker.Invoke(Action executionStep) +100
   System.Web.<>c__DisplayClass4_0.<Invoke>b__0() +17
   Microsoft.AspNet.TelemetryCorrelation.TelemetryCorrelationHttpModule.OnExecuteRequestStep(HttpContextBase context, Action step) +64
   System.Web.<>c__DisplayClass284_0.<OnExecuteRequestStep>b__0(Action nextStepAction) +54
   System.Web.StepInvoker.Invoke(Action executionStep) +84
   System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step) +100
   System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +73

Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.8.4330.0

We've also checked the Shell.zip file and confirmed the icon images exist. 
In the css file, the url for the background image that is the icon is present and matching with the shell.zip file structure.

Since this issue only occurs on the back office of episerver and only happens with episerver 'native' icons, I would like to start this topic in hope for a fix or some direcitons.

Edit notes:: We've narrowed down the issue to the commerce upgrade. (updated topic to mirror this). We are now trying from the bottum up which commerce version upgrade is causing this issue. Any assistance is very much apreciated as we would like to go to the laters 13 version of commerce.

Edited, Jan 19, 2022 13:17
* You are NOT allowed to include any hyperlinks in the post because your account hasn't associated to your company. User profile should be updated.