Details
-
Bug
-
Resolution: Done
-
Major
-
WCM 5.0 SP2
-
None
-
Sp2 17448
Description
I have a category tree and some test user. I granted some permission for one of these user to 1) access to the administration (cf role at the site level) + 2) access to the category screen (cf role at the server level). Then, in my category sitemap, I granted to him some right on certain sub-categories only - not on the root categry (RWA - on a branch and RW on another branch at the 2nd level).
When accessing to the category tree, this generates a NPE and a "please waiting" which never finished for my end-user (cf screenshot).
We should check if the user has some permissions on the category tree. If this is the case, we should at least display the full path from root (perhaps in grey mode only). If he only has access to a single sub-tree, we could perhaps directly redirect him to this sub-tree (but what if, like in my test scenario, he access to two categories at the 2nd level?). In all the cases we shouldnt' generate a NPE
2007-06-07 13:49:50,281: [org.jahia.bin.Jahia] INFO - Processed [/jahia/Jahia/engineName/categoryEdit/home] esi=[not cached] user=[john] ip=[127.0.0.1] in [406ms]
2007-06-07 13:49:58,187: [org.jahia.ajax.categories.GetCategoryChildren] ERROR - Unable to get Category Children
java.lang.NullPointerException
at org.jahia.ajax.categories.AbstractCategoryAction.attachCategoryforAdminToResp(AbstractCategoryAction.java:132)
at org.jahia.ajax.categories.GetCategoryChildren.execute(GetCategoryChildren.java:118)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226)
at org.jahia.bin.JahiaRequestProcessor.process(JahiaRequestProcessor.java:82)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.jahia.bin.filters.esi.ESIFilter.doFilter(ESIFilter.java:110)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:619)