Confluence 4 mit JDK 7

Geschrieben von everflux am Oktober 23rd, 2011

Atlassian ist mit Confluence der Marktführer was Enterprise-Wiki-Software angeht. Bisher wird jedoch lediglich Java 6 offiziell supported, was schade ist, denn mit Java 7 hat die JVM eine Menge Updates bekommen und benötigt erheblich weniger Speicher im Betrieb und Last und auch im Bereitschaftszustand.
Mit dem offiziellen Release von Confluence 4 und Java 7 ist es nunmehr auch an der Zeit beides zu vereinigen. Leider lief das ganze nicht so ganz problemlos, nach dem Umstellen des JDK gab es eine Menge Fehlermeldungen im Confluence Logfile und auch die Darstellung war offensichtlich defekt.
Die Loesung sah schliesslich so aus:

  • Zum einen der OSGi Laufzeitumgebung von Confluence mitteilen, welche Klassen ueber den Tomcat Classloader geladen werden sollen -Datlassian.org.osgi.framework.bootdelegation=META-INF.services,com.yourkit,com.yourkit.*,com.jprofiler,com.jprofiler.*,org.apache.xerces,org.apache.xerces.*,org.apache.xalan,org.apache.xalan.*,sun.*,com.sun.jndi.,com.icl.saxon,com.icl.saxon.*,javax.servlet,javax.servlet.*,com.sun.xml.bind.*
  • Zum anderen einmal im Confluence Homeverzeichnis den OSGi Cache leeren cd $confluence-home/plugins-osgi-cache
    rm -r *

Beim nächsten Start funktioniert Confluence sogar mit dem aktuellen Tomcat 7 – verbraucht weniger RAM und ist subjektiv auch noch schneller.

Ubuntu HDMI (kein) Sound

Geschrieben von everflux am Oktober 14th, 2011

Seit meinem neuen Computer (und Ubuntu Oneric) ist mein zweiter Monitor per HDMI Kabel angeschlossen. Das Problem: Per HDMI ist neben Bild- auch ein Tonausgabegerät und wird als Default Device verwendet. Damit ist dann teilweise nichts zu hören – offenbar ist das jedoch Anwendungsabhängig.

Als Lösung habe ich mir pragmatisch ein virtuelles pulseaudio device eingerichtet, dass auf alle Geräte den Sound dann ausgibt. Dazu installiert man sich das Paket „paprefs“

sudo apt-get install paprefs

und starte diese („paprefs“). Auf dem Reiter „simultaneous output“ (im englischen) kann dann ein virtuelles Gerät aktiviert werden, dass die Ausgabe auf alle Geräte weiterleitet.

Ubuntu Oneiric: Netbeans Master-Passwort / Keyring Integration

Geschrieben von everflux am Oktober 14th, 2011

Schon in frühen Beta Versionen von Ubuntu 11.04 / Oneiric hat Netbeans mich ständig nach einem „Master Password“ gefragt, mit dem gespeicherte Passwörter von Netbeans gegen unbefugten Zugriff verschlüsselt werden.

Das ist nervig, denn bisher ging es auch ohne – dabei nutzt Netbeans die von modernen Betriebssystemen bereitgestellte native Infrastruktur um Passwörter zu speichern. (z.B. Keychain auf dem Mac, Gnome-Keyring o.ä.) Normalerweise funktioniert das auch – aber seit Gnome 3 hat sich da offenbar etwas geändert.

Debuggen kann man die Netbeans Keyring Integration indem man folgende Option in der etc/netbeans.conf zu den netbeans_default_options ergaenzt:

-J-Dorg.netbeans.modules.keyring.level=0

Anschließend sieht man in ~/.netbeans/7.0/var/log/messages

FINE [org.netbeans.modules.keyring.kde.KWalletProvider]: application exit with code 2 for commandString: [qdbus, org.kde.kwalletd, /modules/kwalletd, org.kde.KWallet.isEnabled]; errVal: Service 'org.kde.kwalletd' does not exist.
FINE [org.netbeans.modules.keyring.gnome.GnomeProvider]
java.lang.UnsatisfiedLinkError: Unable to load library 'gnome-keyring': libgnome-keyring.so: cannot open shared object file: No such file or directory
at com.sun.jna.NativeLibrary.loadLibrary(NativeLibrary.java:163)
at com.sun.jna.NativeLibrary.getInstance(NativeLibrary.java:236)
at com.sun.jna.Library$Handler.<init>(Library.java:140)
at com.sun.jna.Native.loadLibrary(Native.java:379)
at org.netbeans.modules.keyring.gnome.GnomeKeyringLibrary.<clinit>(GnomeKeyringLibrary.java:62)
[catch] at org.netbeans.modules.keyring.gnome.GnomeProvider.enabled(GnomeProvider.java:88)
at org.netbeans.api.keyring.Keyring.provider(Keyring.java:72)
at org.netbeans.api.keyring.Keyring.save(Keyring.java:109)
at org.netbeans.modules.j2ee.deployment.impl.ServerRegistry$5.run(ServerRegistry.java:731)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1424)
at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:1968)

Nachdem ich sichergestellt habe, dass die Library installiert ist:

sudo apt-get install libgnome-keyring0
Reading package lists... Done
Building dependency tree
Reading state information... Done
libgnome-keyring0 is already the newest version.

