Re: LDAP access et modification problem
Cédric REYMANN <[email protected]>
| Newsgroups | gmane.comp.cms.jahia.template |
|---|---|
| Organization | Actimage |
| Message-ID | <[email protected]> |
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.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>
>>>
>>
>>
>
>
>