View / App errors in Commerce Manager Administrative Pages.

Vote:
 

EPiServer Commerce Version: 9.14 (build 1)

After recently deploying Commerce Manager to a client's environment, we're seeing strange errors when attempting to access the Commerce Manager Administrative pages.

After logging in to the Commerce Manager admin pages, we immediately see a JavaScript error stating, "Specfied view 'Catalog-List' can not be located in 'Catalog' App" (also see screenshot).

Dismissing the JavaScript error gives a further error (I presume the same thing, but effectively rendered from server side) - See screenshot:

Please note that, apart from some configured database connection strings, the entire set of Commerce Manager installation files are the same as those that I have running locally on my development machine, where the Commerce Manager Admin pages are working correctly.

I've tried tracing the error back from source and have found JavaScript errorr source as being the the "MC_FindView" function within the ManagementClient2.js file (usually located in Apps\Shell\Scripts\Shell) and can see that the error is generated when the internal "this.Views" "property" of the ManagementClient function does not contain the required View for the given View & App name, however, I can't see how the "Views" property gets populated with data.

Can anyone helpme to understand what may be causing this error, and where the Apps/Views data is ultimately sourced from?

#152156
Aug 18, 2016 13:23
Vote:
 

Hi,

I would suggest to check your Apps folder - it's likely that some files are missing or corrupted. You can simply packages\EPiServer.CommerceManager.<version>\tools, then extract EPiServer.CommerceManager.zip there to overwrite files in Apps folder.

Regards,

/Q

#152157
Aug 18, 2016 13:37
Vote:
 

Hi Quan,

Thanks for your reply, however, I don't think I quite understand.  Are you saying that there's a file called "EPiServer.CommerceManager.zip" located within the "packages\EPiServer.CommerceManager.<version>\tools" folder?   I've looked, and I can't see one there.  Can you tell me where to find the "EPiServer.CommerceManager.zip" file?

Also, I'm confident that the entire set of files within the "Apps" folder structure that exist on the client's server (where the error is happening) are the same set of files that exist within my own installtion on my local development machine (where the error does NOT occur).

Do you have any other ideas, or can you help with identifying exactly where this issue may be originating from?  (i.e. is it likely to be xml configuration, database configuration etc.)

#152161
Edited, Aug 18, 2016 14:44
Vote:
 

Hi,

When you install EPiServer.CommerceManager nuget package on a site (this is to become a Commerce Manager), EPiServer.CommerceManager.<version> should be restored in the packages folder of your solution. EPiServer.CommerceManager.zip should be there.

I don't think this is a xml or database configuration. Your Commerce Manager site appears to be running (you can open the site directly to be sure) - it just looks like the Apps folder is not "right" to me. I would suggest you to double check (using some tools such as Beyond Compare to compare two Apps folder) to make sure Apps folder in the client's server is correct.

/Q

#152164
Aug 18, 2016 14:59
Vote:
 

Hi Quan,

Unfortuantely, I definitely don't have any .zip files within the packages\EPiServer.Commerce.9.14.1 folder.

Here's the complete file/folder structure of the packages\EPiServer.Commerce.9.14.1 folder:

| EPiServer.Commerce.9.14.1.nupkg
| readme.txt
|
+---content
| \---net45
| web.config.install.xdt
|
\---tools
| Copy-DB.psm1
| Copy-EcfConfigsIfNotExist.psm1
| EPiServer.Commerce.config
| EPiServer.Commerce.mdf
| Get-Config.psm1
| Get-ConfigPath.psm1
| Get-ConnectionConfigPath.psm1
| Get-EPiServerCommerceConnectionString.psm1
| Get-PackagesToolPath.psm1
| Install.ps1
| Set-CommerceManagerSearchIndexBasePath.psm1
| Set-NameSpace.psm1
|
+---Configs
| baf.config
| baf.data.manager.config
| baf.data.metaobject.config
| baf.library.folders.config
| ecf.app.config
| ecf.asset.config
| ecf.catalog.config
| ecf.customer.config
| ecf.customization.config
| ecf.marketing.config
| ecf.order.config
| ecf.security.config
| ecf.ssl.config
| Mediachase.Search.config
|
\---Infrastructure
InitializationModule.cs

#152167
Edited, Aug 18, 2016 15:31
Vote:
 

Hi,

No, it EPiServer.CommerceManager package

#152168
Aug 18, 2016 15:32
Vote:
 

Hi Quan,

Sorry, my mistake.

I believe I have now got to the bottom of this issue and you're exactly right, it was a problem with differences in the files within the Apps folder.  I was unable to perform a proper folder compare (with Beyond Compare) against the client's server's folder due to restriction in access the server, however, after some manual digging, I discovered that some of the filenames - mostly those config files that begin with an unorthodox filename character - were being mangled (possibly by either NuGet or our TeamCity instalation that packages up the folder for deployment - I've yet to get to the bottom of the exact cause).

Looking at the screenshot below, you can see the problem:

Once I replaced the "Apps" folder with one that did not have the config files' names mangled/encoded, the Commerce Manager interface started working again!

Many thanks for your help!

#152169
Edited, Aug 18, 2016 16:10
Vote:
 

For anyone else running into this problem, it looks like it is a Nuget bug with version pre-4.6.

https://github.com/NuGet/Home/issues/6225

Thanks, Craig, for your detailed investigation!

#231069
Edited, Nov 18, 2020 22:00
* 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.