• Tach !

    Hab mir lokal mal Plone 4 (Windows) installiert und möchte nun das
    LDAP-Plugin nachinstallieren. Der Buildout-Prozess is ja ganz nett, deshalb
    hab ich unter eggs mal plone.app.ldap hinzugefügt.

    Hat haufenweise Errormeldungen rausgehauen die ich jetzt nach und nach
    mit ner Installation der OpenLDAP-Binaries, cyrus-sasl und Microsoft Visual
    Studio 2008 beseitigt habe.

    Doch nun taucht ein Problem auf, bei dem ich nicht weiterkomme.[INDENT]C:\Plone>bin\buildout
    Updating productdistros.
    Installing instance.
    Getting distribution for 'plone.app.ldap==1.1'.
    Got plone.app.ldap 1.1.
    Getting distribution for 'python-ldap>=2.0.6'.
    extra_compile_args:
    extra_objects:
    include_dirs: /usr/local/openldap-2.3/include /usr/include/sasl
    library_dirs: /usr/local/openldap-2.3/lib
    libs: ldap_r lber sasl2 ssl crypto
    file Lib\ldap.py (for module ldap) not found
    file Lib\ldap\schema.py (for module ldap.schema) not found
    warning: no files found matching 'Makefile'
    warning: no files found matching 'Modules\LICENSE'
    file Lib\ldap.py (for module ldap) not found
    file Lib\ldap\schema.py (for module ldap.schema) not found
    file Lib\ldap.py (for module ldap) not found
    file Lib\ldap\schema.py (for module ldap.schema) not found
    LDAPObject.c
    Modules/LDAPObject.c(959) : error C2143: Syntaxfehler: Es fehlt ';' vor 'Typ'
    Modules/LDAPObject.c(960) : error C2143: Syntaxfehler: Es fehlt ';' vor 'Typ'
    Modules/LDAPObject.c(961) : error C2275: 'LDAPControl': Ungültige Verwendung die
    ses Typs als Ausdruck
    C:\Plone\python\include\ldap.h(180): Siehe Deklaration von 'LDAPControl'

    Modules/LDAPObject.c(961) : error C2065: 'serverctrls': nichtdeklarierter Bezeic
    hner
    Modules/LDAPObject.c(961) : error C2100: Ungültige Dereferenzierung.
    Modules/LDAPObject.c(963) : error C2065: 'result': nichtdeklarierter Bezeichner
    Modules/LDAPObject.c(963) : error C2065: 'refs': nichtdeklarierter Bezeichner
    Modules/LDAPObject.c(964) : error C2065: 'serverctrls': nichtdeklarierter Bezeic
    hner
    Modules/LDAPObject.c(967) : error C2065: 'result': nichtdeklarierter Bezeichner
    Modules/LDAPObject.c(969) : error C2065: 'result': nichtdeklarierter Bezeichner
    Modules/LDAPObject.c(969) : error C2065: 'refs': nichtdeklarierter Bezeichner
    Modules/LDAPObject.c(969) : error C2065: 'refs': nichtdeklarierter Bezeichner
    Modules/LDAPObject.c(969) : error C2109: Index erfordert ein Array oder einen Ze
    igertyp
    Modules/LDAPObject.c(970) : error C2065: 'refs': nichtdeklarierter Bezeichner
    Modules/LDAPObject.c(970) : error C2109: Index erfordert ein Array oder einen Ze
    igertyp
    Modules/LDAPObject.c(978) : error C2065: 'serverctrls': nichtdeklarierter Bezeic
    hner
    Modules/LDAPObject.c(978) : warning C4047: 'Funktion': Anzahl der Dereferenzieru
    ngen bei 'LDAPControl **' und 'int' unterschiedlich
    Modules/LDAPObject.c(978) : warning C4024: 'LDAPControls_to_List': Unterschiedli
    che Typen für formalen und übergebenen Parameter 1
    Modules/LDAPObject.c(984) : error C2065: 'serverctrls': nichtdeklarierter Bezeic
    hner
    Modules/LDAPObject.c(1015) : error C2143: Syntaxfehler: Es fehlt '{' vor '*'
    Modules/LDAPObject.c(1074) : warning C4133: 'return': Inkompatible Typen - von '
    PyObject *' zu 'int *'
    Modules/LDAPObject.c(1076) : warning C4133: 'return': Inkompatible Typen - von '
    PyObject *' zu 'int *'
    Modules/LDAPObject.c(1109) : warning C4013: 'ldap_whoami_s' undefiniert; Annahme
    : extern mit Rückgabetyp int
    Modules/LDAPObject.c(1215) : warning C4013: 'ldap_passwd' undefiniert; Annahme:
    extern mit Rückgabetyp int
    error: Setup script exited with error: command '"C:\Programme\Microsoft Visual S
    tudio 9.0\VC\BIN\cl.exe"' failed with exit status 2
    An error occured when trying to install python-ldap 2.3.12. Look above this mess
    age for any errors that were output by easy_install.
    While:
    Installing instance.
    Getting distribution for 'python-ldap>=2.0.6'.
    Error: Couldn't install: python-ldap 2.3.12
    *************** PICKED VERSIONS ****************
    [versions]
    products.ldapmultiplugins = 1.13
    products.ldapuserfolder = 2.18
    products.ploneldap = 1.1

    #Required by:
    #products.ldapuserfolder 2.18
    dataflake.ldapconnection = 1.2

    *************** /PICKED VERSIONS ***************

    [/INDENT]Wie oben zu sehen, hab ich für ploneldap die Version 1.1 genommen, in der Hoffnung
    diese funktioniert - aber auch ohne Version kommt gleiches Ergebnis. Nach der Meldung
    file Lib\ldap\schema.py (for module ldap.schema) not found
    hab ich schon gegoogelt,
    kann angeblich vernachlässigt werden.

    Nach ner python-ldap-Version (evtl ne niedrigere) hab ich auchmal gesucht, aber leider
    keine gefunden. Version 2.0.6 scheint jedenfalls nicht mehr verfügbar zu sein.

    Irgendjemand Tipps oder Hinweise ?

    *thx*

  • so.... also ich denke, ich bin nen schritt weiter.

    hab mir python-ldap mal als msi-installer geholt und installiert (bzw macht der ja nix weiter als entpacken).
    anschließend die PloneLDAP.tar.gz runtergeladen, entpackt und dort via python ein build und install durchlaufen
    lassen ("python setup.py build" bzw "python setup.py install"). letzteres hat dann alle eggs usw (dependencies)
    geholt und die Meldung gebracht Finished processing dependencies for Products.PloneLDAP==1.1.

    Plone gestartet und im Zope kann ich jetzt auch den Eintrag unter Erweiterungen sehen -> LDAPUserFolder CMF Tools 2.18
    Aber beim Hinzufügen/Aktivieren kommt ne leere Seite mit AttributeError('getMemberInfo',)

    So, und etz mach ich Feierabend, falls jmd zum letzten Fehler ne Lösung hat, oder besser Vorgehensmethoden, immer
    her damit - werd ich dann morgen weitermachen.

    *thx*

  • Hallo driver,

    du hast ja Prinzipiell richtig gearbeitet, der Fehler den du jetzt mit dem LDAPUserFolder hast ist leider intuitive nicht ersichtlich.
    Unter Plone sollte nur plone.app.ldap als Modul installiert werden, dieses sollte eigentlich auch den LDAPUserFolder ausblenden.

    Gruss Pumukel

    Die beste Informationsquelle sind Leute, die versprochen haben, nichts weiterzuerzählen.

    Marcel Mart
    frz. Schriftsteller

  • Hei,

    naja, hatte ich ja vor. Dann kamen eben die ganzen Errormeldungen mit OpenLDAP usw, bis ich
    schließlich an der Errormeldung im ersten Post scheiterte.

    ich komm wohl nicht drum rum das ganze mal auf ner linux-kiste zu installieren. dafür gibts
    immerhin mehr anleitungen und hilfen als für windows :|

  • Hallo Driver,

    der Betrieb von Plone, oder auch anderen guten Tools (zum Großteil für Entwicklung) unter Windows ist sehr schwach. Es gibt oft nur drei Alternativen:
    1. Direkt zu einem unixoiden (UNIX, Linux, MacOS, ...) zu wechseln - für einen Server oft sinnvoll, für einen Desktop nicht unbedingt.
    2. Eine unixoide Entwicklungsumgebung in einer Virtuellen Maschine betreiben (VirtualBox, VWWare, VirtualPC, ...) - kann sehr viel spass machen, beschränkt aber die Hardware da zwei Betriebssysteme sich gleichzeitig die Ressourcen teilen müssen und extrem langsam werden kann bei wenig Speicher.
    3. CygWin, eine Posix-Schnittstelle für Windows, die viele GNU-Tools aus unixoiden Welt auf die Windows Welt übertragen, unter anderem auch so wichtige Tools wie den GCC.

    Gruss Pumukel

    Die beste Informationsquelle sind Leute, die versprochen haben, nichts weiterzuerzählen.

    Marcel Mart
    frz. Schriftsteller

  • Hallo Driver,

    die LDAP-Anbindung läuft bei mir unter Windows sowohl in Plone 3 als auch in Plone 4.

    Unter http://www.python-ldap.org/download.shtml findet man einen Link, unter dem python-ldap als egg für Windows runterladen kann. Für Plone 4 war http://svn.kmrc.de/download/distr…py2.6-win32.egg das Richtige.

    Das egg kann man mit
    > easy_install python_ldap-2.3.9-py.2.6-win32.egg
    installieren, wobei das Binary easy_install.exe im Unterverzeichnis python/Scripts der Plone4-Installation zu finden ist.

    Danach in der buildout.cfg folgendes eintragen:
    [buildout]
    eggs =
    python-ldap==2.3.9
    plone.app.ldap

    und den Buildout starten. Bei mir hats dann funktioniert.

    Gruß
    Verena

  • hi verena,

    also danke schonmal für deine hilfe - hat auch so funktioniert. er zeigt mir in der konfiguration
    dann des plugin an - aber wenn ichs aktivieren will kommt wieder die meldung die ich oben
    mal gepostet hab

    -> AttributeError('getMemberInfo',) (Also, the following error occurred while attempting to render the standard error message, please see the event log for full details: getMemberInfo)

    :|

  • Hallo Driver,

    Du musst wohl noch
    zcml =
    plone.app.ldap
    zu Deinem Buildout hinzufügen.

    Und dann solltest Du nicht "LDAPUserFolder CMF Tools" sondern "LDAP support" installieren, so wie es auch in der Doku zu plone.app.ldap steht.

    Gruss
    Verena

  • Hi Verena,

    wohooo... es hat tatsächlich geklappt. Hatte bei meinen obrigen Versuchen plone.app.ldap auch schon paarmal zu zcml hinzugefügt,
    aber jedesmal nen Syntaxerror erhalten und dann wieder rausgelöscht. Diesmal hats geklappt und Plone läuft erfolgreich am LDAP.

    Wo kommstn her ? Lad ich dich mal zum Essen ein ;)