1 Reply Latest reply on Jan 1, 2013 3:57 PM by Bayani Portier

    Uncaught TypeError: Cannot call method 'renderStoreProperty' of undefined

    Bayani Portier Level 1



      I'm using CQ5.5 with SP2.


      I am going through the tutorial on how to create and register a new xtype.


      I have followed the steps, and am getting the following error when I try to view the page:


      Uncaught TypeError: Cannot call method 'renderStoreProperty' of undefined


      I have added the following:


      /apps/training/widgets ( jcr:primaryType(Name)=cq:ClientLibraryFolder, categories(String[])=training.widgets, dependencies(String[])=cq.widgets, sling:resourceType(String[])=widgets/clientlib )

      /apps/training/widgets/files (jcr:primaryType(Name)=nt:folder)

      /apps/training/widgets/files/training.js (content below)






      // Create the namespace

      Training = {};

      // Create a new class based on existing CompositeField

      Training.Selection = CQ.Ext.extend(CQ.form.CompositeField, {

          text: "default text",

          constructor : function(config){

              if (config.text != null) this.text = config.text;

              var defaults = {

                      height: "auto",

                      border: false,

                      style: "padding:0;margin-bottom:0;",

                      layoutConfig: {

                          labelSeparator: CQ.themes.Dialog.LABEL_SEPARATOR


                      defaults: {

                          msgTarget: CQ.themes.Dialog.MSG_TARGET



              CQ.Util.applyDefaults(config, defaults);

              Training.Selection.superclass.constructor.call(this, config);

              this.selectionForm = new CQ.Ext.form.TimeField({

                  name: this.name,

                  hideLabel: true,

                  anchor: "100%",

                  minValue: '8:00am',

                  maxValue: '6:00pm',


                  intDate: new Date(),

                  validateValue: function(value) {return true}




          processRecord: function(record, path){




      CQ.Ext.reg("trainingSelection", Training.Selection);


      I have included headlibs.jsp for an extension of page as per the tutorial, contianing:

      <cq:includeClientLib js="training.widgets"/>


      When debugging the /etc/clientlibs/foundation/librarymanager/CQClientLibraryManager.js file, the path seems to be correct, pointing to:



      unfortunately, when I try to hit

      http://localhost:4502/apps/training/widgets.js, I get a 404 No resource found error.


      This leads me to believe that I have something wrong with the /apps/training/widgets node, as it is not rendering the .js includes.


      Any help would be greatly appreciated.