I installed a clean version of Jahia 4.0.5 (we are still using that version on
our production server) and changed the JVM to Sun's 1.4.2_13 (instead of
Jrockit).
Still gives the same error :
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at
org.jahia.services.usermanager.JahiaGroupManagerRoutingService.routeCall(JahiaGroupManagerRoutingService.java:1119)
at
org.jahia.services.usermanager.JahiaGroupManagerRoutingService.searchGroups(JahiaGroupManagerRoutingService.java:762)
at
org.jahia.data.viewhelper.principal.PrincipalViewHelper.getGroupSearchResult(PrincipalViewHelper.java:385)
at
org.jahia.admin.users.ManageGroups.displayGroupList(ManageGroups.java:255)
at
org.jahia.admin.users.ManageGroups.userRequestDispatcher(ManageGroups.java:144)
at org.jahia.admin.users.ManageGroups.<init>(ManageGroups.java:121)
at
org.jahia.bin.JahiaAdministration.userRequestDispatcher(JahiaAdministration.java:399)
at
org.jahia.bin.JahiaAdministration.service(JahiaAdministration.java:255)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:200)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:146)
at com.jamonapi.JAMonFilter.doFilter(JAMonFilter.java:113)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:166)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:146)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:209)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:144)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2358)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:118)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:116)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:127)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at
org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:152)
at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:300)
at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:374)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:743)
at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:675)
at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
at java.lang.Thread.run(Thread.java:534)
Caused by: java.lang.NullPointerException
at
org.jahia.services.usermanager.JahiaGroupManagerLDAPProvider.getGroupMembers(JahiaGroupManagerLDAPProvider.java:1417)
at
org.jahia.services.usermanager.JahiaGroupManagerLDAPProvider.ldapToJahiaGroup(JahiaGroupManagerLDAPProvider.java:1066)
at
org.jahia.services.usermanager.JahiaGroupManagerLDAPProvider.searchGroups(JahiaGroupManagerLDAPProvider.java:694)
... 47 more
I downloaded the source code and added some more debugging output to see what
information I'm getting from the LDAP server. For example from the class
JahiaGroupManagerLDAPProvider within the function getGroupMembers (since the
error occurs there) I'm checking if I have some valid members received from the
LDAP server.
String userKey = (String)answer.next ();
logger.debug ("userKey : "+userKey);
>From the catalina.out log file I can see this :
2007-01-25 17:15:12,881 [TP-Processor1] DEBUG - userKey : =
CN=ABC1,OU=IDUL,OU=Comptes,DC=ulaval,DC=ca
It is the correct first member defined in the group, and the user does exist in
the LDAP with this DN.
The call : user = getUserManagerProvider().lookupUserFromDN(userKey);
Never seems to work...which is quite strange. Any idea why? Could it be JVM
related?