November Happy Hour will be moved to Thursday December 5th.

Server error when trying to view Meta Classes in commerce administration section

Vote:
 

Hi,

I am receiving a server error when trying to view the Meta Classes in the Administration section of EPiServer Commerce. When I click on the Meta Classes link, I am returned with an error saying:

Must begin with a letter and only contain alphanumeric characters (a-z, A-Z, 0-9), '_', ':' and '-'
Parameter name: name

EPiServer.Security.PermissionType..ctor(String groupName, String name) +446
Mediachase.Commerce.Security.<>c__DisplayClass1.b__0(String x) +43
System.Linq.WhereSelectArrayIterator`2.MoveNext() +82
System.Linq.Enumerable.Any(IEnumerable`1 source, Func`2 predicate) +184
Mediachase.BusinessFoundation.CommandHandler.IsCommandEnableHandler(Object Sender, Object Command, Object Argument) +668
Mediachase.BusinessFoundation.CommandManager.IsEnable(String commandName, Dictionary`2 listParams) +396
Mediachase.BusinessFoundation.CommandManager.AddCommand(String className, String viewName, String placeName, CommandParameters cp, Boolean& isEnabled) +265
Mediachase.Commerce.Manager.Core.Controls.MetaToolbar.BindFromObject(ToolBarItem[] itemCollection, List`1 toolbarItemsCollection) +1296
Mediachase.Commerce.Manager.Core.Controls.MetaToolbar.BindFromObject(ToolBarItem[] itemCollection, List`1 toolbarItemsCollection) +1516
Mediachase.Commerce.Manager.Core.MetaData.Admin.MetaClassesControl.Page_Load(Object sender, EventArgs e) +658

Does anyone know why this might be? It has been working previously but just recently we upgraded our site from EPiServer 7.5 to 8, and I'm not sure whether this might have broken after the upgrade. I believe it might be related to an issue with permissions, however I am logging into commerce manager as an admin.

Any suggestions much appreciated.

Thanks,

Mohammed.

#141284
Nov 11, 2015 11:21
Vote:
 

Hi,

I would suggest to upgrade to latest version (8.16.1), then make sure all the migration steps have completed, before starting Commerce Manager,

Regards,

/Q

#141307
Nov 11, 2015 16:26
Vote:
 

Hi Quan,

Thanks for your response. We already have upgraded to the latest version of commerce (8.16.1) and followed all the migration steps. 

Everything else in Commerce Manager works apart from the ability to access the Meta Classes function under the Catalog System option. Also I've just noticed, when I go to the Meta Fields funtion and try to add a new meta field, I get the following error:

Access Denied

Your account does not have rights to access this feature of the commerce manager. Please contact your system administrator for more information.

I think it may be related to the original problem. However accessing the Meta Classes and Meta Fields functions under the Order System option seem to work fine. It's just under Catalog System option that they dont work.

Regards

#141308
Nov 11, 2015 16:44
Vote:
 

Hi,

What do you see in <yoursite>/<ui-path>/Commerce/Migrate? Do all the migration steps there completed?

If yes, did you try to restart CM? The problem you're having seems to be an issue where the permissions were not properly migrated or were cached.

/Q

#141309
Nov 11, 2015 16:54
Vote:
 

I've just checked all the migration steps in /commerce/migrate and they are all ticked and completed.

I've also just restarted commerce manager in IIS and recycled the app pool. But still getting the same problem.

Thanks

#141310
Nov 11, 2015 17:08
Vote:
 

I'm having same problem - @Muhammed have you able to fix this?

#142073
Nov 30, 2015 13:01
Vote:
 

This is due to the persmissions being incorrect when upgrading commerce in the CatalogMetaField-New.xml file (Catlog > Config > View) the permissions tag isn't right.

Before: catalog:admin:meta:fld:create

What it should be: catalog:admin:meta:fld:mng:create

#142151
Dec 02, 2015 18:11
Vote:
 

Aslo have this problem when upgrading from 7.12 to 9.5.0

Tried Jacobs suggestion, still in the end same problem

Any other suggestions?

#143188
Jan 14, 2016 12:57
Vote:
 

Hi

I think its problem with EpiServer Commerce Manager Import. When you create a new BF class & Publish it. It create new entry in CMS table "tblUserPermission". Thats why it is easily editable.

Now when you import it using Commerce Manager import. It does not create these entries in database hence you can not able to edit BF classes eventhough you have publish them.

I created a manual sql script that i run on CMS database (not commerce manager database) after import to assign all premissions. like below

