AnsweredAssumed Answered

Labs 3 Share -- users site population fails using AD auth

Question asked by ofrxnz on Nov 12, 2008
Latest reply on May 8, 2010 by jeshurun
In Labs 3 (A, B & C) I have had a recurring issue in Share.

When using Alfresco's internal authentication mechanism and a non-admin user logs in, everything works fine and Share is able to populate the Sites a user is part of.  Also, on the "Sites" page the "Join and Leave" buttons work.

When I enable LDAP authentication against an Active Directory server, The user accounts work fine In Alfresco.  When I go into Share with a non-admin account, The My-Sites dashboard widget Explodes and does not populate sites (or just does not render).   Also, the "sites" page yields the following error

Failed to retrieve site membership information for current user, Join and Leave buttons will not be available

On a moderately hacked together form of Labs 3c i receive the trace further down the page.  This is the same error i receive when using the Lab 3B full windows install with only ldap configured

Does anyone know if this is an Active Directory or LDAP configuration issue or a bug in the code

Here is the trace

09:48:46,214 ERROR [freemarker.runtime] 

Expression sites is undefined on line 4, column 11 in org/alfresco/components/dashlets/my-sites.get.html.ftl.
The problematic instruction:
———-
==> list sites as site [on line 4, column 4 in org/alfresco/components/dashlets/my-sites.get.html.ftl]
———-

Java backtrace for programmers:
———-
freemarker.core.InvalidReferenceException: Expression sites is undefined on line 4, column 11 in org/alfresco/components/dashlets/my-sites.get.html.ftl.
   at freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:124)
   at freemarker.core.IteratorBlock.accept(IteratorBlock.java:100)
   at freemarker.core.Environment.visit(Environment.java:208)
   at freemarker.core.MixedContent.accept(MixedContent.java:92)
   at freemarker.core.Environment.visit(Environment.java:208)
   at freemarker.core.Environment.process(Environment.java:188)
   at freemarker.template.Template.process(Template.java:237)
   at org.alfresco.web.scripts.PresentationTemplateProcessor.process(PresentationTemplateProcessor.java:146)
   at org.alfresco.web.scripts.AbstractWebScript.renderTemplate(AbstractWebScript.java:504)
   at org.alfresco.web.scripts.DeclarativeWebScript.renderFormatTemplate(DeclarativeWebScript.java:252)
   at org.alfresco.web.scripts.DeclarativeWebScript.execute(DeclarativeWebScript.java:145)
   at org.alfresco.web.scripts.PresentationContainer.executeScript(PresentationContainer.java:53)
   at org.alfresco.web.scripts.LocalWebScriptRuntimeContainer.executeScript(LocalWebScriptRuntimeContainer.java:186)
   at org.alfresco.web.scripts.AbstractRuntime.executeScript(AbstractRuntime.java:240)
   at org.alfresco.web.scripts.AbstractRuntime.executeScript(AbstractRuntime.java:139)
   at org.alfresco.web.scripts.WebScriptRenderer.execute(WebScriptRenderer.java:272)
   at org.alfresco.web.site.RenderUtil.renderComponent(RenderUtil.java:463)
   at org.alfresco.web.site.PresentationUtil.renderComponent(PresentationUtil.java:202)
   at org.alfresco.web.site.taglib.ComponentTag.doStartTag(ComponentTag.java:100)
   at org.alfresco.tools.TagUtil.execute(TagUtil.java:143)
   at org.alfresco.tools.TagUtil.execute(TagUtil.java:79)
   at org.alfresco.web.scripts.FreemarkerTagSupportDirective.executeTag(FreemarkerTagSupportDirective.java:95)
   at org.alfresco.web.scripts.FreemarkerTagSupportDirective.executeTag(FreemarkerTagSupportDirective.java:73)
   at org.alfresco.web.scripts.ComponentFreemarkerTagDirective.execute(ComponentFreemarkerTagDirective.java:118)
   at freemarker.core.Environment.visit(Environment.java:261)
   at freemarker.core.UnifiedCall.accept(UnifiedCall.java:126)
   at freemarker.core.Environment.visit(Environment.java:208)
   at freemarker.core.MixedContent.accept(MixedContent.java:92)
   at freemarker.core.Environment.visit(Environment.java:208)
   at freemarker.core.Environment.process(Environment.java:188)
   at freemarker.template.Template.process(Template.java:237)
   at org.alfresco.web.scripts.PresentationTemplateProcessor.process(PresentationTemplateProcessor.java:146)
   at org.alfresco.web.scripts.FreemarkerRenderer.execute(FreemarkerRenderer.java:219)
   at org.alfresco.web.site.RenderUtil.executeRenderer(RenderUtil.java:877)
   at org.alfresco.web.site.RenderUtil.executeRenderer(RenderUtil.java:854)
   at org.alfresco.web.site.RenderUtil.renderRegion(RenderUtil.java:374)
   at org.alfresco.web.site.PresentationUtil.renderRegion(PresentationUtil.java:164)
   at org.alfresco.web.site.taglib.RegionTag.doStartTag(RegionTag.java:113)
   at org.alfresco.tools.TagUtil.execute(TagUtil.java:143)
   at org.alfresco.tools.TagUtil.execute(TagUtil.java:79)
   at org.alfresco.web.scripts.FreemarkerTagSupportDirective.executeTag(FreemarkerTagSupportDirective.java:95)
   at org.alfresco.web.scripts.RegionFreemarkerTagDirective.execute(RegionFreemarkerTagDirective.java:128)
   at freemarker.core.Environment.visit(Environment.java:261)
   at freemarker.core.UnifiedCall.accept(UnifiedCall.java:126)
   at freemarker.core.Environment.visit(Environment.java:208)
   at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:179)
   at freemarker.core.Environment.visit(Environment.java:415)
   at freemarker.core.IteratorBlock.accept(IteratorBlock.java:102)
   at freemarker.core.Environment.visit(Environment.java:208)
   at freemarker.core.MixedContent.accept(MixedContent.java:92)
   at freemarker.core.Environment.visit(Environment.java:208)
   at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:179)
   at freemarker.core.Environment.visit(Environment.java:415)
   at freemarker.core.IteratorBlock.accept(IteratorBlock.java:102)
   at freemarker.core.Environment.visit(Environment.java:208)
   at freemarker.core.MixedContent.accept(MixedContent.java:92)
   at freemarker.core.Environment.visit(Environment.java:208)
   at freemarker.core.Macro$Context.runMacro(Macro.java:164)
   at freemarker.core.Environment.visit(Environment.java:601)
   at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
   at freemarker.core.Environment.visit(Environment.java:208)
   at freemarker.core.IfBlock.accept(IfBlock.java:82)
   at freemarker.core.Environment.visit(Environment.java:208)
   at freemarker.core.Macro$Context.runMacro(Macro.java:164)
   at freemarker.core.Environment.visit(Environment.java:601)
   at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
   at freemarker.core.Environment.visit(Environment.java:208)
   at freemarker.core.MixedContent.accept(MixedContent.java:92)
   at freemarker.core.Environment.visit(Environment.java:208)
   at freemarker.core.Environment.visit(Environment.java:393)
   at freemarker.core.BodyInstruction.accept(BodyInstruction.java:93)
   at freemarker.core.Environment.visit(Environment.java:208)
   at freemarker.core.MixedContent.accept(MixedContent.java:92)
   at freemarker.core.Environment.visit(Environment.java:208)
   at freemarker.core.Macro$Context.runMacro(Macro.java:164)
   at freemarker.core.Environment.visit(Environment.java:601)
   at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
   at freemarker.core.Environment.visit(Environment.java:208)
   at freemarker.core.MixedContent.accept(MixedContent.java:92)
   at freemarker.core.Environment.visit(Environment.java:208)
   at freemarker.core.Environment.process(Environment.java:188)
   at freemarker.template.Template.process(Template.java:237)
   at org.alfresco.web.scripts.PresentationTemplateProcessor.process(PresentationTemplateProcessor.java:146)
   at org.alfresco.web.scripts.FreemarkerRenderer.execute(FreemarkerRenderer.java:219)
   at org.alfresco.web.site.RenderUtil.renderTemplate(RenderUtil.java:266)
   at org.alfresco.web.site.RenderUtil.renderPage(RenderUtil.java:170)
   at org.alfresco.web.site.PresentationUtil.renderPage(PresentationUtil.java:88)
   at org.alfresco.web.site.servlet.DispatcherServlet.dispatchPage(DispatcherServlet.java:459)
   at org.alfresco.web.site.servlet.DispatcherServlet.dispatch(DispatcherServlet.java:360)
   at org.alfresco.web.site.servlet.DispatcherServlet.service(DispatcherServlet.java:148)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
   at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
   at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
   at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
   at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
   at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
   at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
   at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)
   at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
   at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
   at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
   at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
   at java.lang.Thread.run(Thread.java:619)




