13:44:16,299 ERROR [quartz.core.ErrorLogger] Job (DEFAULT.ldapPeopleJobDetail threw an exception.
org.quartz.SchedulerException: Job threw an unhandled exception. [See nested exception: org.alfresco.repo.importer.ExportSourceImporterException: Failed to import]
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:516)
* Nested Exception (Underlying Cause) —————
org.alfresco.repo.importer.ExportSourceImporterException: Failed to import
at org.alfresco.repo.importer.ExportSourceImporter.doImport(ExportSourceImporter.java:206)
at org.alfresco.repo.importer.ImporterJob.execute(ImporterJob.java:36)
at org.quartz.core.JobRunShell.run(JobRunShell.java:191)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:516)
Caused by: org.alfresco.repo.search.SearcherException: Index has no root node. Check that the correct index locations are being used.
at org.alfresco.repo.search.impl.lucene.query.LeafScorer.initialise(LeafScorer.java:224)
at org.alfresco.repo.search.impl.lucene.query.LeafScorer.<init>(LeafScorer.java:134)
at org.alfresco.repo.search.impl.lucene.query.PathScorer.createPathScorer(PathScorer.java:159)
at org.alfresco.repo.search.impl.lucene.query.PathQuery$StructuredFieldWeight.scorer(PathQuery.java:250)
at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:85)
at org.apache.lucene.search.Hits.getMoreDocs(Hits.java:64)
at org.apache.lucene.search.Hits.<init>(Hits.java:43)
at org.apache.lucene.search.Searcher.search(Searcher.java:33)
at org.apache.lucene.search.Searcher.search(Searcher.java:27)
at org.alfresco.repo.search.impl.lucene.LuceneSearcherImpl.query(LuceneSearcherImpl.java:254)
at org.alfresco.repo.search.SearcherComponent.query(SearcherComponent.java:77)
at org.alfresco.repo.importer.ImporterComponent$NodeImporter.resolveImportedNodeRef(ImporterComponent.java:1007)
at org.alfresco.repo.importer.ImporterComponent$NodeImporter.end(ImporterComponent.java:730)
at org.alfresco.repo.importer.ImporterComponent.parserImport(ImporterComponent.java:345)
at org.alfresco.repo.importer.ImporterComponent.importView(ImporterComponent.java:211)
at org.alfresco.repo.importer.ExportSourceImporter.doImport(ExportSourceImporter.java:174)
… 3 more
je ne sois pas de quoi il s'agit, je n'avais pas cette erreur au début de mes tests lors des premiers imports. (nb: je n'importe pas de groupe !13:55:06,887 ERROR [ui.common.Utils] Failed to delete User due to error: Transaction has been rolled back because it has been marked as rollback-only
org.springframework.transaction.UnexpectedRollbackException: Transaction has been rolled back because it has been marked as rollback-only
at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:465)
at org.springframework.transaction.interceptor.TransactionAspectSupport.doCommitTransactionAfterReturning(TransactionAspectSupport.java:266)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:176)
at $Proxy14.isCurrentUserTheSystemUser(Unknown Source)
at org.alfresco.repo.security.permissions.impl.acegi.ACLEntryVoter.vote(ACLEntryVoter.java:189)
at net.sf.acegisecurity.vote.AffirmativeBased.decide(AffirmativeBased.java:69)
at net.sf.acegisecurity.intercept.AbstractSecurityInterceptor.beforeInvocation(AbstractSecurityInterceptor.java:394)
at net.sf.acegisecurity.intercept.method.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:77)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
at org.alfresco.repo.security.permissions.impl.ExceptionTranslatorMethodInterceptor.invoke(ExceptionTranslatorMethodInterceptor.java:40)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:176)
at $Proxy40.deletePerson(Unknown Source)
at org.alfresco.web.bean.users.UsersBean.deleteOK(UsersBean.java:300)
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:585)
at org.apache.myfaces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:129)
at org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:63)
at javax.faces.component.UICommand.broadcast(UICommand.java:106)
at javax.faces.component.UIViewRoot._broadcastForPhase(UIViewRoot.java:90)
at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:164)
at org.apache.myfaces.lifecycle.LifecycleImpl.invokeApplication(LifecycleImpl.java:316)
at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:86)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:105)
at org.alfresco.web.app.servlet.AlfrescoFacesServlet.service(AlfrescoFacesServlet.java:49)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.alfresco.web.app.servlet.AuthenticationFilter.doFilter(AuthenticationFilter.java:73)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.valves.FastCommonAccessLogValve.invoke(FastCommonAccessLogValve.java:495)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)
En fait nous ne voulons PAS utiliser "employeenumber" pour l'identification des utilisateurs car ceux-ci disposent d'un login plus pratique, qui se trouve placé dans un attibut LDAP dénommé "UID". C'est ce login que nous voudrions voir utiliser comme identifiant par Alfresco. Est-ce possible ?Il ne me semble pas que ce soit possible. Alfresco fait ce qu'on appelle un FastBind sur le LDAP (c'est à dire, pas de recherche de DN avant le bind). Dans votre cas, il faudra obligatoirement utiliser employeenumber pour s'authentifier sur alfresco.
Question subsidiaire: il y a-t-il une différence à ce sujet avec la version Entreprise ? Certains messages du forum anglais disent que la connexion ldap ne fonctionne pas dans la version Community, mais je constate que si puisque je parviens à m'indentifier dans Alfresco avec "employeenumber". Quid ??La version Entreprise est uniquement une version Community avec le support d'Alfresco (et la correction de quelques bugs, notamment concernant l'authentification en ntlm).
J'arrive plus ou moins à mes fins grâce à la synchronisation: l'attribut "UID" dans LDAP est comme je le souhaitais utilisé comme nom de login.Il faut bien dissocier l'authentification via LDAP et la synchronisation des utilisateurs et des groupes via LDAP. Je vous renvoie vers un autre sujet ou j'explique cela un peu plus en détail :
A quoi sert dès lors la partie "LDAP authentication configuration" dans le fichier ldap-authentication-context.xml ?
Autre chose que je ne comprends pas: pour l'authentification LDAP je n'ai pas défini un utilisateur ayant des droits spécifiques pour lire les infos de tous les utilisateurs et groupes (je n'utilise pas l'import des groupes car nos groupes dans LDAP ne sont pas définis dans des noeuds séparés (un DN par groupe) comme Alfresco le souhaite). Pourtant les attributs des utilisateurs LDAP (email, …) sont importés correctement.Alfresco se bind tout simplement en Anonymous sur le serveur LDAP.
- le chargement des utilisateurs depuis le LDAP s'arrête après 2000 utilisateurs du à une limitation actuelle de notre serveur LDAP. Je ne sais pas dès lors tester une identification sur Alfresco car mon login personnel n'est pas dans ces 2000 premiers utilisateurs;Si vous utilisez OpenLDAP, je vous renvoie vers cette page du wiki alfresco :
- maintenant je constate que qlq secondes après le démarrage suite à l'importation des utilisateurs j'ai une erreur:Mouais, ça ressemble à un dépôt corrompu. Si vous n'avez pas de données importantes dans Alfresco, je vous invite à repartir d'un dépôt vierge pour continuer vos tests. Pour cela, il faut supprimer le contenu du dossier alf_data et supprimer toutes les tables de la base de données (si vous utilisez mysql).
Content from pre 2016 and from language groups that have been closed.
Content is read-only.
By using this site, you are agreeing to allow us to collect and use cookies as outlined in Alfresco’s Cookie Statement and Terms of Use (and you have a legitimate interest in Alfresco and our products, authorizing us to contact you in such methods). If you are not ok with these terms, please do not use this website.