blog.bartlweb - a technologist's external brain

Thema: Alfresco

Alfresco auf Version 3.4.c updaten

Eine der Neuerung in Alfresco 3.4.c ist, dass keine MySQL-Datenbankinstallation im Installations-Bundel mehr mitgeliefert wird. D.h. wer nicht auf eine Postgre-Datenbank migrieren möchte, muss sich ab sofort um eine eigene Installation von MySQL kümmern. Dabei stellt sich allerdings der Versionssprung der mitgelieferten Datenbank MySQL4 auf eine aktuelle Installation von MySQL5 als Stolperstein heraus. In MySQL5 sind Datenbanknamen case-sensitiv. Dadurch erkennt Alfresco einige Tabellen nicht mehr, da diese in früheren Versionen mit Kleinschreibung angelegt wurden, aktuell aber in Großschreibung benötigt werden.

Upgrade-Prozedur

Die folgende Anleitung hilft beim beheben des Konflikts:

  1. Erstellen Sie einen Dump Ihrere aktuellen MySQL-Datenbank.

E-Mail-Einstellungen für den Versand unter Alfresco 3.3

Damit Alfresco E-Mails versenden kann muss in der Konfigurationsdatei /opt/alfresco/tomcat/shared/classes/alfresco-global.properties ein E-Mailserver angegeben werden.

ohne Authentifizierung

mail.host = mail.domain.com
mail.port = 25
mail.smtp.auth = false
mail.encoding=UTF-8
mail.from.default= alfresco@domain.com

mit Authentifizierung

mail.host= smtp.domain.com
mail.port= 25
mail.username = alfresco@domain.com
mail.password = password
mail.protocol = smtp
mail.smtp.auth = true
mail.encoding = UTF-8
mail.from.default= alfresco@domain.com

mit Authentifizierung und SSL

mail.host = smtp.domain.com
mail.port = 465
mail.username = alfresco@domain.com
mail.password = password
mail.protocol = smtps
mail.smtps.starttls.enable = true
mail.smtps.auth = true
mail.encoding = UTF-8
mail.from.default= alfresco@domain.com

E-Mailversand testen

Fügen Sie die folgenden Zeilen zur Konfiguration hinzu um beim Start des Servers den Versand eines Test-E-Mails anzustoßen.

mail.testmessage.send = true
mail.testmessage.to = test@domain.com
mail.testmessage.subject = Alfresco outbound SMTP - Testmail
mail.testmessage.text = Juhuu, it works.

Alfresco Benutzernamen immer ohne . (Punkt) im Namen

Legt man unter Alfresco (alle Versionen) einen Benutzer mit einem . (Punkt) im Nutzernamen an verhält sich die Oberfläche von Alfresco Share nicht mehr korrekt und produziert unerklärliche Fehler.

Einer dieser Fehler tritt zum Beispiel, dann auf, wenn man versucht einzelne Sites zu löschen:

23:23:01,095  ERROR [extensions.webscripts.AbstractRuntime] Exception from executeScript - redirecting to status template error: 01100010 Wrapped Exception (with status template): 01100021 Failed to execute script 'classpath*:alfresco/templates/webscripts/org/alfresco/repository/site/site.delete.js': 01100020 Zugriff verweigert.  Sie verf?gen nicht ?ber die Berechtigungen, um diesen Vorgang durchzuf?hren.
org.springframework.extensions.webscripts.WebScriptException: 01100010 Wrapped Exception (with status template): 01100021 Failed to execute script 'classpath*:alfresco/templates/webscripts/org/alfresco/repository/site/site.delete.js': 01100020 Zugriff verweigert.  Sie verf?gen nicht ?ber die Berechtigungen, um diesen Vorgang durchzuf?hren.

Grund dafür dürfte die Erkennung der Nutzerrechte im Zusammenhang mit dem Benutzernamen sein: Sie verfügen nicht über die Berechtigungen, um diesen Vorgang durchzuführen.

Installation von Alfresco Community Edition 3.3 unter Linux

Die folgende Anleitung beschreibt die Installation von Alfresco Community Edition 3.3 unter Linux. Genauere Details zu Installation der benötigten Software und weitere Infos finden Sie im Beitrag "Alfresco Labs 3.1 unter OpenSuse 11.1 (Linux) installieren".

Voraussetzungen

Für die Installation und den vollen Funktionsumfang von Alfresco sollten Sie bereits die folgende Software installiert haben:

  • Java
  • MySQL
  • ImageMagick
  • SWFTools
  • OpenOffice

Installation

1. Alfresco-Installer ausführen