On an off note this may be relevant

SEVERE: Servlet.service() for servlet VtiRootProxyServlet threw exception
net.sf.acegisecurity.AuthenticationCredentialsNotFoundException: A valid SecureContext was not provided in the RequestContext
   at net.sf.acegisecurity.intercept.AbstractSecurityInterceptor.credentialsNotFound(AbstractSecurityInterceptor.java:477)
   at net.sf.acegisecurity.intercept.AbstractSecurityInterceptor.beforeInvocation(AbstractSecurityInterceptor.java:355)
   at net.sf.acegisecurity.intercept.method.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:77)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
   at org.alfresco.repo.security.permissions.impl.ExceptionTranslatorMethodInterceptor.invoke(ExceptionTranslatorMethodInterceptor.java:49)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
   at org.alfresco.repo.audit.AuditComponentImpl.audit(AuditComponentImpl.java:245)
   at org.alfresco.repo.audit.AuditMethodInterceptor.invoke(AuditMethodInterceptor.java:69)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
   at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
   at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)
   at $Proxy42.resolveNamePath(Unknown Source)
   at org.alfresco.module.vti.handler.alfresco.VtiPathHelper.resolvePathFileInfo(VtiPathHelper.java:133)
   at org.alfresco.module.vti.handler.alfresco.AlfrescoVtiMethodHandler.existResource(AlfrescoVtiMethodHandler.java:941)
   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:597)
   at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:281)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:187)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:154)
   at org.springframework.aop.framework.adapter.ThrowsAdviceInterceptor.invoke(ThrowsAdviceInterceptor.java:129)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
   at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)
   at $Proxy75.existResource(Unknown Source)
   at org.alfresco.module.vti.VtiFilter.doFilter(VtiFilter.java:147)
   at org.alfresco.module.vti.httpconnector.VtiServletContainer$HttpFilterChain.doFilter(VtiServletContainer.java:203)
   at org.alfresco.module.vti.httpconnector.VtiServletContainer.service(VtiServletContainer.java:108)
   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:597)
   at org.alfresco.proxy.ProxyServlet.service(ProxyServlet.java:99)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
   at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
   at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
   at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
   at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
   at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
   at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
   at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)
   at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
   at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
   at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
   at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)

Outcomes