Insert into [tblUserPermission] (Name,IsRole,Permission, GroupName) Values('Administrators',1,'businessfoundation:[bfClassName]:create:permission','EPiCommerce')
Insert into [tblUserPermission] (Name,IsRole,Permission, GroupName) Values('Administrators',1,'businessfoundation:[[bfClassName]]:delete:permission','EPiCommerce')
Insert into [tblUserPermission] (Name,IsRole,Permission, GroupName) Values('Administrators',1,'businessfoundation:[[bfClassName]]:edit:permission','EPiCommerce')
Insert into [tblUserPermission] (Name,IsRole,Permission, GroupName) Values('Administrators',1,'businessfoundation:[[bfClassName]]:view:permission','EPiCommerce')

I hope that helps

Thanks

#143189
Jan 14, 2016 13:08
Vote:
 

Were also having this problem now using commerce 9.8.1.

tblUserPermission looks ok. Works fine to view meta fields.

Any solutions out there?

#144184
Feb 09, 2016 4:51
Vote:
 

I can confirm that it is still present for us as well in version 9.8.1 and that tblUserPermission has what Naveed suggested to add already or i think so

running following sql query:

SELECT [Name]
      ,[IsRole]
      ,[Permission]
      ,[GroupName]
FROM [tblUserPermission]
WHERE
      [Permission] LIKE 'businessfoundation%'

 

returns:

Name            IsRole  Permission                                                     GroupName
--------------- ------- -------------------------------------------------------------- -----------
Administrators  1       businessfoundation:address:create:permission                   EPiCommerce
Administrators  1       businessfoundation:address:delete:permission                   EPiCommerce
Administrators  1       businessfoundation:address:edit:permission                     EPiCommerce
Administrators  1       businessfoundation:address:list:permission                     EPiCommerce
Administrators  1       businessfoundation:address:view:permission                     EPiCommerce
Administrators  1       businessfoundation:contact:create:permission                   EPiCommerce
Administrators  1       businessfoundation:contact:delete:permission                   EPiCommerce
Administrators  1       businessfoundation:contact:edit:permission                     EPiCommerce
Administrators  1       businessfoundation:contact:list:permission                     EPiCommerce
Administrators  1       businessfoundation:contact:view:permission                     EPiCommerce
Administrators  1       businessfoundation:contactnote:create:permission               EPiCommerce
Administrators  1       businessfoundation:contactnote:delete:permission               EPiCommerce
Administrators  1       businessfoundation:contactnote:edit:permission                 EPiCommerce
Administrators  1       businessfoundation:contactnote:list:permission                 EPiCommerce
Administrators  1       businessfoundation:contactnote:view:permission                 EPiCommerce
Administrators  1       businessfoundation:creditcard:create:permission                EPiCommerce
Administrators  1       businessfoundation:creditcard:delete:permission                EPiCommerce
Administrators  1       businessfoundation:creditcard:edit:permission                  EPiCommerce
Administrators  1       businessfoundation:creditcard:list:permission                  EPiCommerce
Administrators  1       businessfoundation:creditcard:view:permission                  EPiCommerce
Administrators  1       businessfoundation:customizationitem:create:permission         EPiCommerce
Administrators  1       businessfoundation:customizationitem:delete:permission         EPiCommerce
Administrators  1       businessfoundation:customizationitem:edit:permission           EPiCommerce
Administrators  1       businessfoundation:customizationitem:list:permission           EPiCommerce
Administrators  1       businessfoundation:customizationitem:view:permission           EPiCommerce
Administrators  1       businessfoundation:customizationitemargument:create:permission EPiCommerce
Administrators  1       businessfoundation:customizationitemargument:delete:permission EPiCommerce
Administrators  1       businessfoundation:customizationitemargument:edit:permission   EPiCommerce
Administrators  1       businessfoundation:customizationitemargument:list:permission   EPiCommerce
Administrators  1       businessfoundation:customizationitemargument:view:permission   EPiCommerce
Administrators  1       businessfoundation:custompage:create:permission                EPiCommerce
Administrators  1       businessfoundation:custompage:delete:permission                EPiCommerce
Administrators  1       businessfoundation:custompage:edit:permission                  EPiCommerce
Administrators  1       businessfoundation:custompage:list:permission                  EPiCommerce
Administrators  1       businessfoundation:custompage:view:permission                  EPiCommerce
Administrators  1       businessfoundation:folder:create:permission                    EPiCommerce
Administrators  1       businessfoundation:folder:delete:permission                    EPiCommerce
Administrators  1       businessfoundation:folder:edit:permission                      EPiCommerce
Administrators  1       businessfoundation:folder:list:permission                      EPiCommerce
Administrators  1       businessfoundation:folder:view:permission                      EPiCommerce
Administrators  1       businessfoundation:folderelement:create:permission             EPiCommerce
Administrators  1       businessfoundation:folderelement:delete:permission             EPiCommerce
Administrators  1       businessfoundation:folderelement:edit:permission               EPiCommerce
Administrators  1       businessfoundation:folderelement:list:permission               EPiCommerce
Administrators  1       businessfoundation:folderelement:view:permission               EPiCommerce
Administrators  1       businessfoundation:giftcard:create:permission                  EPiCommerce
Administrators  1       businessfoundation:giftcard:delete:permission                  EPiCommerce
Administrators  1       businessfoundation:giftcard:edit:permission                    EPiCommerce
Administrators  1       businessfoundation:giftcard:list:permission                    EPiCommerce
Administrators  1       businessfoundation:giftcard:view:permission                    EPiCommerce
Administrators  1       businessfoundation:imagefolderelement:create:permission        EPiCommerce
Administrators  1       businessfoundation:imagefolderelement:delete:permission        EPiCommerce
Administrators  1       businessfoundation:imagefolderelement:edit:permission          EPiCommerce
Administrators  1       businessfoundation:imagefolderelement:list:permission          EPiCommerce
Administrators  1       businessfoundation:imagefolderelement:view:permission          EPiCommerce
Administrators  1       businessfoundation:organization:create:permission              EPiCommerce
Administrators  1       businessfoundation:organization:delete:permission              EPiCommerce
Administrators  1       businessfoundation:organization:edit:permission                EPiCommerce
Administrators  1       businessfoundation:organization:list:permission                EPiCommerce
Administrators  1       businessfoundation:organization:view:permission                EPiCommerce
Administrators  1       businessfoundation:pdffolderelement:create:permission          EPiCommerce
Administrators  1       businessfoundation:pdffolderelement:delete:permission          EPiCommerce
Administrators  1       businessfoundation:pdffolderelement:edit:permission            EPiCommerce
Administrators  1       businessfoundation:pdffolderelement:list:permission            EPiCommerce
Administrators  1       businessfoundation:pdffolderelement:view:permission            EPiCommerce
Administrators  1       businessfoundation:recentreferencehistory:create:permission    EPiCommerce
Administrators  1       businessfoundation:recentreferencehistory:delete:permission    EPiCommerce
Administrators  1       businessfoundation:recentreferencehistory:edit:permission      EPiCommerce
Administrators  1       businessfoundation:recentreferencehistory:list:permission      EPiCommerce
Administrators  1       businessfoundation:recentreferencehistory:view:permission      EPiCommerce
Administrators  1       businessfoundation:tabviewpermission                           EPiCommerce

