Expand my Community achievements bar.

Don’t miss the AEM Skill Exchange in SF on Nov 14—hear from industry leaders, learn best practices, and enhance your AEM strategy with practical tips.
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.