Expand my Community achievements bar.

SOLVED

AEM 6.3 Classic UI issue in overlay functionality error “TypeError: CQ.security.data is undefined”

Avatar

Level 2

In AEM 6.3 classic UI, When i am trying to overlay

/libs/cq/security/widgets/source/widgets/security/data/AclStore.js to

/apps/cq/security/widgets/source/widgets/security/data/AclStore.js

the following error is coming TypeError: CQ.security.data is undefined CQ.security.data.UserAclStore = CQ.Ext.extend(CQ.security.data.AclStore,{

Like this we are getting error for all the overlay js has issue in AEM 6.3.

Screen Shot 2017-08-08 at 9.02.49 PM.png

1 Accepted Solution

Avatar

Correct answer by
Level 2

I have resolved the issue using the below logic. Clientlibs js file creation logic is differed in AEM 6.3.

In AEM 6.1 Clientlibs js creation is binding the overlaid files from /apps/cq/security/widgets/source/widgets/js.txt and non overlaid files from /libs/cq/security/widgets/source/widgets/js.txt

In AEM 6.3 Clientlibs js creation is binding files from /apps/cq/security/widgets/source/widgets/js.txt only.

Because of this non overlaid files (CQ.security.js) are not binding into clientlibs js(widgets.js) and its gives the below error

TypeError: CQ.security.data is undefined CQ.security.data.UserAclStore = CQ.Ext.extend(CQ.security.data.AclStore,{

So i have merged the js.txt of /libs/cq/security/widgets/source/widgets/js.txt into /apps/cq/security/widgets/source/widgets/js.txt and it's resolved the issue.

Please provide your answer if there is any other way to resolve this issue.

View solution in original post

3 Replies

Avatar

Level 2

So are you saying everything works fine in Classic when it's not overlaid, but you are getting the error when overlaying /apps/cq/security/widgets/source/widgets/security/data/AclStore.js without any modifications?

Avatar

Correct answer by
Level 2

I have resolved the issue using the below logic. Clientlibs js file creation logic is differed in AEM 6.3.

In AEM 6.1 Clientlibs js creation is binding the overlaid files from /apps/cq/security/widgets/source/widgets/js.txt and non overlaid files from /libs/cq/security/widgets/source/widgets/js.txt

In AEM 6.3 Clientlibs js creation is binding files from /apps/cq/security/widgets/source/widgets/js.txt only.

Because of this non overlaid files (CQ.security.js) are not binding into clientlibs js(widgets.js) and its gives the below error

TypeError: CQ.security.data is undefined CQ.security.data.UserAclStore = CQ.Ext.extend(CQ.security.data.AclStore,{

So i have merged the js.txt of /libs/cq/security/widgets/source/widgets/js.txt into /apps/cq/security/widgets/source/widgets/js.txt and it's resolved the issue.

Please provide your answer if there is any other way to resolve this issue.

Avatar

Level 2

Yes. I have tried the above approach to resolve the issue.