#
Archive for Mai, 2006

Absolutes Layout

Des öfteren benötigt man einen LayoutManager in Java, mit dem man die Positionen der enthaltenen Komponenten frei wählen kann. Setzt man den LayoutManager auf null, so kriegt man gar nichts zu sehen. Und wenn man es doch noch schafft, indem man allen Komponenten mit Hilfe von setBounds eine Position gibt, machen Componenten, wie JScrollPane schlapp, da sie keinerlei Informationen über preferred-, min- und max-Size erhalten.
Der folgende Layoutmanager ermöglicht es, Komponenten beliebig zu platzieren, und berechnet dennoch eine plausible preferred-, min- und max-Size für die Elternkomponente, indem es feststellt, welche Breite und Höhe notwendig ist, um die Komponenten an den äußersten Rändern noch anzuzeigen.
    »more…

XMLBeans & dynamische Schemavalidierung

In letzter Zeit arbeite ich sehr viel mit der sehr guten XMLBeans API von Apache. Anbei ein kleines Programm, welches ein SchemaTypeLoader Objekt aus einer XSD Datei erzeugt und diese zum Validieren einer XML Datei benutzt.
    »more…

Buchstabensalat

Jeder kennt sie: Buchstabensalat Rätsel in Zeitschriften. Eigentlich perfekt geeignet, um diese im Computer zu lösen.
    »more…

Wachsende Korallen

Vor einiger Zeit hatte ich eine kleine Game Of Life Simulation geschrieben. Inzwischen habe ich die Klassen dieser Simulation generalisiert, refaktoriert und daraus eine kleine API für Automatensimulationen im Stil von Game Of Life gemacht.
    »more…

Jsp Fileuploads

Apaches Fileupload API ist ein sehr nützliches Tool, um Dateiuploads aus Multipart-MIME Formularen einer Webseite in Jsps zu nutzen, da leider die HttpServletRequest Klassen solche Streams nicht automatisch Behandeln können.
Die Fileupload API enthält Klassen, welche die Datei Uploads in einem temporären Verzeichnis des Webservers ablegen (DefaultFileItem, DefaultFileItemFactory). Doch meistens möchte man diese Daten direkt verarbeiten oder in einer Datenbank speichern und der Umweg über das temporäre Uploadverzeichnis erscheint überflüssig, oder bereitet sogar wegen eines Virenscanners Probleme.
In solchen Fällen helfen die folgenden Erweiterungen der Fileupload API, welche die Fileuploads im Speicher halten.
    »more…

Schönheits OP für Swing

Das Pluggable Look & Feel (LF) Prinzip in Swing ist bekannt, doch wo findet man, außer den Standard „Metal“ und „Windows“ LFs von Java neue und frische Look & Feels?
Unter www.javootoo.com liegt eine kleine Sammlung von frei erhältlichen Pluggable Look & Feels für Java bereit.

Lucene

Lucene ist eine API zur volltextindizierung von Dokumenten und damit einer der vielen Schätze der Open Source Gemeinde, zu finden bei Apache.org.
Während der Markt für Volltextindizierung hauptsächlich kommerzielle Produkte im Enterprisebereich und diverse freie Desktopsuchen anbietet, ermöglicht die Open Source API von Lucene Java Entwicklern freien Zugang zu solchen Funktionalitäten, sei es, um diese in eigenen Anwendungen zu nutzen, oder einfach um eine eigene Archivdatenbank zu erstellen.
    »more…

Tool of the day: SQuirreL

Bei SQuirreL handelt es sich um einen SQL Datenbank Client mit sehr vielen Funktionen, wie Autocomplete für Spalten- und Tabellennamen, Visualisieren von Tabellenstrukturen und allem möglichen und unmöglichen Schnickschnack. Das Werkzeug ist sehr gut, sehr umfangreich, aber Stellenweise auch langsam, da es 100% pure Java ist. Dafür kann es sogut wie alles, was man auch von einem kommerziellen Vorreiter, wie etwa Toad für Oracle, kennt. Sogut wie jede Datenbank wird über ihren JDBC-Treiber unterstützt. Und: es ist frei und Open Source.
Hier downloaden.