Debug content model in Alfresco

When you need to customize Alfresco content model, not always everything works fine so, it’s necessary to find a way to check if your model is correct or not. It’s possible to use the built-in Get Class Definitions webscript to debug. Basically, you can use this webscript to see if an expected content type exists on Alfresco or not. You can also use this webscript to see if an expected content type exists on Alfresco or not. All you have to do is to call the webscript with your class name which in this case myroot:mycontent for me.

http://localhost:8086/alfresco/service/api/classes/myroot_mycontent

Or you can call the same webscript without a class name, in this case webscript will dump every content type that exists on Alfresco.

The response will be something like that:

 
   {
      "name": "labtest:Labtest_content",
      "isAspect": false,
      "isContainer": false,
      "title": "Labtest content model",
      "description": "",
      "parent":
      {
         "name": "cm:content",
         "title": "content",
         "url": "/api/classes/cm_content"
      },
      "defaultAspects":
      {
         "sys:referenceable":
         {
            "name": "sys:referenceable",
            "title": "Referenceable",
            "url": "/api/classes/labtest_Labtest_content/property/sys_referenceable"
         },
         "sys:localized":
         {
            "name": "sys:localized",
            "title": "Translation",
            "url": "/api/classes/labtest_Labtest_content/property/sys_localized"
         },
         "cm:auditable":
         {
            "name": "cm:auditable",
            "title": "Auditable",
            "url": "/api/classes/labtest_Labtest_content/property/cm_auditable"
         }
      },
      "properties":
      {
         "cm:name":
         {
            "name": "cm:name",
            "title": "Name",
            "description": "Name",
            "dataType": "d:text",
            "defaultValue": null,
            "multiValued": false,
            "mandatory": true,
            "enforced": true,
            "protected": false,
            "indexed": true,
            "url": "/api/classes/labtest_Labtest_content/property/cm_name"
         },
         "labtest:Labtest_result_name":
         {
            "name": "labtest:Labtest_result_name",
            "title": "Labtest result name [java uses to get this content]",
            "description": "",
            "dataType": "d:text",
            "defaultValue": null,
            "multiValued": false,
            "mandatory": false,
            "enforced": false,
            "protected": false,
            "indexed": true,
            "url": "/api/classes/labtest_Labtest_content/property/labtest_Labtest_result_name"
         },
         "cm:content":
         {
            "name": "cm:content",
            "title": "Content",
            "description": "Content",
            "dataType": "d:content",
            "defaultValue": null,
            "multiValued": false,
            "mandatory": false,
            "enforced": false,
            "protected": false,
            "indexed": true,
            "url": "/api/classes/labtest_Labtest_content/property/cm_content"
         }
      },
      "associations":
      {
 
         "labtest:labtest_static_components":
         {
            "name": "labtest:labtest_static_components",
            "title": "Labtest static components",
            "url": "/api/classes/labtest_Labtest_content/association/labtest_labtest_static_components",
            "source":
            {
               "class": "labtest:Labtest_content",
 
               "mandatory": true,
               "many": true
            },
            "target":
            {
               "class": "labtest:Labtest_static_component",
 
               "mandatory": false,
               "many": true
            }
         }
         ,
         "labtest:labtest_dynamic_components":
         {
            "name": "labtest:labtest_dynamic_components",
            "title": "Labtest dynamic components",
            "url": "/api/classes/labtest_Labtest_content/association/labtest_labtest_dynamic_components",
            "source":
            {
               "class": "labtest:Labtest_content",
 
               "mandatory": true,
               "many": true
            },
            "target":
            {
               "class": "labtest:Labtest_dynamic_component",
 
               "mandatory": false,
               "many": true
            }
         }
      },
      "childassociations":
      {
 
 
      },
      "url": "/api/classes/labtest_Labtest_content"
   }

Leave a Reply