32
Praktikum aus Softwareentwicklung 2 1 Java Praktikum – SS 2010 – [email protected] JSP - Java Server Pages Praktikum aus Softwareentwicklung 2

JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

  • Upload
    others

  • View
    22

  • Download
    0

Embed Size (px)

Citation preview

Page 1: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

1Java Praktikum – SS 2010 – [email protected]

JSP - Java Server Pages

Praktikum aus Softwareentwicklung 2

Page 2: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

2Java Praktikum – SS 2010 – [email protected]

Java Server Pages

• Grundlagen– Syntax, Lebenszyklus, …

• Java Beans– Formularverarbeitung, benutzerdef. Tags, …

• Sonstiges– Alternativen zu JSPs, Zusammenfassung, Links, …

Page 3: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

3Java Praktikum – SS 2010 – [email protected]

Java Server PagesGrundlagen

• Servlets– Dynamische Erzeugung von Web Inhalten (HTML, JPEG...)– Implementierung von Web Diensten (Wetter, Flugpläne, Börsen...)

• GUI mit Servlets– Unübersichtlich ... out.print("<HTML>"); ...– HTML Design Tools können nicht direkt verwendet werden– Wartung von Servlet-Seiten durch Java-Programmierung

• GUI mit Java Server Pages (JSP)– JSPs sind Text-Dokumente .jsp– Direkte Verwendung von HTML für GUI– Java in HTML eingebettet– Basierend auf der Servlet-Technologie

Page 4: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

4Java Praktikum – SS 2010 – [email protected]

Java Server PagesBeispiel Clock.jsp

<%@ page import="java.util.*" %>

<% GregorianCalendar clock =

GregorianCalendar.getInstance(); %>

<html>

<head>

<title>Clock</title>

</head>

<body>

Die aktuelle Zeit ist: <%= clock.getTime() %> <br>

Der Server steht in Zeitzone <%= clock.getTimeZone() %>

</body>

</html>

Hilfe zu HTML, JavaScript… siehe http://de.selfhtml.org/Freier HTML Editor: http://www.pagebreeze.com

Page 5: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

5Java Praktikum – SS 2010 – [email protected]

Java Server PagesLebenszyklus

• Transparente Übersetzung in Servlets

Übersetzung Ausführung

<%@ page ... %><html>...

class Clock_jsp extends HttpServlet {…}

JSP-Seite:Clock.jsp

Servlet

<html>...

HTML-Seite

Siehe generierte JSP Servlets (Windows Eclipse 3.4.1 Tomcat 6): MY_WORKSPACE\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\work\Catalina\localhost\Beispiele06\org\apache\jsp\Clock_jsp.java

Page 6: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

6Java Praktikum – SS 2010 – [email protected]

import java.util.GregorianCalendar;

public final class Clock_jsp extends org.apache.jasper.runtime.HttpJspBase {

public void _jspService(HttpServletRequest request,

HttpServletResponse response)

{

out.write("\n");

out.write("<!DOCTYPE html PUBLIC…"); out.write("\r\n"); out.write("<html>\n"); out.write("<head>\n");

out.write("<meta http-equiv=\"Content-Type\"…");

out.write("<title>Clock</title>\n"); out.write("</head>\n");

out.write("<body>\n");

out.write("Die Zeit ist: <b>");

out.print( GregorianCalendar.getInstance().getTime() );

out.write("</b>\r\n"); … } …

Java Server Pages Servlet generiert aus Clock.jsp

Page 7: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

7Java Praktikum – SS 2010 – [email protected]

Java Server PagesWebapplikation

• JSP Container (konform zu Servlet Container)Tomcat, WebSphere, JBoss…

• Java Development Kit am Server – Compiler!

• JSP Seiten, die Requests abarbeiten und dynamische Inhalt generieren

• Servlets, die Requests abarbeiten und dynamische Inhalt generieren

• Serverseitige JavaBeans Komponenten die Verhalten und Zustand kapseln

• Statische ResourcenHTML, DHTML, XHTML, XML, Images…

Page 8: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

8Java Praktikum – SS 2010 – [email protected]

Java Server PagesEingebetter Java-Code 1/3

• Deklarationen <%! ... %>

– An beliebiger Stelle der JSP

• Instanzvariablen des Servlet<%! int k = 0; %>

• Methoden des Servlet<%! String methode1(int i) { if ( i % 2 == 0 ) return "gerade"; else return "ungerade"; }

%>

• Innere Klassen des Servlet<%! class A extends Object { ... }

%>

Page 9: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

9Java Praktikum – SS 2010 – [email protected]

Java Server PagesEingebetter Java-Code 2/3

• Anweisungsfragmente (Scriptlets) <% ... %>– In HTML eingebetteter Java-Code, an beliebiger Stelle, z.B.

<% if(Calendar.getInstance().get(Calendar.AM_PM) == Calendar.AM) { %> Guten Morgen <% } else { %> Guten Tag <% } %>

• Exceptions mit try/catch, oder an Error-JSP weiterleiten• Lokale Variablen

<% int i; %>

• Direkte Ausgabe in die HTML-Seite: mit Variable "out"<% if(Calendar.getInstance().get(Calendar.AM_PM) == Calendar.AM) { out.print("Guten Morgen"); } else { out.print("Guten Tag"); } %>

Page 10: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

10Java Praktikum – SS 2010 – [email protected]

Java Server PagesEingebetter Java-Code 3/3

• Ausdrücke <%= ... %>– Der Ergebnis wird in die HTML-Seite eingefügt, z.B.

<FORM><INPUT NAME="uid" VALUE="<%= user.getId() %>">...

– entspricht ...<% out.print( user.getId() ); %>...

• Kommentare <%-- ... --%>– Im JSP: <%-- ... --%>– In Scriptlets: <% /* ... */ %>– HTML-Kommentare (<!-- ... -->) werden in die HTML-Seite übernommen!

Page 11: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

11Java Praktikum – SS 2010 – [email protected]

Java Server PagesImplizite Objekte

Name Typ

request HttpServletRequest

response HttpServletResponse

pageContext javax.servlet.jsp.PageContext

session HttpSession

application ServletContext

out javax.servlet.jsp.JspWriter

config ServletConfig

page javax.servlet.jsp.JspPage (this)

exception Throwable

Page 12: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

12Java Praktikum – SS 2010 – [email protected]

Java Server PagesFehlerbehandlung

• Übersetzungsfehler– Ausgabe der Übersetzungsfehler

• Nicht behandelte Exceptions– Ausgabe der Exception und des Ausführungsstack

• Explizite Fehlerseite– Ausgangsseite:

<%@ page errorPage="fehler.jsp" %>...

– Im Ausnahmefall automatisches forward an die Fehlerseite, z.B. an fehler.jsp:<%@ page isErrorPage="true" %><% log("Es ist ein Fehler aufgetreten!", exception); %><H1>Ein Fehler ist aufgetreten</H1><%= exception.getMessage() %> ...

Page 13: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

13Java Praktikum – SS 2010 – [email protected]

Java Server PagesDirektiven bei JSP-Übersetzung

• Direktive page– Legt die globalen Eigenschaften einer JSP-Seite fest, z.B.

<%@ page info="Meine ServerPage" errorPage="fehler.jsp" session="true" import="java.util.*"%>

– Weitere Attribute siehe:http://java.sun.com/products/jsp/syntax/2.0/syntaxref20.html

• Direktive include– Einbinden von Seitenteilen (auch JSPs) zur Übersetzungszeit, z.B. für Menüs oder Zugriffsberechtigungsprüfung:

<%@ include file="secure.jsp" %>

Page 14: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

14Java Praktikum – SS 2010 – [email protected]

Java Server PagesDyn. Einbinden von Seitenteilen

• Aktion include– z.B.: <jsp:include page="menu.jsp" flush="true" />– Pfad relativ oder absolut zum Root-Verzeichnis der Web-Applikation

JSP-Server doc.jsp

doc2.jspGET doc.jsp

...

<jsp:include

page="doc2.jsp"

/>

...

Page 15: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

15Java Praktikum – SS 2010 – [email protected]

Java Server PagesDynamisches Weiterleiten

• Aktion forward– z.B.: <jsp:forward page="special.jsp" />– Die bisherige Ausgabe wird gelöscht– IllegalStateException, falls der Ausgabepuffer schon voll war

JSP-Server doc.jsp

doc2.jsp

GET doc.jsp...

<jsp:forward

page="doc2.jsp"

/>

...

Page 16: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

16Java Praktikum – SS 2010 – [email protected]

Java Server PagesParameter

• Weitergabe von Parametern– Attribute des request-Objektes, z.B.

<% request.setAttribute("counter", "1"); %>

– Alternative Schreibweise: Aktion param, z.B.:<jsp:forward page="step2.jsp">

<jsp:param counter="1"/></jsp:forward>

• Abfragen der Parameter<% String i = request.getAttribute("counter"); %>

Page 17: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

17Java Praktikum – SS 2010 – [email protected]

Java Server Pages

• Grundlagen– Syntax, Lebenszyklus, …

• Java Beans– Formularverarbeitung, benutzerdef. Tags, …

• Sonstiges– Alternativen zu JSPs, Zusammenfassung, Links, …

Page 18: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

18Java Praktikum – SS 2010 – [email protected]

Java Server PagesJava Beans

• Einfache Datenobjekte ohne Programmlogik● Transferobjekte im DAO Pattern● Datenobjekte zum Anzeigen/Bearbeiten in GUI...

• Konventionen– Konstruktor ohne Argumente– Eigenschaften (Properties) -> get/set-Methoden– Ereignisse (Events und EventListener)– Methoden

• Unterstützung durch JSP-Tags– <jsp:useBean>

– <jsp:getProperty>

– <jsp:setProperty>

Page 19: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

19Java Praktikum – SS 2010 – [email protected]

Java Server PagesDeklaration/Scope von Java Beans

• Deklaration – <jsp:useBean id="database"

class="mybeans.MySQL_DB"

scope="application" />

– Eine lokale Variable "database" wird definiert und initialisiert– Bean-Klasse:praktikum/WEB-INF/classes/mybeans/MySQL_DB.class

• Gültikeitsbereiche (scope)– page - lokale Variable in _jspService (default)– request - Attribut des HttpServletRequest– session - Attribut der HttpSession– application - Attribut des ServletContext

Page 20: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

20Java Praktikum – SS 2010 – [email protected]

Java Server PagesDatenaustausch Servlets/JSPs

• Zugriff auf Java Beans– Beans mit scope = "page": sind privat in der JSP– Beans mit scope = "request":

doGet(HttpServletRequest request,

HttpServletResponse response) {

...

bean = (BeanType)request.getAttribute("beanName");

– Beans mit scope = "session": HttpSession session = request.getSession();

bean = (BeanType)session.getAttribute("beanName");

– Beans mit scope = "application":bean = (BeanType)getServletContext().getAttribute("beanName");

Page 21: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

21Java Praktikum – SS 2010 – [email protected]

Java Server PagesInitialisierun von Java Beans

• Initialisierung beim erstmaligen Zugriff auf eine Bean: <jsp:useBean id="db" class="beans.MySQL_DB" scope="application"> <% db.setURL("jdbc:mysql://server:3306/db");

db.connect(); %>

</jsp:useBean>

• Vorkonfigurierte Beans– Design Time: Bean erzeugen, konfigurieren, und speichern (serialisieren), z.B.:...

MySQL_DB mydb=new MySQL_DB("jdbc:mysql://server:3306/db");

ObjectOutputStream os = new ObjectOutputStream(

new FileOutputStream("mydb.ser"));

os.writeObject(mydb);

– Run Time: Bean laden (deserialisieren), z.B.:<jsp:useBean id="db" beanName="mydb.ser" type="beans.DB" />

Page 22: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

22Java Praktikum – SS 2010 – [email protected]

Java Server PagesVerwendung von Java Beans

• Verwenden eines Beans in Skripten– ... <%= bean.getDescription() %> ...

• Ausgabe einer Eigenschaft– <jsp:getProperty name="bean" property="description"/>

• Setzen von Eigenschaften– <jsp:setProperty name="bean"

property="description"

value="Ich bin ein Beaner" />

– Beliebige Objekt-Werte:<jsp:setProperty name="bean" property="date"

value="<%= new java.util.Date() %>" />

– Eigenschaften von Request-Parametern übernehmen:• <jsp:setProperty name="bean" property="name" param="n"/>

• <jsp:setProperty name="bean" property="name" />

• <jsp:setProperty name="bean" property="*" />

Page 23: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

23Java Praktikum – SS 2010 – [email protected]

Java Server PagesFormularverarbeitung

• Klassisches MVC-Konzept

View

Controler Model

liest aus

verändert

modelChangeduserAction

steuert

Page 24: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

24Java Praktikum – SS 2010 – [email protected]

Java Server PagesFormularverarbeitung

• Typische Schritte(1) Präsentation des Formulars

(2) Überprüfung der Eingabe (Vollständigkeit, Plausibilität)

(3) Verarbeitung der Daten durch den Server

(4) Rückmeldung (Erfolg oder Misserfolg)

• MVC-Pattern mit Servlets und JSPs● Model enthält Formulardaten --> Java Bean, z.B. User.java● View zeigt die Model-Daten an --> JSP, z.B. UserEditor.jsp● Controller verarbeitet die Eingaben --> Servlet oder JSP, z.B.

UserUpdate.jsp

• Vereinfachtes Modell: – Controller und View sind in einem JSP vereint

Page 25: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

25Java Praktikum – SS 2010 – [email protected]

Java Server PagesFormularverarbeitung

Zustand abfragen

user:User

nr=1

name="Hugo"

pass="zzz"...

(3) Zustand anpassen

Model

<jsp:useBean id="user" class="beans.User" scope="request" />

...

<jsp:getProperty name="user" property="name" />

...

(1) Eingabeformular erzeugen

View

:UserEditor.jsp

<jsp:useBean id="user" class="beans.User" scope="request" />

...

<jsp:setProperty name="user" property="*" />

...

(2) Eingaben verarbeiten

Controller

:UserUpdate.jsp

Page 26: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

26Java Praktikum – SS 2010 – [email protected]

Java Server PagesBenutzerdefinierte Tags

• Vordefinierte Tags– <jsp:useBean>, <jsp:getProperty>, <jsp:setProperty>, <jsp:include>

– Komplexere Funktionen nur mit Java-Skripten• Erweiterte Funktionalität durch benutzerdefinierte Tags

– z.B. Datenbankzugriff, Berechtigungsprüfung, ...– Tag kann ohne Programmierkenntnisse verwendet werden

• Java Beans zur Implementierung von Tags – Interface javax.servlet.jsp.tagext.Tag, etc.– Tag-Attribut => Bean-Property– Einfache Tags können auf Beans zugreifen, HTML ausgeben, etc.– Komplexe Tags realisieren Schleifen, deklarieren Variablen, ...

Page 27: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

27Java Praktikum – SS 2010 – [email protected]

Java Server PagesCustom Tags

• Verwendung in JSP: ● <currenttime timeZone="Pacific/Fiji"/>

• Implementierung:public class CurrentTime extends SimpleTagSupport { private SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy.MMMMM.dd - hh:mm aaa"); private String timeZone;

@Override public void doTag() throws JspException, IOException { PageContext pageContext = (PageContext) getJspContext(); JspWriter out = pageContext.getOut(); ... dateFormat.setTimeZone(tz); out.print(dateFormat.format(new Date())); }

public void setTimeZone(String timeZone) {this.timeZone = timeZone;} public String getTimeZone() {return timeZone;}}

Page 28: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

28Java Praktikum – SS 2010 – [email protected]

• Deklaration der verwendete Tag Libraries ● <%@ taglib uri="/WEB-INF/mytaglib.tld" prefix="t" %>

• Definition im Tag Library Descriptor, z.B.: security.tld

<?xml version="1.0" encoding="UTF-8"?>

<taglib version="2.0"

<tlib-version>1.0</tlib-version> <short-name>demo</short-name>

<uri>DemoTags</uri>

<tag>

<name>currenttime</name>

<tag-class>bsp.tags.CurrentTime</tag-class>

<body-content>empty</body-content>

<attribute>

<name>timeZone</name>

<!-- runtime expression values allowed: "${param['timeZone']}" -->

<rtexprvalue>true</rtexprvalue>

<required>false</required>

</attribute> </tag>

</taglib>

Java Server PagesTag-Bibliotheken

Page 29: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

29Java Praktikum – SS 2010 – [email protected]

Java Server Pages

• Grundlagen– Syntax, Lebenszyklus, …

• Java Beans– Formularverarbeitung, benutzerdef. Tags, …

• Sonstiges– Alternativen zu JSPs, Zusammenfassung, Links, …

Page 30: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

30Java Praktikum – SS 2010 – [email protected]

Java Server PagesAlternativen zu JSP

• Einfachere Skript-Sprachen als Java– Servlet-basierte Skriptsprachen: WebMacro, Tea, Velocity, ... siehe http://www.servlets.com/tools/index.html

– PHP: http://www.php.net/ – Ruby: http://www.ruby-lang.org/de/

• Java Web-Application Frameworks– Struts: http://struts.apache.org/ – Cocoon „XML publishing framework“: http://cocoon.apache.org/ – Java Server Faces: http://java.sun.com/javaee/javaserverfaces/ – Grails: http://grails.codehaus.org/

• ASP mit .NET (Microsoft)

Page 31: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

31Java Praktikum – SS 2010 – [email protected]

Java Server PagesZusammenfassung und Links

• Java Server Pages– HTML-Dokumente (statische Fragmente)– Eingebettete Java-Skripte (dynamische Fragmente)– Automatische Übersetzung in Servlets– Verwendung von Java-Beans– MVC-Pattern– Syntax Referencehttp://java.sun.com/products/jsp/syntax/2.0/syntaxref20.html

• Links– http://www.jsptutorial.org/ – http://www.servlets.com/index.tea – http://www.jsp-develop.de/ – http://de.wikipedia.org/wiki/Model_View_Controller

Page 32: JSP - Java Server Pages · Java Server Pages Webapplikation • JSP Container (konform zu Servlet Container) Tomcat, WebSphere, JBoss… • Java Development Kit am Server – Compiler!

Praktikum aus Softwareentwicklung 2

32Java Praktikum – SS 2010 – [email protected]

Ende der 6. Übung