Archive for the ‘Programmieren’ Category

iKeePass

Saturday, July 12th, 2008

Nachdem ich mir die letzten Tage mal das Entwicklen von Anwendungen für das iPhone mit dem Apple SDK angesehen habe, hier ein erstes kleines Ergebnis:

Ich habe als kleines Übungsprojekt die Passworttresor Anwendung KeePass auf das iPhone portiert. Hier ganz links zu sehen im Vergleich mit der gleichen Datenbank unter KeePass und KeePassX.
iPhone Anwendungen sind ja von der Oberfläche stark reduziert, wie man auch hier deutlich sehen kann.
Nachdem überall zu lesen war, dass die IDE xcode und die ganzen APIs von Apple und Cocoa so einfach zu verwenden sind, war ich doch stark enttäuscht. Die IDE xcode fühlt sich für mich wie eine IDE aus der Zeit Ende 80er/Anfang 90er an, und wenn man von die letzten Jahre Eclipse gewohnt dann tut die Arbeit mit xcode fast körperlich weh. Die Cocoa&Co APIs finde ich auch mehr als gewöhnungsbedürftig. Unter objektorientierter Entwicklung verstehe ich ehrlich gesagt etwas anderes.
Die iKeePass Anwendung werde ich – wenn alles gut geht – innerhalb der nächsten Tage als kostenlose Anwendung in das Apple AppStore einstellen.

Update: Da ich die nächsten 2 Wochen in Urlaub bin, wird eine Veröffentlichung leider erst in der zweiten August Hälfte starten.

Eclipse Ganymede startet nicht auf OSX

Friday, June 27th, 2008

Nachdem das neue Eclipse Sammelpaket Ganymede jetzt schon einige wenige Tage schon verfügbar ist, habe ich es heute mal gezogen. Ich war natürlich schon etwas überrascht, das auf meinem OSX Leopard System sich erst einmal gar nichts getan hat.
Also erst einmal ein Startversuch unter der Konsole:

open /Applications/Java/eclipse-ganymed/Eclipse.app/
LSOpenFromURLSpec() failed with error -10810 for the file /Applications/Java/eclipseganymed/Eclipse.app

Das ist natürlich überhaupt nicht das, was man erwartet. Die Fehlermeldung -10810 deutet laut Google aber auf ein Rechteproblem hin. Das Eclipse Applikations Paket selbst hat alle Ausführungsrechte. Also mal ein

chmod -R a+x Eclipse.app

ausprobiert und siehe da es funktioniert!

Das erste und für mich wichtigste Plugin ist das Mylyn Plugin, um mich direkt aus Eclipse heraus mit Mantis verbinden zu können.
Die Eclipse Update Seite für Mylyn Version 3 lautet:

http://mylyn-mantis.sourceforge.net/eclipse/dev/update/site.xml

Enigma

Thursday, April 10th, 2008

Sachen gibts: eine Enigma “Maschine” im Papierformat.

Die Wahrheit

Wednesday, April 2nd, 2008

Auch zu kaufen hier.

iPhone SDK

Wednesday, March 12th, 2008

Eclipse & Standardsettings ändern

Monday, February 25th, 2008

Manchmal ist es notwendig, innerhalb eines Java Quellcodes mehrzeilige Literal Strings einzufügen.
In den Eclipse Standardsettings werden diesen nicht automatisch umgebrochen und zeilenweise mit Anführungszeichen gequotet. Diese Funktion kann man aber aktivieren:

Windows->Preferences->Java->Typing

und dann die beiden Optionen

Wrap automatically

sowie

Escape text when pasting into a string literal

aktivieren.

Merkwürdigerweise ist diese Option nicht per default aktiviert. Das kann einem bei der Arbeit mit jdbc, hql oder xml Strings eine Menge Zeit sparen.

Java & Chart Grafiken

Saturday, February 23rd, 2008



Wenn man in Java Web Anwendungen Charts darstellen will, kann man z.B. die Bibliothek JFreeChart verwenden. Noch einfacher wird es, wenn man das Projekt Eastwood verwendet. Das ist ein Servlet, dass JFreeChart um Google Chart API kompatible Funktionen erweitert. Einfach anzuwenden, sehr gute Ergebnisse.
Auf jeden Fall zu empfehlen.

Java, Zertifikate&keygen

Saturday, February 16th, 2008

Um ein neues Zertifikat zu erstellen, das man in Java verwenden kann, muss man das mitgelieferte Tool keygen verwenden. Hier ein Beispiel:

keytool -genkey -v -keyalg RSA -alias tomcat -keypass KENNWORT1 -storepass KENNWORT -dname “CN=Karsten Fusenig OU=fusenigk.de, O=-, L=Berlin, S=Berlin, C=DE”

Java&Zertifikate

Wednesday, February 13th, 2008

Nachdem ich eine Java Anwendung, die eine SSL Verbindung zu einem Server aufbaut von einem Mac Rechner auf einen Linux Rechner kopiert habe, kann die SSL Verbindung nicht mehr aufgebaut werden:

javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.
at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:150)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1518)
at com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Handshaker.java:174)
at com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Handshaker.java:168)
at com.sun.net.ssl.internal.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:848)
at com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:106)
at com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Handshaker.java:495)
at com.sun.net.ssl.internal.ssl.Handshaker.process_record(Handshaker.java:433)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:818)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1030)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:622)
at com.sun.net.ssl.internal.ssl.AppOutputStream.write(AppOutputStream.java:59)
at java.io.OutputStream.write(OutputStream.java:58)

Auf dem Mac habe ich die Zertifikate für den Server nicht in dem lokalen System eingespielt, was auch nicht notwendig war. Auf dem Linux System ist das offensichtlich aber notwendig.
Auf einem Sun Java Blog findet sich hierzu eine Anleitung und ein Java Programm, mit dem man die Zertifikate vom SSL Server direkt auslesen und in die lokale Zertifikate DB speichern kann.

Nicht vergessen, die neu erstellte Keystore Datei jssecacerts in das Verzeichnis $JAVA_HOME/jre/lib/security zu kopieren. Danach funktioniert dann alles wie gewünscht und die SSL Verbindungen können auch von einem Linux System aus aufgebaut werden.

Neue Goolge API: SocialGraph

Sunday, February 3rd, 2008

Es gibt mal wieder etwas Neues von Google: Google SocialGraph.