bleibt die Frage: Wieso findet Netbeans die gesuchte Library nicht? Die Lösung: Die Gnome Keyring Library ist nur noch mit einem anderen Dateinamen verfügbar, mit angehängter „0“. Das gab es zwar früher schon immer, dass die Libraries ohne Versionsnummer (oder was das ist) lediglich ein Symlink auf die „echte“ Library waren, aber immerhin gab es die. (Da gibt es bestimmt einen guten Grund und viel Logik für, dass das abgeschafft wurde – mir erschließt sich das jedoch nicht.)
Der simple Work-Around ist daher:

sudo ln -s /usr/lib/libgnome-keyring.so.0 /usr/lib/libgnome-keyring.so

und danach funktioniert Netbeans wieder tadellos. Also gab es offenbar keine inkompatiblen API Änderungen, sondern „lediglich“ eine Änderung des Library-Namens. Ob das ein Ubuntu/Debian Paketierungsproblem ist, oder ab Gnome 3 einfach die neue Marschrichtung, kann ich nicht sagen.

Update: Ich hab dazu ein Bug im Netbeans Issuetracker aufgemacht. Wer voten möchte – gerne: http://netbeans.org/bugzilla/show_bug.cgi?id=203735

Oneiric update auf VM Gast bricht ab

Geschrieben von everflux am Oktober 14th, 2011

Wer einen KVM/VM Gastsystem dass mit „vmbuilder“ erstellt wurde auf Ubuntu Oneiric updaten möchte wird möglicherweise diese unschöne Überraschung erleben:


A fatal error occurred

Please report this as a bug and include the files
/var/log/dist-upgrade/main.log and /var/log/dist-upgrade/apt.log in
your report. The upgrade has aborted.

Ein Blick in die genannten Logdateien hilft weiter:

2011-10-14 08:39:47,147 DEBUG creating statefile: '/var/log/dist-upgrade/apt-clone_system_state.tar.gz'
2011-10-14 08:39:56,877 DEBUG lspci failed: [Errno 2] No such file or directory
2011-10-14 08:39:56,920 DEBUG lsb-release: 'natty'
2011-10-14 08:40:00,162 ERROR not handled exception:
Traceback (most recent call last):

Da schlägt der Aufruf von „lspci“ fehl. Das Paket ist in dem per vmbuilder unter lucid erstellten System nicht installiert, und wurde auch bei den nachfolgenden Updates nicht als Dependency deklariert und somit nicht installiert.
Installiert man das Paket kurzerhand selbst

sudo apt-get install pciutils

funktioniert danach das Update auf den ersten Blick auch fehlerfrei.

Firefox/Chrome, Office: Paste plain text (ohne Formatierung)

Geschrieben von everflux am Oktober 13th, 2011

Inzwischen sind wysiswg-Editoren wie TinyMCE oder der (seit Version 4 obligatorische) Rich Text Editor im Confluence Wiki on vogue.

Manchmal möchte man sich jedoch nur Inhalte ohne Formatierungen von einer anderen Webseite/Wikiseite oder einem Dokument übernehmen. Bisher war meine „Lösung“ dazu, den Text in gedit oder einem anderen reinen Texteditor einzufügen und dann wieder dort heraus zu kopieren. Etwas umständlich – da gibt es aber eine Lösung für:

In Google Chrome,  Chromium, Firefox und OpenOffice/LibreOffice gibt es dafuer ein Shortcut: Mittels STRG-SHIFT-V (bzwl. ctrl-shift-v) wird ohne Formatierung eingefuegt.

Lediglich AdblockPlus User und Confluence User haben ein Problem: Genau das Kürzel wird bereits verwendet. In Adblock Plus kann dies nicht über die GUI deaktiviert werden, sondern muss über „about:config“ fuer den Schlüssel „extensions.adblockplus.sidebar_key“ umgestellt werden. Nach einem Neustart von Firefox funktioniert es dann wie gewünscht.

Ubuntu Oneiric: Latex Papierformat

Geschrieben von everflux am Oktober 7th, 2011

In Ubuntu Oneiric hat sich ein Patch eingefunden, der dafuer sorgen soll, dass das Papierformat nicht zu A4 im Default wird. Das sorgte bei mir dafuer, dass auch Dinge, die eigentlich A4 werden sollten im US-Letter Format als PDF generiert wurden.

Die Loesung dafuer sieht so aus, dass man entweder mit den Kommandos \pdfpageheight und \pdfpagewidth das Ausgabeformat korrekt setzt, oder ein Package verwendet, dass sich bereits darum kuemmert. Das ist Beispielsweise das „geometry“ Paket: \usepackage{geometry}

Wenn man eigene Vorlagen verwendet, kann man das Geometrie Paket so einbinden: \RequirePackage{geometry}

Facebook: Instant Login per Mail

Geschrieben von everflux am Oktober 2nd, 2011

Das ist mal eine Idee, die ich super finde! Schon bei der ersten fehlerhaften Eingabe beim Facebook Login erhält man eine E-Mail von F8, die zum einen den direkten Zugang zu Facebook („Instant Login“) ermöglicht, zum anderen auch Hilfe bei Passwort und Login Problemen anbietet.
Ich finde das einen sehr unaufdringlichen Kundenservice, der zudem auch Hinweise liefert, falls jemand mit dem eigenen Facebook Account rumbastelt. (Schade nur, das nicht noch weitere Details im „kleingedruckten“ enthalten sind.)

Ich habe hier das „Mitgedacht“ Gefühl, dass ich oft bei Software und Anbietern vermisse. Man merkt, dass ein Teil der Facebook Belegschaft von Google abgewandert ist. Ich interpretiere das zumindest hier mal rein 🙂


http://everflux.de/
Copyright © 2007, 2008 everflux. Alle Rechte vorbehalten. All rights reserved.