matthias_przyby
Returning Observer

Jetty-Konfiguration für das Intepretieren von JSP-Tags

Hallo liebe Community,

wir betreiben bei einem Kunden folgende FS-Version:

Version: 5.2.190406.78174

Server version: 5.2.190406.78174

Java: 1.8.0_131 Oracle Corporation

Operating system: Windows Server 2012 R2

Application server: jetty/9.2.19.v20160908

Wir möchten gerne im Jetty in der Vorschau auch JSP-Seiten mit der Endung *.html (eingestellt in den Seitenvorlagen) bedienen können.

Aktuell zeigt die Vorschau lediglich die reine HTML-Ausgabe, ohne JSP-Tags/-Scriptlets zu interpretieren.

In welcher Konfig kann ich dies ändern?

FS-Konfig oder irgendwo in den Jetty-spzifischen Konfigs?

Oder doch woanders?

Wäre dankebar für jegliche Unterstützung.

Danke im Voraus und viele Grüße,

Matthias

0 Kudos
3 Replies
tpilz
I'm new here

Hallo Matthias,

wir haben uns einen JSP Ausgabekanal konfiguriert (nutzen aber einen externen Tomcat dafür).

427573_pastedImage_0.png

Weiß nicht ob das dein Problem schon lösen würde.

Unabhängig davon wirst du wohl nicht nur von mir zu hören bekommen das die Firstspirit Version 2 Jahre? alt ist und du dringend auf eine aktuelle Version aktualisieren solltest.

VG

Thomas

0 Kudos
hoebbel
Crownpeak employee

Hallo Matthias,

das Jetty Modul ist nicht dafür gedacht, über den Standard hinausgehende Anwendungsfälle abzudecken. In diesem Fällen muss zwingend ein Tomcat (oder eine andere, unterstützte Application Engine) genutzt werden.

Entsprechende Konfigurationsmöglichkeiten (in diesem Fall das Servlet Mapping für jsp auf die Endung *.html zu setzen) für das Jetty Modul sind nicht vorgesehen.

Um entsprechende Seite auch mit dem Jetty Modul interpretiert zu bekommen, fallen m zwei Vorgehendweisen ein. Entweder den JSP Kanal direkt zu konfigurieren (wie von Thomas vorgeschlagen) oder die JSP Logik in ein Absatztemplate einzubinden und dieses dann mit der Ziel Ext. jsp konfigurieren. Dieser zweite Weg hat den Vorteil, dass nicht jede Seite als JSP interpretiert wird, aber auch ein paar Fallstricke:

  • Auf allen Seitentemplates, bei denen dieses Absatztemplate verwendet werden soll, muss bei den betreffenden Vorlagensätzen zwingend der Haken "Überschreibbar" gesetzt werden (Karteikarte Eigenschaften des Seitentemplates)
  • Auf dem Absatztemplate muss für jeden Ausgabekanal, der auf jsp geändert werden soll, die Ziel Ext. auf jsp geändert werden (Doppelklick in die entsprechende Tabellenzelle auf der Karteikarte Eigenschaften der Absatzvorlage)
  • Die Endung einer Seite kann nur einmal überschrieben werden. Hierbei gilt der erste Absatz, der eine andere Endung hat als die Seite selber. Insbesondere bei sehr alten Projekten oder bei Projekten, die Templates importieren, muss darauf geachtet werden, dass die Endung aller anderen Absatzvorlagen identisch ist mit der Endung der Seite (Beispiel: "html != (htm || HTML)")

Wenn ein Tomcat als Application Engine genutzt wird, so muss in der <TOMCATROOT>/conf/web.xml das Mapping für das jsp Servlet entsprechend angepasst werden, also z.B. so:

    <servlet-mapping>

        <servlet-name>jsp</servlet-name>

        <url-pattern>*.jsp</url-pattern>

        <url-pattern>*.jspx</url-pattern>

        <url-pattern>*.html</url-pattern>

    </servlet-mapping>

Viele Grüße

Holger

0 Kudos

Hallo zusammen,

vielen Dank für Eure Ideen etc.

Wir haben tatsächlich den von Holger vorgeschlagenen Weg umgesetzt und die Konfiguration der Templates angepasst.

Somit konnten wir erfolgreich den o.g. UseCase testen und einsetzen.

Vielen Dank für Eure Hilfe!

Viele Grüße,

Matthias

0 Kudos