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?

Adobe MAX 2024

Adobe MAX

The Creativity Conference

Oct 14–16 Miami Beach and online

Adobe MAX 2024

Adobe MAX

The Creativity Conference

Oct 14–16 Miami Beach and online