Laden Sie sich die aktuelle Installationsdatei von Alfresco Community Edition für Linux herunter (http://wiki.alfresco.com/wiki/Download_Community_Edition) und führen Sie diese aus. Folgen Sie den wenigen Anweisungen am Bildschirm.

TinyMCE in Alfresco 3.3 an die eigenen Bedürfnisse anpassen

Alfresco liefert seit Version 3.2 als Standard-Editor den mächtigen TinyMCE in vollem Funktionsumfang mit. Um diesen für den Blog bzw. für die Wiki sinnvoll zu konfigurieren und die Standardstyles an eigene Bedürfnisse anzupassen, folgen Sie der unteren Anleitung.

Blog

Gehen Sie im Installationsverzeichnis (meist /opt/Alfresco) in den Ordner tomcat/webapps/share/components/blog und kopieren Sie die Datei postedit-min.js nach postedit-min.js.old, sowie die Datei postedit.js nach postedit-min.js. Nun bearbeiten Sie die die Datei postedit-min.js und suchen Sie nach der Kommentarzeile // Instantiate the simple editor we use for the form und ersetzen Sie den darunter liegenden Code für Konfiguration und Aufruf von TinyMCE durch den folgenden:

TinyMCE in Alfresco Share 3.1 integrieren

Diese Anleitung beschreibt alle notwendigen Schritte um den YUI-Editor zum bearbeiten Wiki-Seiten und zum Erstellen bzw Editieren von Blogeinträgen gegen TinyMCE zu tauschen. Alle weiteren Editoren zum Anlegen von Kommentaren werden dadurch nicht getauscht.

Vorteile

  • Überschriften definierbar
  • mehr Möglichkeiten
  • bessere Benutzbarkeit

Einschränkungen

  • Alfresco entfernt beim Abspeichern leider diverse Tags (pre, code) -> um dies zu umgehen können aber benutzerdefinierte Styles definiert werden die dann auf p oder span-Tags angewendet werden können.

Umsetzung

1) TinyMCE Sources kopieren

Laden Sie die aktuelle Version von TinyMCE herunter und kopieren sie den Ordner “/jscripts/tiny_mce” nach “/opt/Alfresco/tomcat/webapps/share/js”

Alfresco Labs 3.1 unter OpenSuse 11.1 (Linux) installieren

Folgende Schritte und Kniffe sind für die Installation von Alfresco Labs 3.1 unter OpenSuse 11.1 notwendig:

  1. Java installieren
  2. ImageMagick installieren
  3. SWFTools installieren
  4. MySQL installieren
  5. OpenOffice installieren
  6. Alfresco-Installer ausführen
  7. Alfresco für MySQL konfigurieren
  8. Alfresco-Troubles beheben
  9. Firewall einrichten
  10. init-Skript einrichten
  11. Alfresco mittels mod_proxy ansprechen

Tomcat Log-Datei für die Fehlerdiagnose: /opt/Alfresco/tomcat/logs/catalina.out

Bitte Alfresco frühestens nach Schritt 6 zum Ersten Mal starten und die Logdatei auf Fehler überprüfen.

Sollten Zusatzmodule (.amp) installiert werden, müssen diese unter /opt/Alfresco/amps kopiert werden. Danach /opt/Alfresco/apply_amps.sh ausführen. (Sinnvoll erst, wenn Alfresco einwandfrei läuft, auch hier wieder die Log-Datei auf Fehler überprüfen. Ein Backup der War-Datei wird unter /opt/Alfresco/tomcat/webapps/alfresco.war-<Datum> angelegt.)

Seitennavigation in Alfresco Share 3.1 Wiki lässt sich nicht anklicken

Ein Teil der Seitennavigation in der Wiki von Alfresco Share lässt sich nicht anklicken, weil hier ein Fehler im Aufbau des HTML-Grundgerüsts besteht. Das Problem lässt sich allerding relativ einfach per CSS beheben.

Editieren Sie dazu die Datei /opt/Alfresco/tomcat/webapps/share/components/blog/postlist.css:

Ändern Sie die CSS-Definition von .postlist-infobar .pageinator in Zeile 37 auf:

.postlist-infobar .paginator {
  text-aling: right;
  postion: relative;
  z-index: 2;
}

Hinweis: Die Seitennavigation im Modul Links funktioniert in Version 3.1 von Alfresco Share allerdings wirklich nicht. Hier dürfte allerdings ein JavaScript-Fehler das Problem sein.

Seitennavigation in Link-Modul von Alfresco Share 3.1 funktioniert nicht

Die Seitennavigation im Link-Modul von Alfreso Share 3.1 funktioniert von Haus aus leider nicht. Abhilfe schafft eine kleine Veränderung im JS. Allerdings bekommt die Seitennavigation dadurch trotzdem nur eine Eingeschränkte Funktionalität. So lässt sich nur durch direktes anklicken der Seitenzahl navigieren und die aktuell aktive Seite wird leider auch nicht angezeigt.

Fügen Sie für den Workaround in der Datei /opt/Alfresco/tomcat/webapps/share/components/links/links.js nach Zeile 525 (var handlePagination = ...) folgende Zeile ein:

this.widgets.paginator.subscribe("changeRequest", handlePagination);

Theme von Alfresco 3.2 ändern

Alfresco 3.2 liefert standardmäßig 3 verschiedene Themes (default, greenTheme, hcBlack) mit. Diese sind im Verzeichnis "/opt/Alfresco/tomcat/webapps/share/themes" zu finden. Um das Theme nun zu wechseln muss die Datei "/opt/Alfresco/tomcat/shared/classes/alfresco/web-extension/web-framework-config-custom.xml" angepasst werden. Ändern Sie dort am Ende in der Konfiguration den Punkt theme auf einen der 3 oben genannten Werte.