Da hat man gerade wichtige Entwicklungszeit darauf verwendet, einen erweiterten Vergleich von zwei Zeichenketten zu programmieren, nur um direkt danach festzustellen, dass bereits drei andere Kollegen sich des gleichen Problems angenommen haben. Um solche und ähnliche Situationen zu verhindern, bieten zahlreiche Bibliotheken, größtenteils aus der Open-Source-Welt, vorgefertigte Lösungen für wiederkehrende Problemstellungen.
Mit den Jakarta Commons stellt das Apache-Projekt eine umfangreiche Sammlung an frei verfügbaren Bibliotheken für die Programmierung mit Java bereit, die bereits in verschiedenen Projekten ihren Wert gezeigt haben. Aber was verbirgt sich alles hinter Namen wie "Jexl" oder "Latka"? Das vorliegende Buch versucht, Licht in das Dunkel zu bringen. Es bietet für die meisten Bibliotheken der Jakarta Commons eine einführende Beschreibung, ohne zu sehr ins Detail zu gehen. Die Autoren haben nicht versucht, eine ausführliche Dokumentation aller Klassen und Methoden zu erstellen. Stattdessen werden die Grundideen und -konzepte der einzelnen Bibliotheken wiedergegeben. Zahlreiche Links und Literaturhinweise laden zu einem vertiefenden Studium derjenigen Teile ein, die für das eigene Projekt interessant sein könnten. Etwas unklar bleibt allerdings die Auswahl der beschriebenen Bibliotheken. So wurde vorwiegend auf Projekte aus der Sandbox verzichtet, aber eben nicht auf alle.
Für jede Bibliothek gibt es ein eigenständiges Kapitel. Die Beschreibungen sind ausreichend detailliert und geben oftmals nützliche Hinweise, auch auf Alternativen aus anderen Projekten. Eine detaillierte Beschreibung à la Javadoc sucht man hier vergebens. Dafür findet der Leser eine große Anzahl einfacher Beispiele, die für die Benutzung der Bibliotheken praktische Anregungen liefern. Für komplexere Themen wird zum Teil eine kurze, prägnante Einführung geliefert, deren Ziel es aber lediglich ist, dem Leser die Materie näher zu bringen (z.B. für SSL, XPath). Auch auf Abhängigkeiten zu anderen Bibliotheken aus den Jakarta Commons und den Einfluss von Java 5 auf einzelne Lösungen geht der Autor ein. Fragen zur Aktivität der gebotenen Lösungen bleiben hingegen fast immer unbeantwortet. Zudem würden konkrete Vergleiche mit alternativen Lösungen, gerade auch im Hinblick auf die einfache Nutzung und die Geschwindigkeit, die Beschreibungen abrunden und dem Leser eine wichtige Entscheidungshilfe an die Hand geben.
Insgesamt verschafft das Buch dem Leser einen guten Überblick über die wichtigen Bestandteile von Jakarta Commons. Dabei ist es den Autoren recht gut gelungen, den richtigen Detaillierungsgrad bei den Beschreibungen zu finden. Umfangreiche Beispiele und Anwendungshinweise erlauben dem Leser, erste eigene Erfahrungen mit einer Bibliothek praktisch sofort zu machen. Wer allerdings eine der besprochenen Bibliotheken in einem echten Projekt einsetzen will, wird zu vertiefender Literatur greifen müssen.








