Extensible Server Pages
eXtensible Server Pages (XSP) ist ein XML-Dialekt, der die Möglichkeit bietet, Java-Code in XML-Dokumente einzubinden und diese dadurch dynamisch zu gestalten. Er wurde von der Apache Software Foundation für das Web Publishing Framework Cocoon entwickelt.
Der Fokus liegt bei XSP auf der Trennung von Inhalt, Logik und Darstellung, so dass XSP-Code besonders übersichtlich und dadurch besser zu warten ist. Der Java-Programmcode liegt dabei in einem eigenen XML-Abschnitt, der durch das Tag <xsp:logic> eingeleitet wird. Dieses Tag kann innerhalb einer XML-Datei beliebig oft vorkommen und steht dabei entweder innerhalb oder außerhalb des Root-Elements (<xsp:page>). Der Java-Code wird beim ersten Aufruf kompiliert. Aus diesem Grund kann sich das Laden einer mit XSP erstellten Internetseite unabhängig von der Verbindungsgeschwindigkeit um einige Sekunden verzögern.
XSP-Seiten sind im Gegensatz zu normalen Server Pages XML-Dokumente. In der XSP-Seite kann anstatt von HTML-Markup eine Abstraktion in Form von selbstdefinierten Tags verwendet werden. Diese Tags können später an zentraler Stelle in HTML, WML oder PDF umgewandelt werden. Das ist der Grund für die erwähnte Übersichtlichkeit und leichte Wartbarkeit.