Missing metadata node on Assets breaks user interface

Issue

When performing some searches in AEM Assets Touch user interface, users observe the following error in the error.log [1].

09.12.2016 08: 51: 26. 989 *ERROR* [10. 21. 11.46 [1481302285814] GET /mnt/overlay/dam/gui/content/commons/sidepanels, j avax. jcr. PathNotfoundException: jcr: content/metadata 

at org. apache. jackrabbit.oak. jcr. session .Nodeimpl$7 .perform(Nodelmpl. java: 540) 

at org. apache. jackrabbit.oak. jcr. session .Nodelmpl$7 .perform(Nodelmpl. java: 534) 

at org. apache.jackrabbit. oak. j er. delegate. 5essionDelegate. perform(5essionDelegate. java: 200) 

at org. apache.jackrabbit. oak. j er. session. Itemlmpl. perform(Itemlmpl. j ava: 112) 

at org. apache.jackrabbit. oak. j er. session. Nodelmpl. getNode (Nodelmpl. j ava: 534) 

at com. day. cq. dam. c01M1ons. util. UIHelper. get Ti tle(UIHelper. java: 93) 

at org. apache. jsp. libs. dam. gui. components. admin. childasset. childasset_jsp ._j spService( childasset_j sp. java: 376) at org. apache. sling. scripting. j sp. jasper. runtime. HttpJspBase. service(HttpJspBase. java: 70) 

at javax. servlet. http.HttpServlet.service(HttpServlet .java: 725) 

at org. apache. sling. scripting. j sp. jasper. servlet. JspServletWrapper. service( J spServletWrapper. java: 502) 

at org. apache. sling. scripting. j sp. jasper. servlet. JspServletWrapper. service( J spServletWrapper. java : 449) 

at org. apache. sling. scripting. j sp. J spSc riptEngineFactory. callJsp( J spScriptEngineFactory. java: 284) 

at org. apache. sling. scripting. j sp. J spSc riptEngineFactory. access$100(JspScriptEngineFactory. java: 102) 

at org. apache. sling. scripting. j sp. J spSc riptEngineFactory$J spScriptEngine. eval( JspScriptEngineFactory. java: 536) at org. apache. sling. scripting. core. impl. Defaul tSlingScript. call(Defaul tSlingScript. java: 361) 

at org. apache. sling. scripting. core. impl. Defaul tSlingScript. eval(Defaul tSlingScript. java: 171) 

at org. apache. sling. scripting. core. impl. Defaul tSlingScript. service(DefaultSlingScript. java: 463) 

at org. apache. sling. engine. impl. request. Requestoata. service( RequestData. j ava: 547) 

at org. apache. sling. engine. impl. filter. SlingComponentFil terChain. render(SlingComponentFil terChain. java: 44) 

at org. apache. sling. engine. impl. filter. AbstractSl ingFil terChain. dofil ter(AbstractSlingFil terChain. java: 77) 

at com. day. cq. wcm. core. impl. WO'OeveloperModeFil ter. do Fil ter(WCMDeveloperModeFil ter. java: 117) 

at org. apache. sling. engine. impl. filter. AbstractSlingfil terChain. do Fil ter(AbstractSlingFil terChain. java: 68) 

at com. day. cq. wcm. core. impl. WGOebugFil ter. do Fil ter(WCMOebugfi 1 ter. java: 146) 

at org. apache. sling. engine. impl. filter. AbstractSlingFil terChain. do Fil ter(AbstractSlingFil terChain. java: 68) 

at com. day. cq. wcm. core. impl. WCMComponentFil ter. fil terRootinclude (WCMComponentFil ter. j ava: 371) 

at com. day. cq. wcm. core. impl. WCMComponentfil ter. do Fil ter(WCMComponentFil ter. java: 171) 

at org. apache. sling. engine. impl. filter. AbstractSlingfil terChain. do Fil ter(AbstractSlingFil terChain. java: 68) 

at com. day. cq. personalization. impl. TargetComponentFilter. doFilter(TargetComponentfilter. java: 96) 

at org. apache. sling. engine. impl. filter. AbstractSl ingfil terChain. do Fil ter(AbstractSlingFil terChain. java: 68) 

at org. apache. sling. engine. impl. SlingRequestProcessorimpl. processComponent(SlingRequestProcessorimpl. java: 282) 

Cause

Some assets have missing metadata node, which breaks the AEM Assets user interface.

Resolution

To fix this issue, run a script that readds the missing metadata nodes and reruns the DAM Update Asset workflow. 

  1. Go to http://aem-hosl:/port/crx/packmgrfindex.jsp, and log in as admin. 

     

  2. Upload the package zip file from step 1, and install it. 

     

  3. Go to http://aem-hosl:port/apps/tools/components/fixAssets/run.html. 

     

  4. Enter the desired path under /contenVdam and update the Workflow Model path if you have a custom DAM Update Asset workflow model.

  5. Click "start". If it starts successfully, then a message "running" [1] shows under the "start" button.

  6. Output is logged to the error.log file as follows:

    09.02.2017 16:35:51.186 *INFO* [Thread-274] org.apache.jsp.apps.tools.components.fixAssets.POST_jsp$FixAssetsThread Running assets fix.
    09.02.2017 16:35:51.289 *INFO* [Thread-274] org.apache.jsp.apps.tools.components.fixAssets.POST_jsp$FixAssetsThread Traversing folder: /content/dam/geometrixx
    09.02.2017 16:35:51.390 *INFO* [Thread-274] org.apache.jsp.apps.tools.components.fixAssets.POST_jsp$FixAssetsThread Traversing folder: /content/dam/geometrixx/portraits
    09.02.2017 16:36:05.091 *INFO* [Thread-274] org.apache.jsp.apps.tools.components.fixAssets.POST_jsp$FixAssetsThread fixAssets completed, total time: 13905ms
    

    [1] Script "running" 

    Fix AEM Assets UI Script

 Adobe

Get help faster and easier

New user?