JEE / J2EE

Java Logo

Bei der Java Platform, Enterprise Edition (JEE) handelt es sich um eine Spezifikation von Softwarekomponenten und Diensten von in Java programmierten Anwendungen. Die Spezifikation dient der Entwicklung modularer, mehrschichtiger Applikationen und definiert Schnittstellen, so dass Softwarekomponenten verschiedener Entwickler interoperabel sind.

JSP

Bei Java Server Pages (JSP) handelt es sich um eine Technologie, die von Sun Microsystems entwickelt wurde. Generell dient diese dazu dynamische HTML- und XML-Ausgaben durch einen Webserver zu erstellen. In JSPs kann Java-Code eingebunden werden und somit die zu erzeugende Webseite neben statischem HTML-Code auch dynamische Elemente enthalten.

Java Server Pages werden zur Laufzeit von einem speziellen JSP-Compiler in Java-Klassen umgewandelt, die wiederum von der JEE-Laufzeitumgebung verarbeitet werden. Die Technologie ist vergleichbar mit anderen dynamischen und serverseitig ausgeführten Programmiersprachen, wie beispielsweise Active Server Pages (ASP, Microsoft) oder PHP. Sie bietet jedoch im Vergleich zu PHP wesentliche Vorteile, was den Ressourcenverbrauch und die Modularisierung angeht.

JSF

JavaServer Faces (JSF) sind ein standardisiertes Framework, das für die Entwicklung von Benutzeroberflächen in Webapplikationen eingesetzt wird. Dieses baut auf Java Server Pages auf. Das JSF-Framework enthält viele Webelemente wie beispielsweise verschiedene Eingabefelder, Buttons, Auswahllisten, usw., die auf einfache Weise eingesetzt werden können, um den Austausch der Daten in die Geschäftslogik zu vereinfachen.
Weitere Teile dieses Frameworks sind:

  • Lokalisierung der Applikation
  • Validierung von Eingaben
  • Navigationsregeln zur Steuerung der Benutzernavigation
  • Verwendung von Konvertern

Facelets

Bei Facelets handelt es sich um ein Framework, das die Verwendung von JSP-Elementen im Lebenszyklus der JavaServer Faces ermöglicht. Dabei handelt es sich beispielsweise um Kontrollstrukturen in der grafischen Benutzeroberläche (Schleifen oder einfache Entweder-Oder Konstrukte), die innerhalb von JSF sonst nicht genutzt werden könnten.

Log4j

Log4j Logo

Durch den komplexen Aufbau heutiger Applikationen und der weitreichenden Nutzung externer Frameworks ist es für professionelle Anwendungen unabdingbar eine Protokollierung des Systemzustandes zu führen. Dazu bietet sich das Framework log4j an. Jedem Log-Eintrag kann neben einer Nachricht und dem aufgetretenen Zeitpunkt noch eine Logging Klassifizierung zugewiesen werden. Diese können beispielsweise sein:

  • DEBUG: Hinweise über Position im aktuellen Code, beispielsweise „betrete Methode X“ oder „Rückgabewert = Y“.
  • INFO: Hinweis bei der Verarbeitung von Daten, beispielsweise „PDF erfolgreich erzeugt“.
  • WARNING: Fehler bei der Verarbeitung. Der angeforderte Bearbeitungsschritt kann ausgeführt werden, jedoch sind die verarbeiteten Daten u.U. beeinträchtigt, beispielsweise „Daten für Feld X waren zu lang, PDF jedoch erzeugt“.
  • ERROR: Fehler bei der Verarbeitung, der angeforderte Bearbeitungsschritt kann nicht ausgeführt werden, beispielsweise „PDF konnte nicht gespeichert werden, I/O Fehler“.
  • FATAL: Kritischer Fehler, Applikation ist nicht mehr ausführbar und muss beendet werden, beispielsweise „keine Verbindung zur Datenbank“.

In der log4j Konfiguration lässt sich festlegen, welche Logging-Methoden verwendet werden. Je nach Einstellung können beispielsweise täglich rollierende Log Dateien im Log-Verzeichnis des Servlet-Containers Tomcat erzeugt werden. Über den
globalen Log-Level lässt sich konfigurieren welche Meldungen in der Log-Datei protokolliert werden.