Generelle Frage zu jsp:include

aGeNET

Erfahrenes Mitglied
Hallo zusammen,

als erstes sei gesagt, dass ich überhaupt keine Ahnung von JSP habe und eher PHP-Programmierer bin ;)

Ausgangspunkt:
Die Firma, in der ich angestellt bin, nutzt ein Warenwirtschaftssystem basierend auf Oracle/Java. Daran "angeschlossen" ein Tomcat-Webserver, auf dem unser OnlineShop läuft. Dieser ist mit JSP programmiert. Da ein OnlineShop nun mal davon lebt, dass er regelmäßig mit neuen Angeboten versehen wird oder zeitlich begrenzte Aktionen laufen, haben wir einen im Template feststehenden Bereich (-> Aktionsbereich), in dem sich ein Flash-Film oder für nicht-Flash-User ein entsprechendes Alternativbild befindet, also reiner JavaScript und HTML-Code, nichts anderes.

Problem:
Unser Dienstleister (verantwortlich für WWS und Shop) muss bei jedem Änderungswunsch im Aktionsbereich manuelle Anpassungen durchführen und den Shop komplett neu deployen (so nennen sie das zumindest immer, wie gesagt hab keine Ahnung von Java bzw. JSP) und brechnet uns immer 1h Aufwand (ca. 120€). Das ganze ist dann auf die Dauer natürlich nicht mehr tragbar.

Lösungsansatz:
Wir haben vollen FTP-Zugriff auf die kompletten Shopsourcen (um zb Artikelbilder einspielen zu können etc.). Meine Idee war dann folgende (Mail an Dienstleister):
Guten Tag Herr XYZ,
kurz vor Weihnachten hatten Sie ja angeregt, dass wir die Änderungen bei
den Flash-Dateien am besten selber übernehmen sollen. Ich denke, ich hab
da eine akzeptable Lösung für beide Seiten gefunden:
Mit <jsp:include page="relativeUrl" flush="true"/> lassen sich ja
Dateien beliebig zur Laufzeit einfügen. Das wäre die einfachste Lösung -
"relativeUrl" verweist auf eine Datei, die von uns bearbeitet werden
kann und in der nur der Quelltext für die Flashgeschichte steht.
FTP-Zugriff auf die Shopsourcen haben wir ja.

Im Zuge dessen würde ich noch einen kleinen Umbau am allgemeinen
Seitenaufbau anstreben wollen:
- Auslagerung der Flashüberprüfung in eine externe JavaScript-Datei
- eine minimale Änderung am <head></head> Bereich

Dann könnte man den Include der zu bearbeitenden Datei ganz einfach mit
...
<div id="headerElmFlash">
<jsp:include page="relativeUrl" flush="true"/>
</div>
...
realisieren.

Die Include-Variante habe ich gewählt, damit wir nicht nach jeder
Anpassung am Flash den Shop neu deployen müssen. In der ausgelagerten
Datei befinden sich ja keine Java-Variablen, die benötigt werden.

Was halten Sie davon?

Die darauffolgende Antwort vom Dienstleister: (entscheidender Teil fett markiert)
vielen Dank für Ihren Vorschlag, wir werden prüfen ob dies eine gängige
Methode ist, ich fürchte aber dass dieser Vorschlag nicht ganz so
einfach zu realisieren ist, da die Files des Shops in einem WAR-File
sind und dieses vom Server deployed wird. Ein Austauschen einzelner
Dateien ist dabei nicht ganz so einfach
. Ich denke es gibt auch noch
einige andere Möglichkeiten.

Jetzt stellt sich mir die Frage, ob mich unser Dienstleister "verschaukeln" will, um mit einer "umständlichen" Anpassung noch mehr Geld zu verdienen.
Ich hatte ja bereits erwähnt, dass ich PHP-Programmierer bin und da würde mein Vorhaben mit einem einfachen Include wunderbar gelöst werden können.

Jetzt meine Frage an die JSP-Cracks unter euch:
Wäre mein Lösungsansatz so umsetzbar oder ist das wirklich nicht möglich?

Ich danke im Voraus für eure Hilfe

mfg
 

MichiM

Mitglied
Natürlich kann man Ressourcen grundsätzlich auch extern auslagern, ohne, dass man jedesmal neu deployen und die WAR hochladen muss. Dazu muss halt z.B. eine Datenbanktabelle eingerichtet werden, wo ein paar Zeiger auf die einzubindenden Ressourcen reinkommen.