JSP 2.0 Custom Tag erstellen

In diesem Artikel geht es um etwas eher technisches: wie erstelle ich ein JSP-Tag, das den eingeschlossenen Inhalt in Grossbuchstaben umwandelt? Also z.B. so: <myApp:uppercase>alles in grossbuchstaben</myApp:uppercase>

Ich habe lange nach einem brauchbaren Beispiel für derartige Anwendungen gesucht und darum möchte ich die Lösung nicht für mich behalten.

Die Datei WEB-INF/tags/uppercase.tag muss dazu lediglich folgenden Code enthalten:

<%@tag body-content="scriptless"%>
<jsp:doBody var="bodyContent" scope="page"/>
<%
String bodyContent = (String) jspContext.getAttribute("bodyContent");
out.write(bodyContent.toUppercase());
%>

Und verwenden könnte man es folgendermassen:

  • man importiere den Tag mit <%@taglib tagdir="/WEB-INF/tags" prefix="myApp"%>
  • und man schreibe <myApp:uppercase>alles gross hier</myApp:uppercase>

Simpel, aber nützlich.

Das Beispiel habe ich übrigens hier gefunden: http://articles.techrepublic.com.com/5100-22_11-5215024.html