Netbeans 6.7 release

Geschrieben von everflux am Juni 29th, 2009

Netbeans 6.7 ist als finale Version verfügbar. Auch wenn auf der Netbeans Homepage noch der RC beworben wird, führt der Download schon auf die endgültige Version. (So ganz fertig ist das zwar noch nicht, der Rest soll dann aber über das Update Center nachgereicht werden.)

Die Neuerungen sind vor allem „Cloud“ (Kenai) Integration, bessere CI Integration (Hudson z.B.) und Integration mit Issuetrackern. (Bei einem Commit können dann direkt Issues geschlossen werden.) Aber auch die Unterstützung für verschiedene Sprachen und Frameworks (PHP, Rails, Groovy, Grails, …) wurde stark verbessert. Details finden sich auf der Übersichtsseite zum Netbeans 6.7 Release und in den Release Notes zu Netbeans 6.7, wer Netbeans noch garnicht kennt kann einen Blick auf die Features werfen.

Und meine Liebslingsneuerung: Dateien können nun inklsusive Dateiendung umbenannt werden….

Gnome Notify mit Java…

Geschrieben von everflux am Juni 18th, 2009

Unter Gnome gibt es die Möglichkeit Benachrichtigungen für den Nutzer über eine einheitliche Benachrichtigungsinfrastruktur anzuzeigen. Speziell in Ubuntu Jaunty wurden einige Programme, z.B. Pidgin modifiziert um von den Möglichkeiten des „notify“ Frameworks Gebrauch zu machen.
Die „notify“ Implementierung unter Gnome und Ubuntu bietet dabei Benachrichtigungsdienste über das D-Bus Protokoll von freedesktop.org an und stellt diese daher einmal per D-Bus und einmal über die „libnotify“ an.
Möchte man sich diese Dienste zu nutze machen, stehen daher prinzipiell die Wege über D-Bus, libnotify zur Verfügung. Aufgrund der Einfachheitheit kann prinzipiell auch ein Kommandozeilenprogramm aufgerufen werden, dass über libnotify Benachrichtigungen nativ absetzt. Da dies der einfachste Weg ist – und grundsätzlich unabhängig von Java funktioniert – stelle ich dies zunächst vor.
Zuerst gilt es libnotify-bin zu installieren, das Programm ermöglicht nun per notify-send Benachrichtigungen abzusenden:
sudo apt-get install libnotify-bin
Eine kurze Hilfe zu notify-send gibt es per –help:
notify-send --help
Und so kann dann ein Beispielaufruf aussehen:
notify-send "JavaOne 2009" "JavaOne - all screens of your life. (except iPhone currently)"
gnome-notify-image

Um mittels Java Benachrichtigungen zu versenden stehen nun die bereits erwähnten Möglichkeiten über Java D-Bus (funktioniert dann bei KDE und Gnome) oder über die Java-Gnome Bindings zur Verfügung. Diese laufen dann jedoch auch nur unter Gnome.
Da ich die Java D-Bus Bindings nicht kompilieren konnte, und seit dem 2.6. dank Serkan Kaba auch in Java-Gnome die libnotify Notification Bindings enthalten sind, habe ich diese näher betrachtet.

Erst in dem kommenden Release von Gnome-Java werden die neuen libnotify Java Bindings enthalten sein, wer nicht warten möchte, wird per Bazaar einen Checkout von http://research.operationaldynamics.com/bzr/java-gnome/mainline/ vornehmen müssen.

Folgende Abhängigkeiten sollten ggf. erfüllt werden – z.B. per apt-get:
junit libgtk2.0-dev libglade2-dev libgtksourceview2.0-dev libglib-dev
Danach kann man dann auschecken und bauen:
bzr checkout bzr://research.operationaldynamics.com/bzr/java-gnome/mainline
cd mainline/
./configure
make

Und hier war dann bei mir erstmal Schluss. Trotz aller Abhängigkeiten war leider keine Übersetzung möglich. Theoretisch hätte es so weitergehen sollen:

in /tmp finden sich dann die Ergebnisse:
tmp/gtk-4.0.jar
tmp/libgtkjni-4.0.11.so

Ohne lokale Installation lassen sich diese Artefakte bereits nutzen – dafür muss lediglich der Classpath angepasst werden.
Eine mitgelieferte einfache Demo könnte folgendermaßen ausgeführt werden, wenn man sich noch im von Bazaar ausgecheckten Verzeichnis befindet:
make demo