(71 row(s) affected)

 

#144189
Edited, Feb 09, 2016 8:19
Vote:
 

@Gatis: The access rights to metaclass are in "catalog:admin:meta:*" and "order:admin:meta:*" Permission, not in "businessfoundation:*"

/Q

#144192
Feb 09, 2016 8:45
Vote:
 

Ok, that still looks fine, is it?:

SELECT * FROM [tblUserPermission]
WHERE [Permission] LIKE 'catalog:admin:meta:%' OR [Permission] LIKE 'order:admin:meta:%'

results:

pkID  Name            IsRole  Permission                        GroupName
----- --------------- ------- --------------------------------- -----------
34    Administrators  1       catalog:admin:meta:cls:mng:create EPiCommerce
35    Administrators  1       catalog:admin:meta:cls:mng:delete EPiCommerce
36    Administrators  1       catalog:admin:meta:cls:mng:edit   EPiCommerce
37    Administrators  1       catalog:admin:meta:cls:mng:view   EPiCommerce
38    Administrators  1       catalog:admin:meta:fld:mng:create EPiCommerce
39    Administrators  1       catalog:admin:meta:fld:mng:delete EPiCommerce
40    Administrators  1       catalog:admin:meta:fld:mng:edit   EPiCommerce
41    Administrators  1       catalog:admin:meta:fld:mng:view   EPiCommerce
208   Administrators  1       order:admin:meta:cls:mng:create   EPiCommerce
209   Administrators  1       order:admin:meta:cls:mng:delete   EPiCommerce
210   Administrators  1       order:admin:meta:cls:mng:edit     EPiCommerce
211   Administrators  1       order:admin:meta:cls:mng:view     EPiCommerce
212   Administrators  1       order:admin:meta:fld:mng:create   EPiCommerce
213   Administrators  1       order:admin:meta:fld:mng:delete   EPiCommerce
214   Administrators  1       order:admin:meta:fld:mng:edit     EPiCommerce
215   Administrators  1       order:admin:meta:fld:mng:view     EPiCommerce

