Geschrieben von everflux am Februar 6th, 2010
Videos sind im Internet verbreitet – und mit ihnen Adobe Flash. Flash Videos zu speichern gelingt mit Firefox und passenden Addons/Extensions sehr leicht.
Etwas kniffliger wird die Sache, wenn man es mit einem gestreamten Video zu tun hat. Solche Flash Videos werden nicht mit HTTP ausgeliefert, sondern durch das RTMP Protokoll (Real Time Messaging Protokoll).
Nun ist aber das Speichern von Flash Video Streams auch interessant, vor allem wenn man ein Video mal unterwegs oder offline schauen möchte. (Wie die rechtlichen Implikationen beim Speicher von Flash Stream Videos sind, weiss ich nicht. Ich halte da vieles für denkbar in Deutschland und der EU.)
Wer keine Angst vor der Kommandozeile hat, findet mit dem Tool rtmpdump eine praktische und auch funktionierende Lösung. Leider findet sich rtmpdump noch nicht in den Ubuntu Repositories, und auch Debian hat meines Wissens kein Paket dafür. Dafür ist lässt sich das rtmpdump Programm jedoch sehr schnell und einfach selber übersetzen. Man bekommt die aktuellen Source auf http://rtmpdump.mplayerhq.hu/ Weiterlesen »
Geschrieben von everflux am Februar 5th, 2010
Google schafft es immer wieder cool, um nicht zu sagen charmant zu sein. Diese Exception kam beim duplizieren einer Präsentation unter Google Docs:

Wer kann da böse sein? Besonders angenehm finde ich:
- Google bedankt sich dafür, dass man mitgeholfen hat, einen Bug zu finden
- Eine Entschuldigung gibt es auch
- Aus der Meldung wird klar, dass es sich jemand ansehen wird, ohne dass man einen Fehler melden muss o.ä.
- Und ganz besonders für technisch interessierte gibt es einen Ausschnitt aus dem Stacktrace, so dass nicht das Gefühl aufkommt, man würde irgendwie lediglich abgespeist
Nicht zu vergessen sind die Google Docs und Writely Entwickler auch nur Menschen – irgendwie beruhigend, dass auch bei denen NullpointerException auftreten können….
Geschrieben von everflux am Februar 2nd, 2010
Wer unter besonders schwer zu diagnostizierenden Fehlern unter Debian testing leidet, die im Zusammenhang mit Java oder Java Applikationen auftauchen, könnte von dem Bug 560056 erwischt worden sein, den das netbase Paket eingeführt hat.
Dabei wird das sysctl Setting
net.ipv6.bindv6only=1 in /etc/sysctl.d/bindv6only.conf
gesetzt, welches dann z.B. Socket Exceptions (invalid argument) nach sich zieht.
Eine schnelle Lösung des Problems:
Die Datei /etc/sysctl.d/bindv6only.conf editieren und das Setting auf “0″ umstellen. Danach:
sudo invoke-rc.d procps restart
Der Fehler könnte auch Ubuntu Systeme betreffen, die eine enstprechende Kerneleinstellung haben. Weiterlesen »
Geschrieben von everflux am Januar 29th, 2010
Da hat man schon so ein grosses Fenster – und dann fehlt Windows.