bzw:
javac -classpath tmp/gtk-4.0.jar -d tmp/tests doc/examples/button/ExamplePressMe.java
java -classpath tmp/gtk-4.0.jar:tmp/tests button.ExamplePressMe

Last – but not least – kann auch über JNA https://jna.dev.java.net/ libnotify verwendet werden. JNA bietet ohne den „Umweg“ über JNI die Möglichkeit auf native Bibliotheken zuzugreifen.
Hier gab ich vorerst auf, da ich mir nur eine feste Zeit für das Projekt „notify und Java“ nehmen wollte. JNA ist derzeit für mich der vielversprechendste Ansatz, doch dafür müssen die Java Interfaces zum nativen Code noch erstellt werden. Ein Hilfsmittel dazu ist das noch recht junge „jnaerator“ , doch ließ sich dies aufgrund einiger Bugs zum Testzeitpunkt leider nicht einsetzen.

Und so – finally – die Lösung, die funktioniert: Einfach notify-send aufrufen.

JavaOne 2009

Geschrieben von everflux am Juni 17th, 2009

Zurück von der JavaOne 2009 – und jetzt möchten alle wissen „wie war es“. „Anders als erwartet“. Die großen Ankündigungen fehlten mir dann doch etwas – vom Hocker gehauen haben mich diesmal mehr die Partys und socialising als die General Sessions.

Auch dem Pavillion habe ich dieses Jahr deutlich mehr Zeit als im letzten eingeräumt, und so eine Menge interessanter Gespräche geführt. Starkes Augenmerk habe ich auf Tipps und Erfahrungsberichte zum Thema User-Group-Building gerichtet, doch auch OpenSolaris und VirtualBox bekamen verdiente Aufmerksamkeit. Java selbst war in so fern weniger in meinem Fokus als das „drumherum“. Auch die Neuerungen die Sun für den „Sun certified Java Programmer plus“ einführen möchte, konnte ich eingehend anschauen. Hierzu kann ich nur sagen: Klasse Idee, ich bin gespannt wie die Umsetzung wird.

Dass sich auch ein Talk der CommunityOne mit „Ubuntu in the clouds“ beschäftigte, in dem Ubuntu One und die weitere Strategie von Canonical für Ubuntu und Cloudcomputing erörtert wurde fand ich sehr angenehm. Das zeigt, dass Sun sich hier wirklich offen gibt. (Hier könnte sich der OpenSolaris Produktmanager auch noch abgucken OpenSolaris security updates zur freien Verfügung zu stellen, und schon könnte OpenSolaris eine interessante Alternative zu Ubuntu auch für den tatsächlichen Einsatz werden.)

Schade, dass es Netbeans nicht zur JavaOne mit einem 6.7 Release geschafft hat – aber lieber einen RC als einen Flickenteppich.

Für alle an den Sessions interessierten: Die JavaOne 2009 Slides sind bei Sun online einsehbar, die aufgezeichneten Sessions folgen vermutlich in Kürze.

Wer Lust hat, beim die Münsteraner Java User Group beim Java Stammtisch zu besuchen sei hiermit herzlich dazu eingeladen.

Canoo Webtest: NullPointerException durch JavaScript

Geschrieben von everflux am Mai 15th, 2009

Canoo Webtest bietet seit einiger Zeit auch (begrenzte) Unterstützung für JavaScript. Das ist gerade zum Testen von Web 2.0 Anwendungen interessant, kann jedoch auch zu sehr merkwürdigen Fehlern führen.

In meinem Fall quittierte Webtest die Arbeit mit der hilfreichen Meldung
com.gargoylesoftware.htmlunit.ScriptException: Wrapped java.lang.NullPointerException
Weiterlesen »

Canoo Webtest: GUI monitor deaktivieren

Geschrieben von everflux am Mai 14th, 2009

Canoo Webtest ist ein auf ant und Groovy basierendes Framework zum automatisierten Testen von Webanwendungen. Anders als beispielsweise bei Selenium wird HTMLUnit als „Browser“ verwendet.

Die Dokumentation von Webtest läßt jedoch trotz der zeitlichen Reife des Projektes an einigen Stellen zu wünschen übrig. Hier kann ein Blick in „webtest.xml“ sowie in „resources/build/WebTestReport.reference.xml“ im Installationsverzeichnis von Webtest etwas inspirieren. Weiterlesen »

