Blog

  • Anzeigeprobleme bei SharePoint-Listen nach dem Juli Patchday 07/2021 – SharePoint 2019 Listen werden nicht mehr angezeigt.

    Nach dem July Patchday 2021 gab es bei SharePoint das Problem, dass Listen in der Listenasicht nicht mehr dargestellt wurden. Es wurde nur eine leere weiße Seite angezeigt. In der Quellcodeansicht sah man aber, dass der Server doch Content ausliefert, der aber nicht gerendert wird.

    Nach einigem Suchen und Testen konnte die „Modern View / Moderne Erfahrung von SharePoint 2019 als Fehlerursache ausgemacht werden. Wenn man bei einer Liste die „Moderne Erfahrung“ deaktiviert, wird die Seite wieder richtig gerendert.

    Die „Moderne Ansicht/ Moderne Erfahrung / modern experiences / modern View“ lässt sich per Powershell auch auf Websitesammlungsebene deaktivieren.

    Add-PSSnapin microsoft.sharepoint.powershell -ea 0
    $site = Get-SPSite http://siteurl
    
    #Disable modern Lists and libraries for Site Collection
    $featureguid = new-object System.Guid "E3540C7D-6BEA-403C-A224-1A12EAFEE4C4"
    $site.Features.Add($featureguid, $true)

    Quelle: https://tishenko.com/set-classic-view-as-default-on-sharepoint-2019-sites/

    PowerShell Script um in allen Sitecollections einer SharePoint Farm die „Modern Experience“ zu deaktivieren.

    Add-PSSnapin microsoft.sharepoint.powershell -ea 0
    $sitecols= get-spsite -Limit all
    foreach($sitecol in $sitecols)
    {
    $featureguid = new-object System.Guid "E3540C7D-6BEA-403C-A224-1A12EAFEE4C4"
    $sitecol.Features.Add($featureguid, $true)
    }

  • SharePoint Fehler: „Problem beim Anwenden der Webvorlage: Für diese Webvorlage müssen bestimmte Features installiert und aktiviert sein.“

    Nach einem Versions-Update einer SharePoint Umgebung treten beim Erstellen einer SharePoint Webseite mit einem Websitetemplate ein Fehler auf: „Problem beim Anwenden der Webvorlage: Für diese Webvorlage müssen bestimmte Features installiert und aktiviert sein.“

    Featurebeschreibung: MobileExcelWebAccess Feature
    Feature-ID: E995E28B-9BA8-4668-9933-CF5C146D7A9F

    Das fehlende Feature kann per PowerShell mit folgenden Befehl aktiviert werden:

    Enable-SPFeature -Identity E995E28B-9BA8-4668-9933-CF5C146D7A9F -Url "http://sharepoint.local/sitecollection"

    Nach der Aktivierung des fehlenden Features lässt sich das Websitetemplate wieder wie vorher als Grundlage für eine neue SharePoint-Website verwenden.

  • Im TYPO3 Backend fehlen nach einem Update auf TYPO3 9.5 die Adminwerkzeuge

    Bei einem Versionsupdate von TYPO3 8 auf TYPO3 9 kann es vorkommen, dass nach dem Update im Backend die Adminwerkzeuge fehlen, obwohl der Benutzer „Adminstatus“ besitzt. Unter anderem fehlt der wichtige Menüpunkt / das Icon „Erweiterungen“.

    Fehlende Menüpunkte / Icons unter der Kategorie „Adminwerkzeuge“.

    Auf Stackoverflow.com fand ich die Lösung für das Problem : TYPO3 admin backend modules are missing.
    Die 2. Antwort brachte mich auf die richtige Fährte.

    Aus welchem Grund auch immer, fehlte dem aus TYPO3 8 nach TYPO3 9 migrierten Admin-User die „System Maintainers“-Berechtigungen. Mit den „System Maintainers“- Rechten wird das Installtool von den bisherigen TYPO3 überflüssig. Die Installtool-Funktionalitäten wandern bei Admin-Usern mit „System Maintainers“-Rechten in das normale TYPO3 Backend.

    Um dem Admin-User die „System Maintainers“-Berechtigungen zu geben, muss man noch einmal das Install-Tool bemühen. Unter dem Menüpunkt Settings –> Manage System Maintainers kann man die TYPO3 User auswählen die „System Maintainer“ sein sollen.

    „System Maintainers“- Verwaltung im TYPO3 Installtool
  • Fehler: imap-login: Error: Failed to initialize SSL server context: Can’t load DH parameters: error:1408518A:SSL routines:ssl3_ctx_ctrl:dh key too small – Nach einen Upgrade von Debian 9 auf Debian 10 Buster funktioniert die Anmeldung an dem Dovecot IMAP Server nicht mehr.

    Nach dem Update von Debian Stretch auf Debian Buster, bei dem auch der IMAP Server Dovecot auf die Version 2.3.4.1 aktualisiert wurde, funktioniert die Authentifizierung nicht mehr. Bei Login-Versuchen sieht man in der Logdatei /var/log/dovecot.log folgende Fehlermeldung:

    imap-login: Error: Failed to initialize SSL server context: Can’t load DH parameters: error:1408518A:SSL routines:ssl3_ctx_ctrl:dh key too small

    Bei einer Webrecherche ergaben sich schnell einige Fundstellen zu dem Problem:

    In der Upgradedoku von Dovecot Version v2.2 to v2.3 wird darauf hingewiesen dass man eine neue Einstellung ssl_dh der Dovecot Config hinzufügen muss.


    ssl-parameters.dat file is now obsolete. You should use ssl_dh setting instead: ssl_dh=</etc/dovecot/dh.pem

    Lösungsschritte:

    • Erzeugen einer Datei dh.pem für die Diffie-Hellman Parameter
      • openssl dhparam -out /etc/dovecot/dh.pem 4096
        • Hinweis: Die Ausführung des Befehls kann durchaus mehrere Minuten dauern.
    • Ändern der Dovecot Config
      • Bearbeiten der Datei /etc/dovecot/dovecot.conf
      • Hinzufügen folgender Zeile am Ende der Datei:
        • ssl_dh=</etc/dovecot/dh.pem
    • Neustart des Dovecot Service

    Danach funktionierte die Authentifizierung mit Dovecot wieder wie vorher.

  • Die Apache SSL Client Zertifikatsauthentifizierung funktioniert nicht mehr. Fehler: Forbidden You don’t have permission to access this resource.Reason: Cannot perform Post-Handshake Authentication.

    Wenn z.B. nach einem Update auf Debian 10 Buster eine vorher funktionierende Apache SSL Client Certificate Authentication nicht mehr funktioniert und der Fehler

    Forbidden You don’t have permission to access this resource.Reason: Cannot perform Post-Handshake Authentication.

    auftritt, dann liegt es daran, dass es bei TLS1.3 Probleme mit der Authentifizierung mit Client Certificates gibt:

    Als kurzfristige Lösung kann man in der Apache SSL Config die Verwendung von TLS1.3 deaktivieren.
    vim /etc/apache2/mods-available/ssl.conf

    SSLProtocol all -SSLv3 -TLSv1.3

    Nach einem Reload der Apache Config funktioniert die Client Zertifikats Authentifizierung wieder.

  • TYPO3 Extension Repository kann nicht mehr aktualisiert werden. Fehler: An exception occurred while executing; INSERT INTO tx_extensionmanager_domain_model_extension …….incorrect string value:

    Beim Versuch bei einer TYPO3 Installation die Extension Repository zu aktualisieren trat folgender Fehler auf:

    An exception occurred while executing; INSERT INTO `tx_extensionmanager_domain_model_extension ……. Incorrect string value: ‚\xC4\x85gol)‘ for column `DBNAME`.`tx_extensionmanager_domain_model_extension`.`update_comment` at row 8

    Dieser Fehler trat auf einem neuen Debian 10 Server mit alten TYPO3 Installationen auf. Bei Debian 9 funktionierte das Update der Repository noch ohne Probleme.

    Incorrect string value: ‚\xC4\x85gol)&#039“ deutet auf ein Zeichensatz Problem hin. Bei einer Netzrecherche fand ich gleichartige Problem die nicht nur auf TYPO3 bezogen waren. Dort wurde vorgeschlagen den Zeichensatz der betreffenden Tabelle auf utf8mb4 zu konvertieren.
    Glücklicherweise löste dies das Problem mit dem fehlgeschlagenen Repository Update in TYPO3. Anschließend musste noch die betreffende Tabelle geleert werden.

    Lösung:
    ALTER TABLE tx_extensionmanager_domain_model_extension CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

    TRUNCATE table tx_extensionmanager_domain_model_extension;

  • Fehler: „Oops, an error occurred!“ beim Updaten der TYPO3 Extension „Dynamic Content Elements (DCE)

    Problem: Nach dem Update der TYPO3 Extension „Dynamic Content Elements (DCE)

    tritt im Backend die Fehlermeldung „Oops, an error occurred!“ auf.

    Lösung: Dieses Problem lässt sich leicht beheben, indem man im Installtool von TYPO3 die Extension Autoload Informationen mit dem Befehl „Create autoload information for extension“ neu aufbaut:

    Danach funktioniert TYPO3 wieder ohne Probleme.

    Wenn man ein DCE Update plant, öffnet man das Installtool am besten vor dem DCE Update in einem anderen Browserfenster. Dann ist die Lösung nur ein Klick weit entfernt.

    Wenn man Shellzugriff auf die TYPO3 Installation kann man alternativ auch den Ordner „autoload“ im Ordner typo3conf löschen.

  • TYPO3 8.7 form_legacy Wizard ausblenden / Code anzeigen / Form definition anzeigen / Hide Form Wizard

    Bei der form_legacy Extension in TYPO3 8.7 kann man nicht wie bei der Form Extension in TYPO3 7 zwischen Form Code Definition und Wizard / WYGIWYS Editor / Assistent umschalten. Es wird standardmäßig nur der Wizard angezeigt. Um wieder Zugriff auf den Code der Form Konfiguration zu erhalten muss man das User TSConfig des aktuellen Benutzers anpassen.

    Folgender Typoscriptbefehl blendet den Formwizard aus:

    setup.default.tx_form.showWizardByDefault = 0

    Quellen: 

     

     

     

  • TYPO3 8.7 Update der DCE RTE Flexform Konfiguration bei DCE Elementen aus TYPO3 7.6

    Problem:

    Durch den Wechsel des TYPO3 HTML Editors auf den CKEditor tritt bei einen DCE Inhaltselement mit einem RTE Element ein Problem auf, dass beim Speichern jedes Mal zusätzliche Leerzeilen zur Ausgabe hinzugefügt werden.

    Beispiel der DCE HTML Ausgabe eines RTE Steuerelements mit alter Flexform Config (TYPO3 7.6) nach mehrmaligen speichern:

    p><strong>Modernisieren Sie jetzt!&nbsp;</strong></p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>

    Um dieses Problem zu beheben, muss man bei der TYPO3 8.7 DCE Definition das RTE Flexform Config updaten.

    DCE RTE Flexform Konfig in TYPO3 7.6
    <config>
        <type>text</type>
        <rows>5</rows>
        <cols>30</cols>
        <eval>trim,required</eval>
    </config>
    <defaultExtras>richtext[]:rte_transform[mode=ts_css]</defaultExtras>

    DCE RTE Flexform Konfig in TYPO3 8.7

    <config>
        <type>text</type>
        <rows>5</rows>
        <cols>30</cols>
        <eval>trim,required</eval>
        <enableRichtext>1</enableRichtext>
        <richtextConfiguration>default</richtextConfiguration>
    </config>

    Um das Update für alle DCE RTE Elemente in der Datenbank auf einmal zu erledigen, kann man dies direkt mit folgender SQL-Abfrage tun:

    USE dbname;
    update tx_dce_domain_model_dcefield set configuration=
    '<config>
        <type>text</type>
        <rows>5</rows>
        <cols>30</cols>
        <eval>trim,required</eval>
        <enableRichtext>1</enableRichtext>
        <richtextConfiguration>default</richtextConfiguration>
    </config>'
    where configuration like '%rte_transform%';
  • Nach TYPO3 Update auf 8.7 werden bei DCE Inhalts- Elementen „Kopie 1“ oder „Kopie 2“ im Inhalt angezeigt

    Die Ursache ist mir noch ein wenig unklar, warum nach dem Update auf TYPO3 8.7 bei kopierten Inhaltselementen des Plugins DCE die Header Spalten der tt_content Tabelle angezeigt werden. Darin befinden sich bei kopierten DCE Elementen die Zeichenfolge „Kopie 1“. Wobei die Zahl bei mehreren Elementen hochgezählt wird. Vorhanden waren die Einträge vor dem Update auf TYPO3 8.7 zwar auch schon, wurden aber nicht angezeigt. Erst nach dem TYPO3 Update haben die kopierten DCE Elemente einen h2 Header mit dem Inhalt „Kopie n“.

    Eine Recherche hat zwei Lösungsvorschläge gebracht, die leider für mich nicht in Frage kamen.

    Der erste Lösungsvorschlag war eine Typoscript Konfiguration

    TCEMAIN.table.tt_content {
    disablePrependAtCopy = 1
    disableHideAtCopy = 1
    }

    Diese zeigte bei meiner TYPO3 Seite keine Wirkung. Die Header mit „Kopie 1“ wurden immer noch angezeigt. Ich gehe davon aus, dass sich die Typoscript Einstellung nur auf neue kopierte Elemente auswirkt.

    Der zweite Lösungsvorschlag war, die bei DCE Inhaltselementen standardmäßig ausgeblendete Spalte „Header“ mittels „Sonstige“ -> „Vefügbare Objekte“ -> „Überschrift(header)“ einzublenden und bei allen Inhaltselementen die Headerspalte manuell zu leeren.

    Diese Lösung funktioniert zwar prinzipiell, ist aber bei umfangreichen TYPO3 Webseiten sehr aufwendig, da alle Inhaltselemente noch einmal bearbeitet werden müssen.

    Nach einem Blick in die tt_content Tabelle der betreffenden TYPO3 Datenbank, kam mir die Idee das Problem auf Datenbankebene zu lösen.

    update tt_content set header='' where header like '%Kopie%';

    Mit dieser SQL Abfrage werden alle Header Elemente in der in der tt_content Tabelle geleert, die das Muster %Kopie% in der Spalte „header“ enthalten. Nach einem Cachelöschen waren die unerwünschten Überschriften wie „Kopie 1“ aus dem Inhalt der Webseite verschwunden.