# Wie werden Template Engines unter J2EE umgesetzt?



## akb (8. Sep 2007)

Hallo,

ich lese mich gerade ein wenig in die verschiedenen Bereiche von J2EE ein und habe eine grundlegende Frage. Und zwar wird allerorts immer gesagt, dass die JSPs dazu eingeführt wurden, um Java-untüchtigen die Arbeit an der Markup-Ausgabe zu erleichtern (sinngemäss). Aber da JSPs ja dennoch Java-Code enthalten, würd mich interessieren, wie eine Bereitstellung mehrerer Templates in J2EE in etwa funktionieren könnte... wie wird so etwas in der Regel gemacht?

Vorstellen könnte ich mir, dass das über das Inkludieren von um Java-Code bereinigten JSPs aus einem Template-Ordner gemacht werden könnte, aber ich bin mir nicht so sicher, ob das Inkludieren dort genau so simpel wie bspw. bei PHP ginge. Oder wird so etwas grundsätzlich anders gemacht, bspw. durch Einlesen und parsen von Pur-Text?

Und was sind da so die Standard-Frameworks/-Bibliotheken, wenn es um so etwas geht (sofern man es nicht selbst schreiben möchte)?

Vielen Dank schon einmal im Voraus für diesen Funken elementarer Aufklärung


----------



## SnooP (8. Sep 2007)

Also generell sollten jsps heutzutage tatsächlich keinen java-code mehr enthalten. Zumindest nix > JSP 2.0. Scriptlets sind was ganz furchtbares... zusammen mit JSTL erhält man eigentlich auch schon unter jsp 2.0 recht viele Möglichkeiten dynamische Inhalte an die entsprechenden Stellen einzufügen... und ja, dass geht genau so einfach, wie bei php  ...

wenn man noch mehr Templating haben möchte, bieten sich halt Template-Engines an... interessant ist da z.B. Velocity oder auch Tapestry...

Das Problem ist, dass man wohl nicht drumrum kommt um den Java-Code... ich glaube jedenfalls nicht, dass es gangbar ist, das Design von nem Designer zu machen, der dann nur bestimmte Tags einbaut und auf vom Programmierer bereitgestellte Controller-Komponenten zugreift... also zumindest wenn ich mir jsf angucke, dann braucht man da einfach zu viel Fachwissen, als dass eine krasse Trennung da wirklich Sinn macht... eher in der Form, dass ein Designer ne Vorlage baut, in die der Entwickler dann später seine Dinge einfließen lässt... - aber ich schweife ab


----------



## Guest (8. Sep 2007)

Hm... okay, dann war mein Eindruck gar nicht so abwegig wie ich dachte ;-)
Aber es bliebe ja noch die Möglichkeit, die Templates als reine Textdateien - was sie ja nunmal sind - zu behandeln und diese dann durch Filter zu schicken, um bestimmte Konstrukte automatisch per String-Funktionen zu ersetzen, oder? Wobei ich mir nicht sicher bin, wie rechenintensiv das wäre...

Das Problem an zuviel Java-Code - Stichwort Vorlage an den Programmierer liefern, der das Endergebnis backt - wäre aber denke ich mal, dass die Portabilität von solchen Templates ein wenig leiden würde, wenn es um den Betrieb mehrerer Templates geht, die dann in der Applikation zur Auswahl gestellt werden.


----------



## KSG9|sebastian (9. Sep 2007)

Das Problem ist dass der Designer gute Kentnisse über das Datenmodel und auch die Controllerklassen haben muss.

Ansonsten bleibt lediglich der klassische Designer welcher ein zerschnippeltes Gif liefert und der Entwickler baut es dann zusammen.


----------