Java logging: Netbeans, Eclipse und java.util.logging im Einsatz

Geschrieben von everflux am April 14th, 2009

Seit Java 1.4 gibt es das Paket java.util.logging, mit dessen Hilfe das Logging standardisiert wurde. Ich möchte an dieser Stelle jeder Wertung außen vor lassend einmal vorstellen, wie mithilfe der Java Logging API die Entwicklung in Netbeans und Eclipse (und anderen Entwicklungsumgebungen) erleichtert werden kann.

Insbesondere die Kombination von jUnit Tests und verschiedenen Logleveln bzw. Loghandlern kann das Leben eines Entwicklers drastisch vereinfachen und oft auch einen Debugger überflüssig machen. Weiterlesen »

Google Appengine: Java Cloud Anwendungen

Geschrieben von everflux am April 8th, 2009

Google hat heute angekündigt, dass die Google Appengine nun Java als Sprache unterstützt. Wie bereits lange spekuliert, ist also nun Google mit seinem Cloud Angebot in der Lage Java Anwendungen zu hosten.
Wer nun seine (web-)anwendungen bei Google hosten möchte, findet hier einen Überblick über die Entwicklerdokumentation.

Für Persistenz werden JDO und JPA unterstützt, die zugrundeliegende Java Virtual Machine (JVM) soll Java 6 unterstützen. Erstaunlich: Hier scheint nicht, wie oft spekuliert, Dalvic sondern wirklich eine (Sun?) JVM zum Einsatz zu kommen. Ich hatte eigentlich erst zur JavaOne 2009 damit gerechnet, dass eine entsprechende Ankündigung kommt. Vermutlich sah sich Google in Anbetracht des Wettkampfes um die „Cloud“ zur Eile genötigt. Weiterlesen »

Java/JavaFX -> iPhone + IpodTouch?

Geschrieben von everflux am März 5th, 2009

Sun hat mit JavaFX ein großes Vorhaben gestartet: JavaFX soll Java in einem Bereich populär machen, in dem Java ursprünglich brillierte: Rich Internet applications (RIA). Damals waren es die Java Applets, die für Lauftext, interaktive Menüs und ganze Lernprogramme eingesetzt wurde.

JavaFX soll eine neue Generation von Internet Anwendungen einläuten, Desigern wie Entwicklern neue Möglichkeiten an die Hand geben. Und mit JavaFX mobile soll die Philosophie „write once, run everywhere“ für mobile Anwendungen wahr(er) werden. JavaFX Mobile wird auf Blackberrys, Android und anderen Mobilgeräten laufen, solange zumindest JavaME vorhanden ist. (Die JavaFX Mobile runtime wird ggf. nachinstalliert) Auch wenn Nokia noch nicht offiziell im Boot ist, könnte ich mir eine entsprechende Ankündigung zur JavaOne gut vorstellen.

Doch was ist mit Java und dem iPhone von Apple? Auch der Apple ipod touch, der eine ähnliche Plattform wie das iPhone darstellt besitzt derzeit weder Flash noch Java Support. (Wenn man von einem Jailbreak Gerät absieht.) Weiterlesen »

Apobank und HBCI (fail)

Geschrieben von everflux am März 4th, 2009

Die liebe Apobank – ich find es schade, dass wohl mehr Geld in das Redesign und Branding geflossen ist, als dafür zu sorgen, dass die HBCI Schnittstelle vernünftig funktioniert.

Und neu sind die Probleme mit der Apobank und HBCI bei weitem nicht. Die ominösen Anzeigen im browser basierten Online-Banking thematisiere ich besser garnicht erst. Wie standardkonform und offen für Entwickler man sich hier gibt, zeigt schon die Art, wie Fehler gemeldet werden:

-> Server returned HTTP response code: 400 for URL:
https://hbcibanking.apobank.de:443/error_path/400.html
  -> Server returned HTTP response code: 400 for URL:
https://hbcibanking.apobank.de:443/error_path/400.html

Weiterlesen »

Monitoring: jVisualVM per Netzwerk

Geschrieben von everflux am März 3rd, 2009

Sun liefert in seinem Java Paket das Tool jVisualVM aus. Damit kann man einen Einblick in den inneren Ablauf der Java virtual machine (JVM) gewinnen. Mit dem zusätzlichen Plugin VisualGC auch in den garbage collector. Hier ein Blick auf den VisualGC der Netbeans beobachtet: Weiterlesen »


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