Java Forum Stuttgart 2011

Passend zum offiziellen Launch von Java 7 öffnete am 07. Juli 2011 das 14. Java Forum Stuttgart seine Tore, um dem interessierten und zahlreich erschienenem Fachpublikum einen sehr spannenden Themen-Mix zu präsentieren.

Wir leisteten einen inhaltlichen Beitrag in Form eines Vortrags meinerseits zum Thema „Contexts and Dependency Injection – Die Konzepte des JSR-299“. Von Injection Points bis hin zu Alternativen habe ich deren Einsatz live anhand eines Refactorings einer Beispielanwendung demonstriert, die nachfolgend – mit Kommentaren aufbereitet – als Download zur Verfügung steht.

Unser besonderer Dank gilt den Organisatoren, die das Java Forum Stuttgart auch dieses Mal mit viel Know-How und Engagement zu einem wichtigen Anlaufpunkt für die deutsche Java-Community gemacht haben – wir freuen uns schon jetzt auf die 15. Auflage im nächsten Jahr!

Der Vortrag als PDF:
Download Contexts and Dependency Injection – Die Konzepte des JSR-299

Die Beispielanwendung als ZIP:
Beispielanwendung zum Vortrag

Einige Impressionen zur Veranstaltung:


Copyright Java User Group Stuttgart e.V. . Mit freundlicher Genehmigung der Java User Group Stuttgart. Weitere Fotos auf der Webseite des Java Forum Stuttgart.

Java EE 6 Web Profile: Essentials

Flyer JUG Saxony Dezember 2010Am 09.12.2010 werden wir uns im Rahmen einer Veranstaltung der Java User Group Saxony dem Java EE 6 Web Profile widmen. Die Veranstaltung wird in der Fakultät Informatik der TU Dresden im Raum E023 ab 19:00 Uhr statt finden.

Dirk Mahler von buschmais wird einen Überblick über Java EE 6 Web Profile geben. Am Beispiel „lebenden“ Codes demonstriert er, wie einfach und schnell mit Hilfe der Web Profile Technologien mächtige, interaktive Web-Oberflächen entstehen.

Nach der Veranstaltung können unsere Gäste bei einem Gewinnspiel interessante Fachbücher zum Thema JSF gewinnen und sich bei hoffentlich winterlichen Temperaturen den heißen Glühwein schmecken lassen.

Details und Anmeldung: http://groups.google.de/group/jug-saxony

Anfahrt: Fakultät Informatik der TU Dresden

Buchrezension: JavaServer Faces 2.0

Cover: JavaServer Faces 2.0 - Grundlagen und erweiterte Konzepte

Martin Marinschek, Michael Kurz, Gerald Müllan
JavaServer Faces 2.0
Grundlagen und erweiterte Konzepte

dpunkt.verlag
340 Seiten. broschiert
€ 38,00
ISBN 978-3-89864-606-2

Wahrscheinlich jeder Entwickler hat den Wunsch, eine perfekte Anwendung zu erstellen, doch dies gestaltet sich häufig schwieriger als zunächst gedacht. Mit ihrem Buch JavaServer Faces 2.0 wollen Martin Marinschek, Michael Kurz und Gerald Müllan einen Einblick in JSF geben und dabei helfen, eine „perfekte Webapplikation“ zu erstellen. Die drei Autoren besitzen allesamt langjährige Erfahrung in JSF-Projekten. Martin Marinschek ist als Mitglied der JSF 2.0 Expertgroup ein Co-Autor der aktuellen Spezifikation.

weiterlesen

Initialisierung von JSF-Managed-Beans

Allgemein bekannt ist die Tatsache, dass Managed-Beans in der Faces-Config-XML-Datei nicht nur deklariert, sondern auch initialisiert werden können. Schon weniger bekannt ist die Tatsache, dass bei der Initialisierung der Beans auch Verknüpfungen zu anderen Managed-Beans hergestellt werden können. Zur Verdeutlichung soll der folgende Code-Schnipsel dienen:

<faces -config version="1.2" ...>
  <managed -bean>
    </managed><managed -bean-name>user</managed>
    <managed -bean-class>
            my.app.model.Person</managed>
    <managed -bean-scope>application</managed>
    <managed -property>
      <property -name>homeAddress</property>
      <value>#{address}</value>
    </managed>
  
  <managed -bean>
    </managed><managed -bean-name>address</managed>
    <managed -bean-class>
            my.app.model.Address</managed>
    <managed -bean-scope>application</managed>
    <managed -property>
      <property -name>city</property>
      <value>Dresden</value>
    </managed>
    <managed -property>
      <property -name>street</property>
      <value>Leipziger Str. 93</value>
    </managed>
  
</faces>

WEB-INF/faces-config.xml: Initialisierung einer Managed-Bean

In Zeile 9 wird die Verbingung zwischen der Bean „user“ und der Bean „address“ über die Eigenschaft „homeAddress“ hergestellt.

Wie lässt sich allerdings die Sache angehen, wenn man für das Address-Objekt keine eigenständige Bean deklarieren möchte?

weiterlesen