-
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
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)