Uploaded image for project: 'Nuxeo Platform'
  1. Nuxeo Platform
  2. NXP-18851

Fix facelet error on Studio project uninstall

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Minor
    • Resolution: Won't Fix
    • Affects Version/s: 8.1-SNAPSHOT
    • Fix Version/s: 11.2
    • Component/s: Seam / JSF UI

      Description

      The following error can happen when uninstalling a Studio project from the admin center and then navigating to the "workspaces" tab (linked to hot reload of the nuxeo.war files content):

      2016-01-20 17:47:15,695 ERROR [http-bio-0.0.0.0-8080-exec-3] [org.nuxeo.ecm.platform.web.common.exceptionhandling.DefaultNuxeoExceptionHandler] java.io.FileNotFoundException: jndi:/localhost/nuxeo/studio_tabs/studio_tab_testGrid.xhtml
              at org.apache.naming.resources.DirContextURLConnection.getInputStream(DirContextURLConnection.java:384)
              at com.sun.faces.util.Util.getLastModified(Util.java:1118)
              at org.nuxeo.ecm.platform.ui.web.facelets.vendor.DefaultFaceletCache$ExpiryChecker.isExpired(DefaultFaceletCache.java:301)
              at org.nuxeo.ecm.platform.ui.web.facelets.vendor.DefaultFaceletCache$ExpiryChecker.isExpired(DefaultFaceletCache.java:293)
              at com.sun.faces.util.ExpiringConcurrentCache.get(ExpiringConcurrentCache.java:120)
              at org.nuxeo.ecm.platform.ui.web.facelets.vendor.DefaultFaceletCache.getFacelet(DefaultFaceletCache.java:140)
              at org.nuxeo.ecm.platform.ui.web.facelets.vendor.DefaultFaceletCache.getFacelet(DefaultFaceletCache.java:76)
              at com.sun.faces.facelets.impl.DefaultFaceletFactory.getFacelet(DefaultFaceletFactory.java:295)
              at com.sun.faces.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:370)
              at com.sun.faces.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:350)
              at com.sun.faces.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:199)
              at com.sun.faces.facelets.tag.ui.IncludeHandler.apply(IncludeHandler.java:124)
              at com.sun.faces.facelets.tag.jstl.core.ChooseWhenHandler.apply(ChooseWhenHandler.java:83)
              at com.sun.faces.facelets.tag.jstl.core.ChooseHandler.apply(ChooseHandler.java:105)
              at com.sun.faces.facelets.tag.jstl.core.IfHandler.apply(IfHandler.java:96)
              at com.sun.faces.facelets.tag.jstl.core.IfHandler.apply(IfHandler.java:96)
              at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:95)
              at com.sun.faces.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:194)
              at com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:93)
              at com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:87)
              at com.sun.faces.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:312)
              at com.sun.faces.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:371)
      
      

      There are already mechanisms in place to avoid a page crash when a facelet is not found => adapt facelet cache code to handle this use case too.

      Also, the referenced template should not be visible in the page anymore, so maybe there's another hotreload issue on tabs content (to check once page crash is fixed)

        Attachments

          Activity

            People

            • Assignee:
              atchertchian Anahide Tchertchian
              Reporter:
              atchertchian Anahide Tchertchian
              Participants:
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: