Dr. Marcus Schulte arbeitet seit 2004 als Systementwickler bei der BMW (Schweiz) AG. Vorher war er als Senior-Software Ingenieur bei sd&m tätig. Mehr unter www.marcus-schulte.ch.
30.11.2006
LOCATION: Zürich
KEYWORDS: Tools, Technology, Lessons learned
AGENDA: | 17:45 - 19:00h: Talk incl. Q/A Afterwards you are invited to a refreshment. |
SPEAKER: Marcus Schulte
SLIDES: 061130_DDDWithTapestry.pdf
Im Zoo der Web-Frameworks ist Tapestry einer der technisch interessantesten und innovativsten Vertreter. Hier sind insbesondere das konsequente Komponentenmodell, die "HTML-only" Templates, der auf dem HiveMind-IoC-Microkernel basierende modulare Aufbau und der direkte Zugriff auf das Domain Modell über sehr schlanke Controller- und View-Komponenten hervorzuheben. Tapestry kombiniert mit Hibernate als Datenbankzugriffsschicht verspricht damit gute Unterstützung für die Domain-getriebene Entwicklung von Web-Anwendungen.
Über die letzten eineinhalb Jahre haben wir die Standardumgebung für unsere Web-Anwendungen von EJB 1.1 und Struts auf Hibernate 3 und Tapestry umgestellt. Der Vortrag behandelt die Gründe für diese Entscheidung und die gemachten Erfahrungen. Nach einer Einführung in die Architektur der zugrundeliegenden Frameworks werden alternative Designentscheidungen für deren Kombination in einer kompletten Web-Anwendung diskutiert. Insbesondere geht es dabei um die Frage der Transaktionssteuerung und den Lebenszyklus von Domain-Entitäten, speziell die Hibernate "session-per-request"- und "session-per-conversation" Patterns.
Unsere Implementierung einer Integration zwischen Tapestry/HiveMind und Hibernate ist als Open Source Projekt unter http://honeycomb.javaforge.com verfügbar.
Dr. Marcus Schulte arbeitet seit 2004 als Systementwickler bei der BMW (Schweiz) AG. Vorher war er als Senior-Software Ingenieur bei sd&m tätig. Mehr unter www.marcus-schulte.ch.
JUG Switzerland aims at promoting the application of Java technology in Switzerland.
JUG Switzerland facilitates the sharing of experience and information among its members. This is accomplished through workshops, seminars and conferences. JUG Switzerland supports and encourages the cooperation between commercial organizations and research institutions.
JUG Switzerland is funded through membership fees.