But can't you test your LDAP connexion on a fresh Jahia 4.0.6 installation, make some basic tests in your environnement with the default templates and see if the problem was solved meanwhile. Then you may decide of upgrading or not (or backporting the LDAP modifications)...

Else what do you want us to make for you? Install your whole environement we do not have to make some tests on a LDAP we do not have? Something looks like quite strange to me in your email :-(

Cheers,
Stéphane

At 12:56 08/07/2005, you wrote:
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.












- -- --- -----=[ scroisier at jahia dot com ]=---- --- -- -
CEO - Jahia Ltd, 45 rue de la gare, 1260 Nyon (Switzerland)
Jahia : The Java Unified Web Platform
www.jahia.org - The community and product web site
www.jahia.com - Our commercial services company
www.collaborativesource.org - The Collaborative Source Initiative

Reply via email to