Thanks a lot, it works now ! FYI, the dummy file is also missing from ThemeGray...
Regards, Cédric Durmont 2012/1/17 Leonardo Uribe <lu4...@gmail.com>: > Hi > > It seems "ThemeMiniBlack" does not have the dummy file ;j that helps > to split the request path. The solution is simple, just add an empty > file named ;j under > META-INF/resources/oam.custom.navmenu.jscookmenu.ThemeMiniBlack > inside tomahawk jar, or just extract the theme, and use styleLibrary, > imageLibrary and javascriptLibrary to point to a new location that > includes that file. If you look other themes the file is there. Thanks > for notice it. > > regards, > > Leonardo Uribe > > 2012/1/17 Cédric Durmont <cdurm...@gmail.com>: >> Hello, >> >> Here's my setup : >> - Myfaces 2.1.5 >> - Trinidad 2.0.0 / 2.0.2-SNAPSHOT (updated yesterday) >> - Tomahawk .1.1.11, core20 branch (also updated yesterday) >> >> I have a simple test page with a facelets template using Tomahawk's >> JsCookMenu : >> [...] >> <trh:body styleClass="#{styleBody}"> >> <tr:form usesUpload="#{upload}"> >> <t:jscookMenu theme="ThemeMiniBlack" layout="hbr"> >> <t:navigationMenuItem itemLabel="whatever"> >> [...] >> >> (note that the same page runs fine in another application, which uses >> a JSF1.2 setup) >> >> Upon accessing the page, I get this error : >> >> java.lang.NullPointerException >> >> viewId=/test.xhtml >> location=C:\devjava\workspace\authentic\src\main\webapp\test.xhtml >> phaseId=RENDER_RESPONSE(6) >> java.lang.NullPointerException >> at >> org.apache.myfaces.custom.navmenu.jscookmenu.HtmlJSCookMenuRenderer.addThemeSpecificResourcesWithJSF2ResourceAPI(HtmlJSCookMenuRenderer.java:554) >> at >> org.apache.myfaces.custom.navmenu.jscookmenu.HtmlJSCookMenuRenderer.addResourcesToHeaderWithJSF2ResourceAPI(HtmlJSCookMenuRenderer.java:464) >> at >> org.apache.myfaces.custom.navmenu.jscookmenu.HtmlJSCookMenuRenderer.processEvent(HtmlJSCookMenuRenderer.java:103) >> at >> javax.faces.component.UIComponent$EventListenerWrapper.processEvent(UIComponent.java:1522) >> at javax.faces.event.SystemEvent.processListener(SystemEvent.java:43) >> at >> org.apache.myfaces.application.ApplicationImpl._traverseListenerList(ApplicationImpl.java:2250) >> at >> org.apache.myfaces.application.ApplicationImpl.publishEvent(ApplicationImpl.java:558) >> at >> org.apache.myfaces.tomahawk.application.ResourceViewHandlerWrapper._publishPreRenderViewAddResourceEvent(ResourceViewHandlerWrapper.java:98) >> at >> org.apache.myfaces.tomahawk.application.ResourceViewHandlerWrapper._publishPreRenderViewAddResourceEvent(ResourceViewHandlerWrapper.java:105) >> at >> org.apache.myfaces.tomahawk.application.ResourceViewHandlerWrapper._publishPreRenderViewAddResourceEvent(ResourceViewHandlerWrapper.java:105) >> at >> org.apache.myfaces.tomahawk.application.ResourceViewHandlerWrapper._publishPreRenderViewAddResourceEvent(ResourceViewHandlerWrapper.java:105) >> at >> org.apache.myfaces.tomahawk.application.ResourceViewHandlerWrapper._publishPreRenderViewAddResourceEvent(ResourceViewHandlerWrapper.java:105) >> at >> org.apache.myfaces.tomahawk.application.ResourceViewHandlerWrapper.renderView(ResourceViewHandlerWrapper.java:92) >> at >> javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:59) >> at >> org.apache.myfaces.trinidadinternal.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:165) >> at >> org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:115) >> at >> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:241) >> at javax.faces.webapp.FacesServlet.service(FacesServlet.java:199) >> at >> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511) >> at >> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1221) >> at >> org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:294) >> at >> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212) >> at >> org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:293) >> at >> org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:199) >> at >> org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92) >> at >> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212) >> at >> org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:357) >> at >> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212) >> at >> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:399) >> at >> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) >> at >> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182) >> at >> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766) >> at >> org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:450) >> at >> org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230) >> at >> org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114) >> at >> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) >> at org.mortbay.jetty.Server.handle(Server.java:326) >> at >> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542) >> at >> org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:928) >> at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:549) >> at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212) >> at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) >> at >> org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410) >> at >> org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582) >> >> >> HtmlJSCookMenuRenderer.java contains this: >> >> 553: Resource resource = >> context.getApplication().getResourceHandler().createResource(";j","oam.custom.navmenu.jscookmenu."+themeName); >> 554: buf.append(resource.getRequestPath()); >> >> As you may guess, resource on line 554 is null. themeName is >> "ThemeMiniBlack". >> I'm not familiar with that code, but I did some debugging, and : >> - createRessource tries to determine the mime type of ";j", which -of >> course- fails >> - fallback is handled by a class related to CAPTCHAs (it was >> CAPTCHAResource or CAPTCHAResourceHandlerWrapper, can't remember) >> >> Could it be something in my config files ? Or is there something >> broken in Tomahawk's resource handling ? >> >> Thanks, >> Cedric Durmont