Hi,
The problem is that we have developped a lot of specific stuff. A
migration would mean a lot of testing and code rewrite, as we made for
the 4.0.4 -> 4.0.5 migration.
If we are not sure that the migration will solve our problems, we won't
make it.
Regards,
Cédric
Serge Huber a écrit :
Hi Cédric,
May I suggest you test with the latest stable version of Jahia, to see
if you still have the problem, because there were more LDAP
improvements after 4.0.5.
Regards,
Serge Huber.
Cédric REYMANN wrote:
Hi,
Serge Huber a écrit :
Hi Cédric,
The problem is that Jahia has no way of knowing that you added user
into the LDAP.
OK but as flushing de Jahia caches isn't enough, when we flush all
caches, the next connections are very awfully slow, the site is then
unusable for several minutes.
In Jahia 4.0.4, before the migration to 4.0.5, flushing the LDAP
caches was OK. What change has caused this in the new version ?
What is stranger is that it crashes on the following line :
283: engineMap.put (ENGINE_URL_PARAM,
jParams.composePageUrl (loginPage.getID ()));
This is probably because loginPage is null, but it shouldn't be. Do
you have a strange configuration with home pages ?
In fact, all the rights were lost, maybe during the migration : the
users lost access to their home page. But then, why was this OK after
a cache flush ?
Regards,
Serge Huber.
Cédric REYMANN wrote:
Thanks for your reply.
Serge Huber a écrit :
Hi Cédric,
Which version of Jahia are you using ? In 4.0.5 we added a lot of
caches in the LDAP implementation, so you shouldn't be seeing this
problem anymore.
We use the version 4.0.5 (after migrating from 4.0.4).
For instance, after adding a user in the LDAP, the login of this
user crashes (see the error below). But after flushing ALL the
caches, it seems to work.
Your Jahia Server has generated an error. Please review the details
below for additional information:
Error : null
URL : http://abw0.astron.biz/cyprion/Jahia/engineName/login/pid/1
Method : POST
Remote host : null Remote Address : 192.168.102.100
Request headers : x-forwarded-host:extranet.astron.biz
x-forwarded-for:192.168.204.143
accept-encoding:gzip, deflate
referer:https://extranet.astron.biz/cyprion/Jahia/engineName/login/pid/1?matrix=1120124401163&matrix=2111
connection:close
cookie:JSESSIONID=83B1C521FE80CA034B74F6545FBFF94A
content-type:application/x-www-form-urlencoded
content-length:45
x-forwarded-server:extranet.astron.biz
cache-control:no-cache
host:abw0.astron.biz
accept-language:en-us
user-agent:Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0;
.NET CLR 1.1.4322)
accept:image/gif, image/x-xbitmap, image/jpeg, image/pjpeg,
application/vnd.ms-excel, application/vnd.ms-powerpoint,
application/msword, application/x-shockwave-flash, */*
Stack trace : Cause level : 0 (level 0 is the most precise
exception) java.lang.NullPointerException
at
org.jahia.engines.login.Login_Engine.processScreen(Login_Engine.java:283)
at
org.jahia.engines.login.Login_Engine.handleActions(Login_Engine.java:126)
at
org.jahia.operations.OperationManager.handleOperations(OperationManager.java:279)
at org.jahia.bin.JahiaAction.execute(JahiaAction.java:50)
at
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
at
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
at
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
at org.jahia.bin.Jahia.process(Jahia.java:1522)
at org.jahia.bin.Jahia.service(Jahia.java:846)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2416)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at
org.apache.ajp.tomcat4.Ajp13Processor.process(Ajp13Processor.java:466)
at
org.apache.ajp.tomcat4.Ajp13Processor.run(Ajp13Processor.java:585)
at java.lang.Thread.run(Thread.java:534)
Cédric REYMANN wrote:
Hi,
I have two problems with the LDAP capabilities of Jahia.
The first one is that Jahia gather all the information from the
LDAP server for each visited page. As if the cache weren't used.
By the way, these LDAP requests are very slow if we compare them
to another LDAP client for which it works fine. What can we do ?
The second point is that when we make a modification to LDAP
users or group, this modification isn't seen by Jahia. This is
strange regarding the first problem. And flushing the LDAP caches
isn't sufficient : after the flush of all caches, it works fine.
The question is, how does the LDAP cache work and is it possible
to make the cache expire sometime ? So that the guy who modify
the LDAP doesn't need to refer to the Jahia administrator.
You can expire the cache manually through the administration
("Server and cache status"). You could also programmatically
expire the cache by flusing the corresponding cache. For the
moment there is no time-based expiration possible but will be
possible in future versions of Jahia (as we will be making the
cache implementation pluggeable).
Regards,
Serge Huber.