diff --git a/product/ERP5Type/Base.py b/product/ERP5Type/Base.py
index 091e34f87d12d328055a2262a61a4353d783db68..baaff3b09f52d44db3ccee7bd43d40a397ffca8a 100755
--- a/product/ERP5Type/Base.py
+++ b/product/ERP5Type/Base.py
@@ -891,10 +891,11 @@ class Base( CopyContainer, PortalContent, Base18, ActiveObject, ERP5PropertyMana
   security.declareProtected( Permissions.ModifyPortalContent, 'setCategoryList' )
   def setCategoryList(self, path_list):
     self._setCategoryList(path_list)
+    self.reindexObject()
 
   security.declareProtected( Permissions.ModifyPortalContent, '_setCategoryList' )
   def _setCategoryList(self, path_list):
-    self.categories = tuple(path_list)
+    self.portal_categories._setCategoryList(self, path_list)
 
   security.declareProtected( Permissions.View, 'getBaseCategoryList' )
   def getBaseCategoryList(self):