AEM 6.3 Classic UI issue in overlay functionality error "TypeError: CQ.security.data is undefined" - aem

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

Correct me if I'm wrong but I don't believe the Sling Resource Resolution kicks in when resolving the contents of client libraries.
To extend the OOTB functionality, you need to:
create your own client library with a dependency to the original
be part of the appropriate category
override the functions/objects as you desire
More info: https://docs.adobe.com/docs/en/aem/6-2/develop/extending/customizing-page-authoring-touch.html
The Sling Resource Merger itself seems to be only applicable to Touch UI and I've only ever used it when making changes to the authoring UI (i.e. navigation menus)
The Sling Resource Merger and related methods can only be used with Granite. This also means that it is only appropriate for the touch-optimized UI; in particular overrides defined in this manner are only applicable for the touch-optimized dialog of a component.
source: https://docs.adobe.com/docs/en/aem/6-2/develop/platform/sling-resource-merger.html

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.

Related

MSComctlLib reference/components load with "was not a loaded control class" error

I'm having trouble oppening an project developed in VB6. Some controls attached with MSComctLib class are not loading.
I'm using Windows 7.
In the error analysis the following message appears (without the number of lines):
Class MSComctlLib.ImageList of control ImageList1 was not a loaded control class.
Class MSComctlLib.Toolbar of control Toolbar1 was not a loaded control class.
MSComctlLib.StatusBar class of control sbStatusBar was not a loaded control class.
and then a lot of invalid property names,
Ex:
The property name _ExtentX in ImageList1 is invalid
The property name Buttons in Toolbar1 is invalid
...
According to the guidance of microsoft support site http://support.microsoft.com/kb/896559, an update would be the solution http://www.microsoft.com/en-us/download/details.aspx?id=10019
I tried running the executable VisualBasic6-KB896559-v1-ENU
but I still have the same error when opening the project.
Could someone tell me how to solve it?
Thanks in advance!
If you don't have the common controls selected in your project, but the controls are on a form, then you'll receive these errors when you try to load the project (or add a pre-existing form to a project that doesn't have the component selected).
On the VB6 menu, select Project-Components. Scroll down to Microsoft Windows Common Controls 6.0 (if you have a service pack installed, then the SP level will usually be at the end of the library name). Select that component, click Ok. Save the project, and then reload the project.
If this is the source of your issue, you should now be able to load those forms that have a reference into the common controls.

AEM Resources missing sling:resourceType

My content repository over a 2 year span has accumulated many obsolete component resources. The component nodes are missing sling:resourceType property. These component nodes looks like this:
Due to such bad resources, the page is throwing below exception:
14.09.2017 12:33:21.079 *ERROR* [172.21.142.98 [1505392399461] GET /content/xx/en_ca/home.html HTTP/1.1]
org.apache.sling.servlets.get.impl.DefaultGetServlet No renderer for extension html, cannot render resource Paragraph,
path=/content/xx/en_ca/home/jcr:content/par-sidebar/contentbox_c540/rightRailContentPar/contentbox_f1fd,
type=nt:unstructured, cssClass=default, column=0/0, diffInfo=[null],
resource=[JcrNodeResource, type=nt:unstructured, superType=null,
path=/content/xx/en_ca/home/jcr:content/par-sidebar/contentbox_c540/rightRailContentPar/contentbox_f1fd]
Further digging I found someone had written a tool to cleanup such obsolete resources.
While it is easy to query and cleanup such invalid nodes, my question how did such resources end up in repository? I tried to simulate by moving components, deleting components from page but in vain. There is no custom scripting that is removing sling:resourceType. Is this issue faced only by me? Or is there any product issue/usecase that can clear the type of resource?
I am running AEM 6.0 SP2.
Seems this is a known product bug to be fixed for future AEM. This is the response I got from daycare ticket:
There are several known issues related to sling:resourceType in AEM 6.0 SP2 and later but the one that I could find nearest to the scenario you have mentioned occurs when the components are copied and pasted.
It removes/breaks the sling:resourceType property. This issue is covered under the internal id -CQ-4212306, the fix for which will be a part of the future version of AEM.

Umbraco with Windsor Castle error after adding nuPickers plugin

With an existing Umbraco site running fine we added the nuPickers plugin which does not seem to like Castle. In the browser console we are seeing a lot of 404 / 500 errors being generated for the embedded resources within the plugin. (The plugin is a single DLL with css and js files embedded in it.)
The site continues running fine (back and front ends), except for the plugin.
The Event log is showing: "No component for supporting the service nuPickers.EmbeddedResourceController was found"
We have tried route.ignoreroute in our route config, and also adding a handler in web.config, both unsuccessfully, as we do not think the resource requests should be getting to castle?
Any help or pointers gratefully accepted!
Just in case anyone comes across this ticket, we 'solved' this by
Getting all of the embedded resources, (html, js & css - not the classes)
Physically placing them inside the App_plugins folder in the correct structure (as they were being requested),
Renaming the js and css files (by adding the .nu after the file
extension), and,
Adding the following mime types into the web.config
mimeMap fileExtension=".css.nu" mimeType="text/css"
mimeMap fileExtension=".js.nu" mimeType="application/javascript"
Then, everything seems to work - but there MUST be a better solution, surely?

Adding oembed plugin to ckeditor

I used ckBuilder to create my own custom editor with certain plugins.I chose the oembed plugin, followed the installation procedures but I kept getting a weird error.
Error:
Uncaught TypeError: Cannot read property 'button' of undefined
Are there other configurations that need to be adjusted before using it?!
Turns out if you modify the ckeditor multiple times, you need to clear your cache in order to reflect any new plugins.

Unstructured When copy and paste a content element in Typo3 neos

I am using Typo3 neos version 1.0.2 Beta
When copy content element and paste it in other content area
It will not page and instead it shows error and the content element with name unstructured is created in node tree.
ExtDirect error: Uncaught exception #1301610453 (ref 20140430165908d46739) - Could not resolve a route and its corresponding URI for the given parameters. This may be due to referring to a not existing package / controller / action while building a link or URI. Refer to log and check the backtrace for more details.
PLease let me know the issue.
Thanks in advance.
There were known issues with copy/paste functionality in Neos 1.0.x.
Please use Neos 1.1 (currently 1.1.0-beta2) where this issue seems to be fixed.