Geschrieben von everflux am Januar 26th, 2010
Am Mittwoch dem 27.01.2010 findet im Hörsaal Leo18 auf dem Leonardocampus (am Johann-Krane-Weg zwischen der Eishalle und dem Technologiepark http://tinyurl.com/jugmsleo18) ein Vortrag von Matthias Wessendorf und Bernd Bohmann zu dem Thema JavaServer Faces 2.0 statt.
Seit dem Sommer 2009 ist die JSF 2.0 Version “final”. Der Vortrag stellt die wesentlichen Bestandteile der neuen Version vor. Anschließend gibt es einen aktuellen Status zu Apache MyFaces 2.0, dass eine Alternative zur SUN RI (Mojarra) darstellt.
Nach dem Vortrag gibt es die Möglichkeit zum Erfahrungsaustausch und natürlich Socialising mit der JUG Münster, den Referenten und allen Gästen statt.
Agenda:
| 18:30 | Einlass
| 19:00 | Vortrag: JavaServer Faces 2.0
Um die Anzahl der Besucher abschätzen können wäre es schön wenn sich alle Interessenten unverbindlich unter http://tinyurl.com/talkletsanmeldung anmelden würden.
Für Getränke und einen einfachen Snack ist gesorgt, ansonsten ist der Burger King direkt gegenüber. Ich würde mich freuen vielleicht auch den einen oder anderen Blogleser zu treffen.
Geschrieben von everflux am Januar 14th, 2010
Netbeans hat einen sehr guten Support für Maven, Maven Projekte werden genauso gut behandelt, wie die ant basierten nativen Netbeans Projekte.
Doch an einer Stelle hakt es etwas: Moechte von Maven dependencies auch den Source Code bzw. JavaDoc zur Verfuegung haben, reicht es nicht, wenn man (wie üblich) ueber die Maven Properties
<downloadSources>true</downloadSources> und <downloadJavadocs>true</downloadJavadocs> den Download aktiviert. Weiterlesen »
Geschrieben von everflux am Januar 13th, 2010
Das habe ich bisher noch nie gesehen. Die gesamte Webseite an Google geopfert! Aber von vorne: SpringSource, der Hersteller des Spring Framework, bietet auf seiner Webseite Downloads und andere interaktive Elemente an.
Auf der Webseite kommt Google Analytics zum Einsatz, und natürlich auch JavaScript. Das frappierende: Ist JavaScript deaktiviert, oder Google Analytics geblockt, funktioniert die Webseite nicht mehr richtig. In der Tat hat damit SpringSource, die Firma die stets “loose coupling” und “keine Abhängigkeiten” als Verkaufsargumente nutzte eine Abhängigkeit zu Google eingeführt.
Weiterlesen »
Geschrieben von everflux am Januar 7th, 2010
Java benoetigt eine ganze Menge an verschiedenen Klassen, selbst um einfache Programme auszuführen. Ich habe mich mit den verschiedenne JVM Optionen der Sun Java virtual machine beschäftigt. Seit Java 5, bzw. dem JDK 5, gibt es Classdata sharing. Nicht nur, dass die Daten geshared werden können, sie koennen sogar fuer die Plattform aufbereitet werden, und können dann per memory map einer einzelnen Datei eingeblendet werden.
Das reduziert die Startzeit natürlich enorm – bei groesseren Programmen wie z.B. Eclipse fällt das jedoch geringer ins Gewicht, da es sich um Fixkosten handelt.
Diese Cache Datei lässt sich mittels
sudo java -client -Xshare:dump (bzw. -server )
generieren. Der Effekt zeigt sich bei einem kleinen Programm am deutlichsten:
Um sicher zu stellen, dass der Systemcache nicht die Ergebnisse zu sehr beeinfluss, habe ich vor jedem Testlauf
echo 3 > /proc/sys/vm/drop_caches
durchgeführt. Hier die niedrigsten Werte von fünf Läufen ohne und mit Classdata sharing dump.
time java -client Demo
Demo for Fibonacci numbers:
Fibonacci 3: 5
real 0m3.050s
user 0m0.112s
sys 0m0.092s
Mit classdata sharing
time java -client Demo
Demo for Fibonacci numbers:
Fibonacci 3: 5
real 0m1.614s
user 0m0.056s
sys 0m0.052s
Man sieht deutlich, dass sich die Ersparniss bei einem kleinen Programm deutlich bemerkbar macht, jedoch lediglich bei kalten Cache. Sobald das Betriebssystem die nötigen Daten im eigenen Cache hat, fällt die Ausführungszeit auf deutlich unter 100ms. Bei der Server JVM ist von dem Cache aufgrund des initialen Compilevorgangs und der Optimierung auf hohe Ausführungsgeschwindigkeit im Gegensatz zur Startgeschwindigkeit bei der Client VM sowieso kaum noch etwas zu spüren. In so fern dürfte das auf der Devoxx 2009 angekündigte Update des JAR Formats erheblich mehr bringen.
Geschrieben von everflux am Dezember 30th, 2009
Es kam die Frage auf, wie man bei einer Web Anwendung, bei der die Ausgabe vorgegeben ist, die Präsentation anpassen kann. Ohne eben die Web Anwendung ändern zu müssen.
Wenn man auf die Ausgabe gewissen Einfluss hat (z.B. über Templates), so kann man mit JavaScript und jQuery sehr einfach Anpassungen vornehmen – sogar aufgrund des HTML Inhalts. (In diesem Fall ging es um die optische Anpassung von Tabellen Zeilen, wenn es sich um premium Kunden handelt.) Weiterlesen »
Geschrieben von everflux am Dezember 21st, 2009
Confluence ist eine wirklich ausgezeichnete Wiki Software – um nicht zu sagen das Wiki, das man möchte. Dank des 10 Dollar Starter-Angebot von Atlassian lohnt sich Confluence auch für den Einsatz in der Familie, für kleine Projekte, Start-Ups etc. – und ich möchte nie wieder zu MediaWiki o.ä. zurück. (Selbst der einzige Grund, der gegen Confluence als Wiki sprechen könnte, nämlich dass keine Erfahrung für den Betrieb von Java Webanwendungen vorhanden ist, greift hier nicht weit: Confluence wird als komplettes Bundle incl. Webserver etc. ausgeliefert, und braucht lediglich gestartet zu werden.)
Ich hatte jetzt jedoch den Fall, dass ich gerne Inhalte im Wiki pflegen wollte, diese jedoch sowohl beim Ausdrucken als auch für den PDF Export verborgen werden sollten. (Username/Passwort für ein kleineres Projekt, sowie einzelne Notizen.)
Die Idee: Über das {span} Macro kann einem Abschnitt eine CSS Klasse zugewiesen werden – noprint ist dabei die Klasse, die in der Druckansicht verborgen wird. Leider hat das Default PDF Stylesheet von Confluence keine Regeln für die .noprint Klasse vorgesehen, doch dies läßt sich relativ schnell ändern: Für einen Bereich kann ein eigenes CSS Stylesheet für den PDF Export angelegt werden. Hier legt man dann einfach fest, dass die noprint Klasse nicht angezeigt werden soll. (Übrigens gibt es auch eine print-only Klasse, wenn man den umgekehrten Effekt erzielen möchte. Doch auch hier ist das PDF Stylesheet eben genau so konfiguriert, dass es nicht im PDF, nicht auf dem Monitor, aber im Ausdruck erscheinen würde.)
Mein komplettes Confluence PDF Stylesheet für den Bereich sieht damit so aus: (A4 Papierformat und die Regel um noprint auszuschließen:)
@page
{
/*The A4 paper size is 210 mm wide by 297 mm high*/
size: 210mm 297mm;
}
.noprint
{
display: none;
}
In einem Artikel verwende ich dann folgendes Markup (Wiki Markup):
{span:class=noprint}
Hier stehen wichtige Hinweise, die nur auf dem Bildschirm angezeigt werden sollen.
{span}
Neue Kommentare