(16 row(s) affected)

and accessing meta fields works while classes fails

#144193
Feb 09, 2016 8:49
Vote:
 

Can you show the file in Commerce Manager project Apps\Core\Config\View\Navigation\LeftMenu.xml so I can see if it was updated properly by the nuget update

#144199
Feb 09, 2016 9:25
Vote:
 

Apps\Core\Config\View\Navigation\LeftMenu.xml

I think it have not, since I can see in source control history that it has not changed by upgrade.

I guess I need to compare my manager with clean install

#144200
Edited, Feb 09, 2016 9:28
Vote:
 

Seems it is updated correctly.  Is that the only functionality in the admin section that is not working?

#144201
Feb 09, 2016 9:33
Vote:
 

Things look correct - did you try to clean the ASP.NET temporary files and reset IIS?

/Q

#144202
Feb 09, 2016 9:43
Vote:
 

System Settings -> Dictionaries -> Languages

Fails with JavaScript message: 

Specified view 'Langauges-List' can not be located in 'Content' app

System Settings -> Workflow

Fails with JavaScript message: 

Specified view 'Workflow-List' can not be located in 'Content' app

All other functionality work except: 'Catalog system -> Meta classes'

However: 'Order System -> Meta Classes' work

#144203
Feb 09, 2016 9:43
Vote:
 

No, nor IIS reset, nor clearing asp.net temporary files does not change things

#144204
Feb 09, 2016 9:46
Vote:
 

If you have made no customization to the Apps folder, I would suggest to overwrite the entire folder with a clean install of Commerce Manager.

I compared your file with what we have in 9.8.1 and it seems there are differences in several places.

/Q

#144205
Feb 09, 2016 9:49
Vote:
 

This is the JavaScript call that fails for catalog meta classes and returns previously mentioned exception:

http://manager/Apps/Shell/Pages/ContentFrame.aspx?_a=Catalog&_v=CatalogMetaClass-List&namespace=Mediachase.Commerce.Catalog&fieldnamespace=Mediachase.Commerce.Catalog&mfview=CatalogMetaField-Edit

example

maybe this helps

#144206
Feb 09, 2016 9:56
Vote:
 

Yes I will try exactly that(comparing to clean install), as we have only few modifications, and report back here

#144207
Feb 09, 2016 9:58
Vote:
 

What's the content of your \Apps\Catalog\Config\View\CatalogMetaClass-List.xml?

/Q

#144208
Feb 09, 2016 9:59
Vote:
 

Ok the problem is this line:

<Button id="ImportMetaData" text="{CatalogStrings:MetaClass_Import_MetaData}" imageUrl="~/Apps/Shell/styles/Images/toolbar/import.png" commandName="cmdCatalogImportMetaData" permissions="*catalog:admin:meta:cls:mng:create,*catalog:admin:meta:fld:mng:create"/>

* is an invalid character. Remove it should solve the problem.

I still suggest you to make sure your Apps folder matches with our Apps folder.

/Q

#144211
Feb 09, 2016 10:04
Vote:
 

Spot on Quan, removing thouse two * fixed the issue for me

And I will definetly compare against latest clean Apps

Thanks!

#144212
Feb 09, 2016 10:08
Vote:
 

Can you confirm, Apps is not a virtual directory in IIS and pointing to some older version.

Regards
/K

#144240
Feb 09, 2016 17:53
Vote:
 

No its not virtual directory and is not pointing to old Shared/Shared/Apps what was set up as virtual directory

#144242
Feb 09, 2016 18:38
Vote:
 

Thanks Quan and Gatis. That fixed the issue for us as well.

( Also noted that Administrators could not create meta fields so I had to update the permissions in CatalogMetaField-New.xml that was incorrect.

Updated: catalog:admin:meta:fld:create To: catalog:admin:meta:fld:mng:create )

#144244
Edited, Feb 09, 2016 22:37
Vote:
 

Also had this problem upgrading from Commerce 8.7.1 to 8.16.1.

Besides the error in CatalogMetaField-New.xml, I would like to add an error found in Apps/Customer/Config/View/Navigation/LeftMenu.xml, there is a blank space in the permissions list.

#150238
Jun 14, 2016 15:49
* 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.