It SEAMs to be the future
Entschuldigt bitte das billige Wortspiel im Titel… Aber das war soooo verlockend.
Heute solls um JBoss SEAM gehen. Ich war nämlich gerade in diesem Vortrag von Christian Bauer von JBoss.
Ich weiß nicht… Ich werde langsam echt müde von den ganzen Claims der verschiedenen Frameworks, daß wir in Zukunft nur noch Business Code schreiben und keinen Glue Code mehr. Irgendwie hat das bisher nie so richtig geklappt. In EJB3 mag alles deutlich reduziert werden, aber sobald ich auf die Oberfläche gehe, gehts wieder los… Da muss ich dann Code schreiben, dessen einziger Zweck darin besteht Framework A an Framework B zu binden. Sehr ärgerlich ist das besonders dann, wenn die beiden Frameworks auf Standards desselben Gremiums beruhen. Von .NET (v.a. ASP.NET) fang ich am besten gar nicht erst an, sonst sieht mein Ärger schlimmer aus, als Markus’ in meinem Post von gestern.
Tja und da saß ich da mit meinen Vorbehalten und 30 anderen Personen (mit wahrscheinlich ähnlichen Vorbehalten) und sah sie Stück für Stück entkräftet. Seam liegt so geschickt zwischen JSF und EJB3, daß man fast meinen könnte, es gehörte dahin. Sehr elegant: Das Framework hat fast keine tradionelle API. Die lösen alles über Attribute. Über die Schönheit der Syntax kann man streiten; die Entkopplung die hier aber erreicht wird ist klasse.
Nur kurz zum Konzept: Seam ermöglicht einem EJB3 Session Beans ohne Backing Bean (Glue Code Hort!) direkt an JSF zu hängen. Man spezifiert nur kurz wie… Richtig genial wird’s aber erst beim State Management von dem Ding. Ich bin endlich nicht mehr an die technischen Kontexte wie Application, Event oder Request (Page) gebunden. Ich kann Interaktionen über mehrere Request beschreiben (Conversation). Ja sogar über verschiedene Sessions hinweg (Process). Das ganze Cleanup (z.B. nach durchlaufenem Use Case) ist nicht mehr meine Sache, als Entwickler… Das macht das Ding einfach richtig. Ebenso wie Caching…
Also ich glaube ich werde da – sobald es meine Zeit wieder erlaubt – man was mit entwickeln… Das schaut ja mal richtig fesch aus.
Wer Details wissen will, bitte fragen… Ich hab ein wenig mitgeschrieben.
Am 8. June 2006 um 16:26 Uhr
Oh… ja, das klingt richtig gut.
Am 8. June 2006 um 16:30 Uhr
… zumal es in EJB3 keine Container-unabhängige Möglichkeit gibt, an eine Session Bean von außerhalb überhaupt ranzukommen… Das war nicht nur glue, das war auch noch Vendor-spezifisch ;-)
Am 8. June 2006 um 16:33 Uhr
Die haben da auch ein sehr cooles Dependency “Injection” (triffts nicht ganz, eher Bijection) Ding, über das ich hier mal berichten werde, sobald ich’s mal ausprobiert habe.
Am 8. June 2006 um 16:40 Uhr
Wie paßt das zusammen mit der allerorts vernommenen Forderung nach “SEAMless integration”? (SCNR, *duck* und weg)
Am 23. February 2007 um 17:49 Uhr
[...] Ich probiere jetzt mal etwas. Ich experimentiere jetzt schon eine ganze Zeit lang mit JBoss Seam herum. Dem aufmerksamen Leser wird aufgefallen sein, daß ich über dieses Framework schon mal im Juni berichtete, als ich zum ersten Mal darauf aufmerksam gemacht wurde. [...]