Servlets und Java Server Pages

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "Servlets und Java Server Pages"

Transkript

1 Java: Kapitel 10 Einführung in die Java Platform, Enterpri Edition (Java EE): Servlets und Java Server Pages Programmentwicklung WS 2008/2009 Holger Röder

2 Überblick über Kapitel 10 Überblick über die Java EE Statische und dynamische Web-Seiten, HTTP GET und POST Servlets Parameterzugriff Deployment von Web-Anwendungen Request- und Respon-Objekte Cookies Sitzungen Java Server Pages (JSP) Bestandteile von JSPs Integration von Servlets und JSPs 2

3 Überblick über die Java EE Die Java Platform, Enterpri Edition (Java EE; früher J2EE) ist eine Entwicklungsplattform für rverbasierte Java-Anwendungen. Java EE sieht ein verteiltes, mehrschichtiges und komponentenbasiertes Architekturmodell vor. Java EE ist insbesondere gut geeignet als Entwicklungsplattform für Web-Anwendungen. 3

4 Java EE Application Model Quelle: Sun Microsystems 4 Holger Röder

5 Java EE Server Infrastruktur Ein Java EE Application Server wird als Laufzeitumgebung für Java EE- Komponenten benötigt. Der Application Server stellt (häufig benötigte) Infrastruktur-Dienste für die eigentliche Anwendung bereit, z. B. Lebenszyklus-Verwaltung Sicherheit, Persistenz, Transaktionsverwaltung, Namens-/Verzeichnisdienste Kommunikation zwischen Komponenten Application Server umfasn meist zwei (logisch getrennte) Container: Web Container: Laufzeitumgebung für Java Server Pages und Servlets EJB Container: Laufzeitumgebung für Enterpri Java Beans Am Markt sind viele verschiedene Java EE Application Server verfügbar Vollständige Application Server: Sun Java System Application Server, IBM Websphere, Oracle, BEA WebLogic, JBoss etc. Nur Web Container: Apache Tomcat, Jetty etc. 5

6 Web-Container: Beispiel Apache Tomcat Apache Tomcat ist ein frei verfügbarer Web Container: Unterstützung für Servlets und JSPs Integrierter HTTP-Server Komplett in Java geschrieben, Open Source 6

7 Statische vs. dynamische Web-Seiten Klassische statische Web-Seiten: <html> <title>... Alle Dokumente (z. B. HTML-Seiten, Grafiken) sind statisch und werden vom Web-Server an den Client (Web-Browr) übermittelt. Web-Server HTTP Request HTTP Respon Web-Browr Benutzer 7

8 Statische vs. dynamische Web-Seiten (2) Dynamische Web-Seiten: <html> <title>... Statisch vorliegende Dokumente (z. B. Grafiken) werden vom Web-Server direkt zurückgeliefert. Dynamische Web-Seiten werden im Web Container (des Application Servers) bei jeder Anfrage dynamisch erzeugt HTTP Request: Parameter Application Server, Web Container Web-Server Servlet oder JSP HTTP Request HTTP Respon HTTP Respon: Dynamischer Inhalt Datenzugriff Web-Browr Datenbank Benutzer 8

9 Java Servlets Überblick Mit Hilfe der Java Servlet API können dynamische Web-Seiten implementiert werden. Servlets sind Java-Objekte, deren Klas das Interface javax.rvlet.servlet implementiert. Servlets werden innerhalb eines Web Containers ausgeführt. Der Web Container übernimmt das Lebenszyklus-Management des Servlets (Instanziierung, Aufruf, Zerstörung). Servlets können prinzipiell beliebige Arten von Anfragen beantworten, die an den Server gestellt werden (Request-Respon-Prinzip). In der Praxis wird in den meisten Fällen die abstrakte Basisklas HttpServlet verwendet. Ein HttpServlet beantwortet HTTP- Anfragen, die z. B. durch einen Web-Browr gestellt werden. Servlets bekommen vom Client Parameter im Request-Objekt übergeben. Servlets erzeugen meistens HTML-Code, der als Antwort im Respon-Objekt an den Client zurückgeliefert wird. 9

10 Request-Respon-Prinzip Der Web-Browr ndet einen Request (mit Parametern) an den Web Container. Der Web Container ruft das Servlet auf und übergibt den Request. Request Respon Web Container Servlet Geschäftslogik (in Standard-Java implementiert) Das Servlet erstellt dynamisch die Folgeite und liefert die an den Web-Browr zurück. 10

11 Aufgaben des Servlets Request Aufgabe 1 Durchführung der im Request angeforderten Tätigkeiten Geschäftslogik anwenden, Daten speichern etc. Dynamische Erzeugung des Antwortdokuments Meistens HTML, Rückgabe über Respon-Objekt Aufgabe 2 Respon 11

12 Servlet-Hierarchie Wichtig: Java EE ist nur eine Spezifikation. Die eigentliche Implementierung der Klasn ist Teil des Application Servers. 12

13 Servlet-Lebenszyklus Als Laufzeitumgebung ist der Web Container ist für das Lebenszyklus- Management der Servlets verantwortlich. Bei der ersten Anfrage wird das Servlet zunächst geladen und initialisiert Aufruf der Methode init() des Servlets Alle Anfragen werden an die Servlet-Instanz weitergegeben Generisch (in der Schnittstelle Servlet definiert): rvice(servletrequest req, ServletRespon res) Vereinfachung für HTTP-Anfragen (in HttpServlet definiert): doget(httpservletrequest req, HttpServletRespon resp) dopost(httpservletrequest req, HttpServletRespon resp) Wird der Server oder das Servlet gestoppt, entfernt der Web Container die Servlet-Instanz. Aufruf der Methode destroy() des Servlets 13

14 GET- und POST-Anfragen HTTP unterstützt verschiedene Request-Methoden: die Methoden GET und POST kommen am häufigsten zum Einsatz. GET-Anfragen: Parameter werden als Teil der URL übergeben: Bearbeitung in der Methode doget() des Servlets POST-Anfragen: Parameter werden als parater Teil der Requests übergeben, sind nicht Teil der URL Einsatz bei Formularen, allgemein bei größeren Datenmengen und Binärdaten Bearbeitung in der Methode dopost() des Servlets 14

15 Beispiel: Hello World als Java Servlet public class HelloWorldServlet extends HttpServlet public void init() throws ServletException { super.init(); // Eigene Initialisierung... } } Eigenes Servlet auf Basis von HttpServlet protected void doget(httpservletrequest request, HttpServletRespon respon) Zugriff auf Respon-Objekt throws ServletException, IOException { PrintWriter out = respon.getwriter(); HTML-Code, der als Antwort an out.println("<html><body>"); den Browr geschickt wird out.println("hallo Welt!<br />"); out.format ("Heute ist der %1$te. %1$tB!", new Date()); out.println("</body></html>"); out.clo(); } Geschäftslogik : Aufruf beliebiger Java-Objekte 15

16 Beispiel: Hello World als Java Servlet (2) Aufruf des Servlets im Web-Browr: Zuvor muss der Web Container entsprechend konfiguriert und das Servlet im Web Container installiert werden. 16

17 Deployment von Web-Anwendungen Das Installieren einer Java EE Web-Anwendung in einem Web Container wird als Deployment bezeichnet. Eine Web-Anwendung kann Servlets, Java Server Pages, statische HTML-Seiten, Grafiken etc. umfasn. Zusätzlich wird eine Konfigurationsdatei benötigt (web.xml). Die XML-Konfigurationsdatei wird als Deployment Descriptor bezeichnet. Sie enthält Informationen über die Web-Anwendung, die der Application Server für die Einbindung benötigt. Web-Anwendungen werden häufig als einzelnes Archiv (WAR, Web Application archive) ausgeliefert. 17

18 Deployment Descriptor Beispiel: Auschnitt aus einer Konfigurationsdatei web.xml web.xml <web-app id="helloworldservlet"...> <display-name> HelloWorld</display-name> <rvlet> <rvlet-name>helloworldservlet</rvlet-name> <rvlet-class>pe.helloworldservlet</rvlet-class> </rvlet> <rvlet-mapping> <rvlet-name>helloworldservlet</rvlet-name> <url-pattern>/helloworldservlet</url-pattern> </rvlet-mapping> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app> 18

19 Deployment aus Eclip Das Eclip Web Tools Platform Project erleichtert die Entwicklung von JEE-Anwendungen in Eclip. Das Deployment von Web-Anwendungen und die Kontrolle des Application Servers ist auf die Wei bequem aus Eclip heraus möglich. 19

20 Auswertung von HTML-Formularen HTML-Formulare werden zur Dateneingabe auf Web-Seiten verwendet. <html> Request-Methode POST <body> <form action="helloworldservlet" method ="post"> Eingabe: <input type="text" name="eingabe" /> <br /><br /> Ausgabe: <!-- Hier steht die Ausgabe --> <br /><br /> <input type="submit" value="text spiegeln" /> </form> </body> </html> Der Inhalt der Eingabefelder wird häufig per POST-Request an den Server übertragen. 20

21 Auswertung von HTML-Formularen (2) Die Bearbeitung im Servlet erfolgt in der Methode dopost(). Auf die mitgeschickten Parameter (Formularinhalte) kann über das Request-Objekt zugegriffen werden.... protected void dopost(httpservletrequest request, HttpServletRespon respon) Auslen des HTMLthrows ServletException, IOException { Parameters eingabe PrintWriter out = respon.getwriter(); String eingabe = request.getparameter("eingabe"); String html = erzeugehtml(eingabe); /* Hilfsmethode */ out.println(html); out.clo(); }... 21

22 Anfrage-Objekte: ServletRequest 22 Holger Röder

23 HttpServletRequest Die Schnittstelle HttpServletRequest repräntiert eine HTTP- Anfrage. Verschiedene Methoden bieten Zugriff auf die Bestandteile der Anfrage, z. B. String getquerystring(): liefert den Query String, der nach dem Aufrufpfad folgt (bei GET-Anfragen: Parameterliste). Enumeration getparameternames(): liefert die Namen aller Parameter String getparameter(string): liefert den Wert des angegebenen Parameters String[] getparametervalues(string): liefert alle Werte des angegebenen Parameters Auch Informationen über den aufrufenden Client können ermittelt werden, z. B. String getremoteaddr(): liefert die IP-Adres des Clients String getremotehost(): liefert den Hostnamen des Clients 23

24 HttpServletRequest (2) Beispiel: Aufruf der folgenden URL im Web-Browr String s1 = req.getremoteaddr(); // String s2 = req.getquerystring(); // p1=ab&p2=2007 String s3 = req.getparameter("p2"); // 2007 Enumeration params = req.getparameternames(); // p1, p

25 Antwort-Objekte: ServletRespon 25 Holger Röder

26 HttpServletRespon Die Schnittstelle HttpServletRespon repräntiert eine Antwort des Servlets auf eine HTTP-Anfrage. Die Methode getwriter() liefert ein PrintWriter-Objekt zurück, über das Text (z. B. HTML-Code) als Antwort zurückgeliefert werden kann. PrintWriter out = respon.getwriter(); out.println("<html><body> Hallo Welt! </body></html>");... Sollen Binärdaten zurückgeliefert werden (z. B. dynamisch erzeugte Grafiken), kann ServletOutputStream getoutputstream() verwendet werden. Weitere Methoden: ndredirect(string): leitet die Anfrage um theader(string, String): tzt einen HTTP-Header 26

27 HTTP-Cookies Einfache Daten können vom Server als sogenanntes Cookie auf dem Client gespeichert werden. Bei jeder Anfrage ndet der Web-Browr die für dien Server (bzw. Pfad) gespeicherten Cookies mit. Die Nutzlast eines Cookies besteht im Wentlichen aus einem Name-Wert-Paar. Beispiele: urid=carlcoder, lastvisit= Zusätzlich werden für jedes Cookie weitere Informationen gespeichert, etwa der zugehörige Server, der zugehörige Pfad und das maximale Alter des Cookies. Cookies werden häufig zur (Wieder-)Erkennung des Clients oder für das Sitzungsmanagement eingetzt. 27

28 Die Klas Cookie Cookies auslen Die Klas Cookie im Paket javax.rvlet.http bietet Unterstützung bei der Verwendung von Cookies. Alle vom Client mitgeschickten Cookies können über die Methode Cookie[] getcookies() des Request-Objekts ermittelt werden. Die in den einzelnen Cookies gespeicherten Daten können über dann über entsprechende Methoden (getname(), getvalue() etc.) ausgelen werden. PrintWriter out = respon.getwriter(); if (request.getcookies()!= null) { /* Cookies mitgeschickt */ for (Cookie c : request.getcookies()) { String cookiename = c.getname(); String cookievalue = c.getvalue(); out.println(cookiename + " = " + cookievalue); } 28

29 Die Klas Cookie Cookies schreiben Der Konstruktor Cookie(String, String) erzeugt ein neues Cookie mit dem angegebenen Name-Wert-Paar als Inhalt. Die Eigenschaften des Cookies können über entsprechende Methoden getzt werden (tmaxage(), tdomain() etc.). Über die Methode addcookie(cookie) des Respon-Objekts kann ein Cookie zum Client gendet werden. Cookie c = new Cookie("lastVisit", " "); c.tmaxage(24*60*60); /* Max. 1 Tag speichern */ respon.addcookie(c); 29

30 Sitzungen HTTP ist zustandslos, jede HTTP-Anfrage erfolgt unabhängig von anderen Anfragen. In vielen Fällen sollen aufeinanderfolgende Anfragen eines Clients dennoch miteinander verknüpft und ein gemeinsamer Zustand über die Anfragen hinweg bewahrt werden. Eine solche Folge von zusammenhängenden Anfragen wird als Sitzung (Session) bezeichnet. Die Servlet API bietet Unterstützung für die Sitzungsverwaltung (Session Management). Wichtig: Die technische Realisierung der Sitzungsverwaltung bleibt dem Web Container überlasn (z. B. durch Cookies, durch URL- Encoding etc.) 30

31 HttpSession Die Klas HttpSession repräntiert eine Client-Sitzung. Über die Methode getsession() des Request-Objekts kann das HttpSession-Objekt für den anfragenden Client ermittelt werden. In der Session können beliebige Objekte (Object) unter einem eindeutigen Namen (String) gespeichert und ausgelen werden. // Objekt in Session speichern HttpSession ssion = request.getsession(); Double summe = 14.99; ssion.tattribute("gesamtsumme", summe);... // Objekt aus Session auslen HttpSession ssion = request.getsession(); Double summe = (Double) ssion.getattribute("gesamtsumme"); Die Sitzung wird nach einer festgelegten Zeitspanne, innerhalb der keine Anfragen vom Client kommen, ungültig. ssion.tmaxinactiveinterval(5*60); // max. 5min Inaktivität... ssion.invalidate(); // alternativ: Session sofort ungültig machen 31

32 Java Server Pages Die alleinige Verwendung von Java Servlets kann problematisch in: Präntations- und Verarbeitungslogik werden vermischt. HTML-Entwicklungswerkzeuge sind nicht verwendbar. Java Server Pages (JSPs) können hier Abhilfe schaffen. JSPs sind für den Einsatz als Web-Seiten konzipiert, die sowohl statische als auch dynamische generierte Teile beinhalten. Präntations- und Verarbeitungslogik werden im Vergleich zu normalen Servlets strikter getrennt. Dynamische Inhalte werden über spezielle JSP Tags eingebunden. Die fachliche Verarbeitung erfolgt in Komponenten (z. B. Java Beans). Technisch betrachtet sind auch JSPs Servlets: beim ersten Aufruf einer JSP wird die in ein Servlet übertzt und kompiliert. 32

33 JSP-Beispiel Normaler HTML- Code JSP-page-Direktive page... %> Java-Code, eingeschlosn in <%... %> Tags out und request stehen als Objekte direkt zur Verfügung index.jsp page language="java" contenttype="text/html; chart=iso " pageencoding="iso "%> <html> <head> <title>text spiegeln</title> </head> <body> <form method ="post"> Eingabe: <input type="text" name="eingabe" value="" /> <br /><br /> Ausgabe: <strong> <% String eingabe = request.getparameter("eingabe"); if (eingabe!= null) { String ausgabe = new StringBuilder(eingabe).rever().toString(); out.print(ausgabe); } %> </strong> <br /><br /> <input type="submit" value="text spiegeln" /> </form><br /> </body> </html> 33

34 JSPs und JavaBeans JavaBeans werden in JSPs häufig für die fachliche Verarbeitungslogik eingetzt. Die Einbindung von JavaBeans erfolgt über den Tag <jsp:ubean... />... Java-Klasnname <body> <form method ="post"> <jsp:ubean id="reverstringbean" class="reverstringbean" scope="ssion" /> <jsp:tproperty name="reverstringbean" property="string" value="<%= request.getparameter("eingabe") %>" /> Eingabe: <input type="text" name="eingabe" value="<jsp:getproperty name="reverstringbean" property="string"/>" /> <br /><br /> Ausgabe: <strong> <jsp:getproperty name="reverstringbean" property="reverstring"/> </strong> <br /><br /> <input type="submit" value="eingabe spiegeln" /> </form><br /> </body>... Lebensdauer (page, request, ssion application) Zugriff auf die JavaBean 34

35 JavaBeans ReverTextBean.java public class ReverStringBean { String string = ""; public void tstring(string s) { if (s!= null) string = s; } public String getstring() { return string; } public String getreverstring() { return new StringBuilder(string).rever().toString(); } } JavaBeans sind normale Java- Klasn Auf bestimmte Eigenschaften (Properties) der JavaBean kann aus der JSP heraus zugegriffen werden. In der JavaBean-Klas existieren tx(...) und/oder getx()-methoden für die Property X Der Zugriff in der JSP erfolgt über die JSP-Tags <jsp:tproperty> und <jsp:getproperty> 35

36 JSPs und JavaBeans (2) Die Properties einer JavaBean können fest mit den im Request-Objekt gespeicherten Parametern verknüpft werden.... <jsp:tproperty name="reverstringbean" property="*" />... Mit * werden alle Properties mit gleichnamigen Parametern verknüpft; alternativ können auch einzelne Parameter angegeben werden. 36

37 Wichtige JSP-Direktiven und -Tags Include-Direktive Syntax: include file="..." %> Fügt (einmalig) vor dem Kompilieren der JSP den Inhalt einer Datei ein Include-Tag Syntax: <jsp:include page="..." /> Fügt beim Aufruf der JSP den Inhalt der angegebenen statischen oder dynamischen Ressource (z. B. JSP) ein Forward-Tag Syntax: <jsp:forward page="..." /> Leitet die Client-Anfrage an die angegebene HTML-Datei, JSP oder das Servlet zur Verarbeitung weiter 37

38 JSP-Scripting: Deklarationen und Ausdrücke JSPs können normalen Java-Quellcode enthalten, der beim Aufruf der JSP ausgeführt wird (Scripting). Deklarationen: Syntax: <%!... %> Deklaration von Variablen und Methoden (durch Semikolon abgeschlosn) <%! int a = 17; %> Ausdrücke: Syntax: <%=... %> Beliebige gültige Ausdrücke sind zulässig (ohne abschließendes Semikolon). Der jeweilige Ausdruck wird zur Laufzeit ausgewertet und der resultierende Wert in einen String konvertiert. a + b = <%= a + b %> 38

39 Scriptlets Vollständige Java-Code-Blöcke in JSPs werden als Scriptlets bezeichnet. Syntax: <%... %> <% %> String eingabe = request.getparameter("eingabe"); if (eingabe!= null) { String ausgabe = new StringBuilder(eingabe).rever().toString(); out.print(ausgabe); } 39

40 Scriptlets: Implizite Variablen Innerhalb von Scriptlets stehen verschiedene implizite Variablen zur Verfügung, die ohne Deklaration verwendet werden können, z. B. ServletRequest request ServletRespon respon JspWriter out HttpSession ssion... <% %> out.println("hallo Welt!"); 40

41 Kommentare Versteckte Kommentare (Hidden Comments) Syntax: <%-- Kommentar --%> Versteckte Kommentare können zur Dokumentation des JSP- Codes verwendet werden. Sie werden von der JSP-Engine nicht verarbeitet und deshalb auch nicht zum Client gendet. Ausgabe-Kommentare (Output Comments) Syntax: <!-- Kommentar --> Ausgabe-Kommentare sind normale HTML-Kommentare, die auch im an den Client gendeten HTML-Code enthalten sind. 41

42 Zusammenspiel von Servlets und JSPs Das Servlet führt alle Tätigkeiten aus, die durch den Request angefordert sind ( Aufgabe 1 ). Die Darstellung wird an die JSP delegiert. Die JSP implementiert die Darstellung der Folgeite ( Aufgabe 2 ). Die für die Darstellung benötigten Daten werden aus dem Request-Objekt oder über JavaBeans geholt, die ihrerits auf die Geschäftslogik zugreifen. Request Respon Web Container Servlet JSP Geschäftslogik JavaBeans 42

43 Datenübergabe Servlet JSP Beide Technologien Servlets und JSPs können kombiniert werden: Servlets: Bearbeitung der Anfragen (Geschäftslogik) JSPs: Präntation der Antworten Übergabe von Daten vom Servlet an die JSP: 1. Der Web Container ruft bei einem ankommenden Request das Servlet auf. 2. Das Servlet bearbeitet die Anfrage. 3. Ermittelte Ergebnis werden als Attribute im Request-Objekt gespeichert: request.tattribute("gesamtsumme", summegesamt); 4. Mittels eines Dispatching-Mechanismus wird die JSP aufgerufen und das Request-Objekt übergeben. 5. JSP liest das Attribut aus dem Request-Objekt aus: Double summe = request.getattribute("gesamtsumme"); 6. JSP erzeugt dynamisch die HTML-Darstellung. 7. HTML-Seite wird an den Client zurückgeschickt. 43

44 Dispatching-Mechanismen Um innerhalb eines Servlets eine JSP aufzurufen, muss zunächst ein RequestDispatcher-Objekt erzeugt werden. RequestDispatcher dispatcher = getservletcontext().getrequestdispatcher("/meinejsp.jsp"); Anschließend existieren zwei verschiedene Aufruf-Möglichkeiten: include() bindet die JSP ein, anschließend fährt das Servlet mit der Verarbeitung fort. include() kann mehrfach aufgerufen werden. dispatcher.include(request, respon);... // weitere Anweisungen forward() übergibt die Kontrolle vollständig an die JSP. Das Servlet ist anschließend in die Bearbeitung der Anfrage nicht mehr eingebunden. forward() kann deshalb auch nur einmal aufgerufen werden. dispatcher.forward(request, respon); 44

Java - Webapplikationen

Java - Webapplikationen Java - Webapplikationen Bestandteile (HTTP,, JSP) Aufbau (Model View Controller) Datenverwaltung (Java Beans, Sessions) Entwicklung (Projektstruktur, Sysdeoplugin für Eclipse) 17. Januar 2006 Jan Hatje

Mehr

Praktikum Datenbanken und verteilte Systeme SS Java Server Pages und Servlets -

Praktikum Datenbanken und verteilte Systeme SS Java Server Pages und Servlets - Praktikum Datenbanken und verteilte Systeme SS 2008 - Java Server Pages und Servlets - Verteilte Systeme und Informationssysteme (VSIS) Department Informatik Universität Hamburg Infrastruktur vsispoolx

Mehr

Servlet-zentrierte Architektur von Web-Anwendungen mit Java Servlets, Java Server Pages (JSPs) und Java Beans

Servlet-zentrierte Architektur von Web-Anwendungen mit Java Servlets, Java Server Pages (JSPs) und Java Beans Projekt Entwicklung verteilter Softwaresysteme mit Web Services SoSe 2008 - Java Server Pages und Servlets - 7. April 2008 Verteilte Systeme und Informationssysteme (VSIS) Department Informatik Universität

Mehr

Programmieren II. Wie kommen Daten von einem Webserver? Vorlesung 12. Handout S. 1. Martin Schultheiß. Hochschule Darmstadt Sommersemester 2011

Programmieren II. Wie kommen Daten von einem Webserver? Vorlesung 12. Handout S. 1. Martin Schultheiß. Hochschule Darmstadt Sommersemester 2011 Programmieren II Martin Schultheiß Hochschule Darmstadt Sommersemester 2011 1 / 23 2 / 23 Wie kommen Daten von einem Webserver? In der Praxis existieren verschiedene Wege, wie ein Server einem Client zu

Mehr

Praktikum Datenbanksysteme. Ho Ngoc Duc IFIS - Universität zu Lübeck 01.06.2005

Praktikum Datenbanksysteme. Ho Ngoc Duc IFIS - Universität zu Lübeck 01.06.2005 Praktikum Datenbanksysteme Ho Ngoc Duc IFIS - Universität zu Lübeck 01.06.2005 Tomcat-Installation $JAVA_HOME (z.b. /home/dbp00/j2sdk1.4.2) $CATALINA_HOME (/home/dbp00/jakarta-tomcat-4) Skripte zum Start/Stop:

Mehr

Einführung Servlets. JEE Vorlesung Teil 2. Ralf Gitzel

Einführung Servlets. JEE Vorlesung Teil 2. Ralf Gitzel Einführung Servlets JEE Vorlesung Teil 2 Ralf Gitzel ralf_gitzel@hotmail.de 1 Übersicht Wiederholung Hello World Blick in die Details Servlet Programmierung Potentielle Fehler Lernziele Gruppenübung 2

Mehr

Java zur Realisierung von Internetanwendungen

Java zur Realisierung von Internetanwendungen Java zur Realisierung von Internetanwendungen Elementare Web-Programmierung Prof. Dr. Bernhard Schiefer HTTP Web-Browser Web-Browser GET http://www.zw.fh-kl.de/beispiel.htm beispiel

Mehr

e-commerce Running Tomcat

e-commerce Running Tomcat e-commerce Running Tomcat Servlets im Tomcat Web-Container deployen Prof. Dr. Nikolaus Wulff Das BookStore Servlet Prof. Dr. Nikolaus Wulff ecommerce 2 HTTP und HTML Das HyperText TransferProtokoll (HTTP)

Mehr

Webanwendungen mit Java

Webanwendungen mit Java Vorlesungsreihe Entwicklung webbasierter Anwendungen Webanwendungen mit Java Prof. Dr.-Ing. Thomas Wiedemann email: wiedem@informatik.htw-dresden.de HOCHSCHULE FÜR TECHNIK UND WIRTSCHAFT DRESDEN (FH) Fachbereich

Mehr

Web 2.0 Software-Architekturen

Web 2.0 Software-Architekturen Web 2.0 Software-Architekturen Servlets als Controller einer MVC Web Architektur Prof. Dr. Nikolaus Wulff HTTP und HTML Das HyperText TransferProtokoll (HTTP) beschreibt eine einfache verbindungslose Kommunikation,

Mehr

FHZ. Servlets/JSP. Lernziele. Hochschule Technik+Architektur Luzern. Inhalt

FHZ. Servlets/JSP. Lernziele. Hochschule Technik+Architektur Luzern. Inhalt Inhalt 1. Grundlagen 1. Einführung 2. Programmieren für das Web 2. Servlets 3. JSP (Java Server Pages) 4. Beispiel Country 1. Dateneingabe von Benutzer 2. Parameterübergabe 3. Auswerten eines Formulars

Mehr

Web 2.0 Software-Architekturen

Web 2.0 Software-Architekturen Web 2.0 Software-Architekturen JavaServerPages als dynamische View einer MVC Anwendung Prof. Dr. Nikolaus Wulff Von Servlets zu JSP's Die Erstellung der HTML Ausgabe in einem Servlet endete in uneffektiven

Mehr

i n g e n i e u r b ü r o f ü r s o f t w a r e t e c h n o l o g i e w w w. v o e l t e r. d e Servlet Debugging

i n g e n i e u r b ü r o f ü r s o f t w a r e t e c h n o l o g i e w w w. v o e l t e r. d e Servlet Debugging Servlet Debugging Markus Völter, voelter@acm.org, www.voelter.de Bei der Arbeit mit Servlets kommt man recht schnell an den Punkt, an dem man Servlets vernünftig testen oder debuggen will. Mit Hilfe des

Mehr

Web-Programmierung (WPR)

Web-Programmierung (WPR) Web-Programmierung (WPR) Vorlesung VI. JavaServets u. Java Server Pages (JSP) mailto:wpr@gruner.org 1 14.1 Java Servlets Java Servlets = Java-Klassen Dynamisches Laden beim Aufruf Laufzeitumgebung = Servlet-Container

Mehr

Client/Server-Programmierung

Client/Server-Programmierung Client/Server-Programmierung WS 2013/2014 Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 6. Februar 2014 Betriebssysteme / verteilte

Mehr

Application Server und Continuous Integration

Application Server und Continuous Integration Application Server und Continuous Integration Outline 2 Einleitung Application Server Java EE Enterprise Applikationen vs. Web Applikationen Web Application Life Cycle Servlets JavaServer Pages verschiedene

Mehr

Web- Applikationen. in Java-Web

Web- Applikationen. in Java-Web Einführung in Java-Web Web- Applikationen Frank Huber Humboldt-Universität zu Berlin Allgemeines Java: Programmierung ist Programmierung nach Konvention Insbesondere bei Web-Applikationen wurde eine API

Mehr

Projekt Systementwicklung. Wie kommen Daten von einem Webserver? Java-Applikationsserver. Servlets, JSP. Handout S. 1. Dr.

Projekt Systementwicklung. Wie kommen Daten von einem Webserver? Java-Applikationsserver. Servlets, JSP. Handout S. 1. Dr. Projekt Systementwicklung Dr. Klaus Höppner Hochschule Darmstadt Wintersemester 2009/2010 1 / 32 Wie kommen Daten von einem Webserver? In der Praxis existieren verschiedene Wege, wie ein Server einem Client

Mehr

Praktikum Datenbanksysteme. Ho Ngoc Duc IFIS Universität zu Lübeck 28.05.2003

Praktikum Datenbanksysteme. Ho Ngoc Duc IFIS Universität zu Lübeck 28.05.2003 Praktikum Datenbanksysteme Ho Ngoc Duc IFIS Universität zu Lübeck 28.05.2003 Nullwerte und Primitive Typen Wenn parent==null, was wird in der Datenbank gespeichert? Wenn man aus der DB liest, wie kann

Mehr

JSP und Servlet Programmierung

JSP und Servlet Programmierung Seminarunterlage Version: 5.02 Copyright Version 5.02 vom 1. März 2013 Dieses Dokument wird durch die veröffentlicht. Copyright. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen

Mehr

Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java

Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java Präsentation zur Diplomarbeit von Übersicht Java 2 Enterprise Edition Java Servlets JavaServer Pages Enterprise JavaBeans Framework

Mehr

Inhaltsverzeichnis. 1. Vortrag. 1. Vortrag Beispiele Quellen Seite 1 / 14

Inhaltsverzeichnis. 1. Vortrag. 1. Vortrag Beispiele Quellen Seite 1 / 14 Inhaltsverzeichnis 1. Vortrag...1 2. Beispiele...10 3. Quellen...14 1. Vortrag Seite 1 / 14 Servlets Roadmap Was sind Servlets? Wozu braucht man Servlets? Wie erstellt man Servlets? Wie benutzt man Servlets?

Mehr

Programmieren II. Remote-Programmierung. www.kit.edu. Institut für Angewandte Informatik

Programmieren II. Remote-Programmierung. www.kit.edu. Institut für Angewandte Informatik Programmieren II Remote-Programmierung KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Remote-Programmierung Remote Method Invocation

Mehr

Remote- und Server-Programmierung. Dr. Wolfgang Süß Thorsten Schlachter

Remote- und Server-Programmierung. Dr. Wolfgang Süß Thorsten Schlachter Remote- und Server-Programmierung Dr. Wolfgang Süß Thorsten Schlachter Remote Method Invocation (RMI) Servlets WebServices 2 Remote Method Invocation (RMI) Das Remote Method Invocation (RMI)-Framework

Mehr

Inhaltsverzeichnis. Zusammenfassung Wydler

Inhaltsverzeichnis. Zusammenfassung Wydler Inhaltsverzeichnis 1 Multitier Anwendungen... 2 2 J2EE Komponenten... 2 2.1 J2EE Design Patterns for Performance... 2 2.1.1 Design Patterns... 2 2.1.2 Session Façade... 2 2.1.3 Data Transfer Object (Value

Mehr

Programmierung von Client/Server- Anwendungen

Programmierung von Client/Server- Anwendungen Programmierung von Client/Server- Anwendungen Komponenten des Web-Containers (Java EE) SoSe2015 Prof. Dr. Andreas Schmietendorf 1 Übersicht zur Vorlesung Entwicklung der Java Enterprise Edition Servlets,

Mehr

Inhalt: Konfiguration: web.xml ; server.xml Workflow: Weiterleitung von Requests Lektion II-IV Lektion V-VI

Inhalt: Konfiguration: web.xml ; server.xml Workflow: Weiterleitung von Requests Lektion II-IV Lektion V-VI Servlet II Inhalt: Konfiguration: web.xml ; server.xml Workflow: Weiterleitung von Requests Lektion II-IV Lektion V-VI 3-1 1. Grundlagen 2. Servlets 3. JSP 4 1.1. JAR Files 4 1.2. TCP/IP, Sockels 4 1.3.

Mehr

J a v a S e r v l e t s

J a v a S e r v l e t s J a v a S e r v l e t s Eine Einführung (C) J.M.Joller 1 Inhalt Mitgelieferte Bibliothekselemente Überblick Funktionsweise und Architektur Interaktion Resümee (C) J.M.Joller 2 Überblick Was sind Servlets?

Mehr

Datenbanksysteme SS 2007

Datenbanksysteme SS 2007 Datenbanksysteme SS 2007 Frank Köster (Oliver Vornberger) Institut für Informatik Universität Osnabrück Kapitel 9b: Datenbankapplikationen Statische Web-Seiten Nutzung von HTML Beispiel:

Mehr

Java Server Pages (JSP)

Java Server Pages (JSP) Überblick über Internet-Technologien Server-Technologien Datenbankkopplung Servlets JSP PHP CGI XML+XSL Dokumentsprachen Client-PGM ruft DB-Server Web-Server ruft Datenbankserver HTML+Javascript HTML+Applets

Mehr

Java Servlet Technology

Java Servlet Technology 0 Java Servlet Technology Seminar Medientechnik Christina Eicher 30. Juni 2003 1 Übersicht: 1. Was ist ein Servlet? 2. Cookies und Sessions 3. Die Servlet-Klassen und das Servlet-Interface 4. Der Servlet-Container

Mehr

Praktikum aus Softwareentwicklung 2, Stunde 11

Praktikum aus Softwareentwicklung 2, Stunde 11 Praktikum aus Softwareentwicklung 2, Stunde 11 Lehrziele/Inhalt 1. Java Servlet Java Servlet Java Servlets sind auf Java basierende Web-Komponenten. Sie werden von einem Container verwaltet und können

Mehr

Webanwendungen mit Java und JavaServerPages

Webanwendungen mit Java und JavaServerPages Webanwendungen mit Java und JavaServerPages ohne JS und ohne Framework Michael Dienert 24. Februar 2016 Inhaltsverzeichnis 1 model2 mit Netbeans und tomcat 1 1.1 Projekt anlegen.............................

Mehr

Web-Technologien und Java-Web-Anwendungen. der große Überblick

Web-Technologien und Java-Web-Anwendungen. der große Überblick Web-Technologien und Java-Web-Anwendungen der große Überblick Literaturtipp: Heiko Wöhr Webtechnologien Konzepte Programmiermodelle Architekturen dpunkt Heidelberg 2004 (c) schmiedecke 07 SE2-2-Java-Web-Anwendungen

Mehr

Java: Kapitel 1. Überblick. Programmentwicklung WS 2008/2009. Holger Röder Holger Röder

Java: Kapitel 1. Überblick. Programmentwicklung WS 2008/2009. Holger Röder Holger Röder Java: Kapitel 1 Überblick Programmentwicklung WS 2008/2009 Holger Röder holger.roeder@informatik.uni-stuttgart.de Was ist Java? Die Java-Technologie umfasst die Programmiersprache Java sowie die Java-Plattform

Mehr

Entwicklung von Web-Anwendungen auf JAVA EE Basis

Entwicklung von Web-Anwendungen auf JAVA EE Basis Entwicklung von Web-Anwendungen auf JAVA EE Basis Java Enterprise Edition - Überblick Prof. Dr. Bernhard Schiefer Inhalt der Veranstaltung Überblick Java EE JDBC, JPA, JNDI Servlets, Java Server Pages

Mehr

Softwareentwicklung mit Enterprise JAVA Beans

Softwareentwicklung mit Enterprise JAVA Beans Softwareentwicklung mit Enterprise JAVA Beans Java Enterprise Edition - Überblick Was ist J2EE Java EE? Zunächst mal: Eine Menge von Spezifikationen und Regeln. April 1997: SUN initiiert die Entwicklung

Mehr

4. Servlets Ein kleiner Einstieg. Kurze Java Historie. Erinnerung: Internet Anwendungen. Konzept eines Seitenaufrufs

4. Servlets Ein kleiner Einstieg. Kurze Java Historie. Erinnerung: Internet Anwendungen. Konzept eines Seitenaufrufs 4. s Ein kleiner Einstieg Erinnerung: HTTP und HTML Idee von Web n und Containern Erstellung einfacher s (zunächst software technisch übelst unstrukturiert) Literatur: B. Basham, K. Sierra, B. Bates, Head

Mehr

Webbasierte Informationssysteme

Webbasierte Informationssysteme Beispiel: Web-Shop SS 2004 Prof. Dr. Stefan Böttcher Universität Paderborn Applikation Software Client Web-Shop,... Web-Browser mit Applet,...??? Server Produkt- Datenbank Web-Server, Servlet Datenbank,...

Mehr

Der IBM Websphere Portalserver

Der IBM Websphere Portalserver Der IBM Websphere Portalserver Ergebnisse aus dem Universitäts-Praxis-Projekt 2001/2002 Vortrag von Il-Hyun Kim und Horst Rechner am 19. Juli 2002 Weiterer Teilnehmer am UPP: Clemens Oertel Betreuer: Dipl.-Phys.

Mehr

Sitzungszustand. Vorläufige Version 309 c 2005 Peter Thiemann

Sitzungszustand. Vorläufige Version 309 c 2005 Peter Thiemann Sitzungszustand Gruppierung von Anfragen zu Sitzungen (Sessions) Klasse HttpServletRequest Methode HttpSession getsession (bool create) liefert aktuelle Sitzungsobjekt Zustand lokal zur Anwendung (ServletContext)

Mehr

Softwareentwicklung mit JAVA EE

Softwareentwicklung mit JAVA EE Softwareentwicklung mit JAVA EE Portlets Was sind Portale? Aufgaben von Portalsystemen Integration unterschiedlicher Anwendung Schwerpunkt liegt auf der Präsentationsebene Ermöglichung personalisierter

Mehr

Einleitung JavaServer Pages Erweiterungsmechanismen Beispiel Fazit. JavaServer Pages. Seminar Webprogrammierung WS04/05. Timothy Burk. 6.

Einleitung JavaServer Pages Erweiterungsmechanismen Beispiel Fazit. JavaServer Pages. Seminar Webprogrammierung WS04/05. Timothy Burk. 6. Seminar Webprogrammierung WS04/05 6. Juni 2005 1 Einleitung Die Vorgeschichte Java-Servlets 2 Merkmale Von der JSP zur HTML-Ausgabe Syntax 3 4 5 Die Vorgeschichte Java-Servlets Einleitung Ansätze für dynamische

Mehr

Java Server Pages 2 und Benutzerdefinierte Tags. Strahil Yordanov

Java Server Pages 2 und Benutzerdefinierte Tags. Strahil Yordanov Java Server Pages 2 und Benutzerdefinierte Tags Strahil Yordanov Überblick Einleitung JSP im Kontext von J2EE JSP2 Benutzerdefinierte Tags Zusammenfassung Einleitung Java Server Pages ist eine Technik

Mehr

JSP Grundlagen. JEE Vorlesung Teil 5. Ralf Gitzel ralf_gitzel@hotmail.de

JSP Grundlagen. JEE Vorlesung Teil 5. Ralf Gitzel ralf_gitzel@hotmail.de JSP Grundlagen JEE Vorlesung Teil 5 Ralf Gitzel ralf_gitzel@hotmail.de 1 Übersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht JSP Konzept Model-View-Controller mit JSPs JSP Expression Language EL Literale

Mehr

Java zur Realisierung von Internetanwendungen

Java zur Realisierung von Internetanwendungen Java zur Realisierung von Internetanwendungen Elementare Web-Programmierung HTTP Web-Browser Web-Browser GET http://www.zw.fh-kl.de/beispiel.htm Beispiel Ein

Mehr

Schritt 4: Hallo Enterprise Bean

Schritt 4: Hallo Enterprise Bean Prof. Dr. Th. Letschert FB MNI JEE Schritt 4: Hallo Enterprise Bean Einstieg: EJBs erzeugen und nutzen Meine erstes EJB Projekt Enterprise Beans sind eine Backend Technologie, die mit unterschiedlichen

Mehr

Dynamische Webseiten mit PHP. Oder: LAMP - The open way

Dynamische Webseiten mit PHP. Oder: LAMP - The open way Dynamische Webseiten mit PHP Oder: LAMP - The open way Verbreitung Neben ASP verbreitetste Web-Scripting-Umgebung LAMP (Linux, Apache, mysql, PHP): freie Alternative zu M$ Überblick Dynamische Webseiten

Mehr

Java 2, Enterprise Edition Einführung und Überblick

Java 2, Enterprise Edition Einführung und Überblick Universität aiserslautern AG Datenbanken und Informationssysteme Seminar Datenbank-Aspekte des E-Commerce Java 2, Enterprise Edition Einführung und Überblick m_husema@informatik.uni-kl.de Vortragsinhalte

Mehr

Web-basierte Anwendungssysteme PHP Teil 2

Web-basierte Anwendungssysteme PHP Teil 2 Web-basierte Anwendungssysteme PHP Teil 2 Prof. Dr. Armin Lehmann (lehmann@e-technik.org) Fachbereich 2 Informatik und Ingenieurwissenschaften Wissen durch Praxis stärkt Seite 1 Prof. Dr. Armin Lehmann

Mehr

Workshop Java Webentwicklung Tapestry. Ulrich Stärk

Workshop Java Webentwicklung Tapestry. Ulrich Stärk Workshop Java Webentwicklung Tapestry Ulrich Stärk Webanwendungen Antwort im Browser des Benutzers sichtbar Anfrage geht ein Antwort rendern Anfrage an passenden Code weiterleiten 2 Servlets Servlet wird

Mehr

Datenbanken: Servlets und JSP

Datenbanken: Servlets und JSP Datenbanken: Servlets und JSP Datenbank-Anwendungen für das Web basieren auf der Client - Server - oder Client - Middleware - Datenbankserver - Architektur. Grundsätzlich zu unterscheiden sind: Client-basierte

Mehr

Dynamische Webseiten mit JavaServer Pages (JSP)

Dynamische Webseiten mit JavaServer Pages (JSP) Dynamische Webseiten mit JavaServer Pages (JSP) einige Links: java.sun.com/products/jsp JavaServer Pages java.sun.com/products/servlets Java Servlet Technologie www.micromata.de Schrödinger (Download)

Mehr

A Java EE component is a self-contained functional software unit that is assembled into a Java EE. communicates with other components.

A Java EE component is a self-contained functional software unit that is assembled into a Java EE. communicates with other components. Begriffsdefinitionen Java EE A Java EE component is a self-contained functional software unit that is assembled into a Java EE application with its related classes and files and that communicates with

Mehr

Internetanbindung von Datenbanken

Internetanbindung von Datenbanken Internetanbindung von Datenbanken SQLJ Servlets http://galahad.informatik.fh-kl.de/frankfurter SQLJ-1 Gliederung Einführung in Servlets Entwicklungswerkzeuge Servlets HTML-Beispiel Servlet Beispiel Servlet

Mehr

Fortgeschrittene Servlet- Techniken. Ralf Gitzel ralf_gitzel@hotmail.de

Fortgeschrittene Servlet- Techniken. Ralf Gitzel ralf_gitzel@hotmail.de Fortgeschrittene Servlet- Techniken Ralf Gitzel ralf_gitzel@hotmail.de 1 Themenübersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht Servlet Initialisierung Attribute und Gültigkeitsbereiche Sessions

Mehr

6.9 Java Server Pages

6.9 Java Server Pages DocumentCollection dc = db.ftsearch(abfrage); Document d = dc.getfirstdocument(); while (d!= 0) { String Name = db.gettitle(); out.println(name + ""); d = dc.getnextdocument(); catch (NotesException

Mehr

4. Servlets Ein kleiner Einstieg

4. Servlets Ein kleiner Einstieg 4. Servlets Ein kleiner Einstieg Erinnerung: HTTP und HTML Idee von Web Servern und Containern Erstellung einfacher Servlets (zunächst software technisch übelst unstrukturiert) Literatur: B. Basham, K.

Mehr

JSP JSTL. JEE Vorlesung Teil 6. Ralf Gitzel ralf_gitzel@hotmail.de

JSP JSTL. JEE Vorlesung Teil 6. Ralf Gitzel ralf_gitzel@hotmail.de JSP JSTL JEE Vorlesung Teil 6 Ralf Gitzel ralf_gitzel@hotmail.de 1 Übersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht Wiederholung / Vertiefung JSTL Grundlagen JSTL Basisbefehle Templates über JSTL

Mehr

JSP Direktiven. Präprozessor-Anweisungen, die in die JSP-Datei eingebettet sind und vor dem eigentlichen Übersetzungsvorgang ausgeführt JSP

JSP Direktiven. Präprozessor-Anweisungen, die in die JSP-Datei eingebettet sind und vor dem eigentlichen Übersetzungsvorgang ausgeführt JSP JSP Direktiven Präprozessor-Anweisungen, die in die JSP-Datei eingebettet sind und vor dem eigentlichen Übersetzungsvorgang ausgeführt werden JSP Vorverarbeitung JSP* entfernt / ersetzt Direktiven sammelt

Mehr

OWASP Stammtisch München Sep 2014 XSS und andere Sicherheitslücken aus der Perspektive des Programmcodes

OWASP Stammtisch München Sep 2014 XSS und andere Sicherheitslücken aus der Perspektive des Programmcodes OWASP Stammtisch München Sep 2014 XSS und andere Sicherheitslücken aus der Perspektive des Programmcodes 1 XSS: Cross-Site Scripting 1.) Es gelangen Daten in den Web-Browser, die Steuerungsinformationen

Mehr

Servlets. Marc Monecke

Servlets. Marc Monecke Servlets Marc Monecke monecke@informatik.uni-siegen.de Praktische Informatik Fachbereich Elektrotechnik und Informatik Universität Siegen, D-57068 Siegen 16. Juni 2003 Zusammenfassung Neben statischem

Mehr

2. Interaktive Web Seiten. action in Formularen. Formular. Superglobale Variablen $ POST, $ GET und $ REQUEST. GET und POST

2. Interaktive Web Seiten. action in Formularen. Formular. Superglobale Variablen $ POST, $ GET und $ REQUEST. GET und POST 2. Interaktive Web Seiten GET und POST Die Übertragungsmethoden GET und POST sind im http Protokoll definiert: POST: gibt an, dass sich weitere Daten im Körper der übertragenen Nachricht befinden: z.b.

Mehr

Python CGI-Skripte erstellen

Python CGI-Skripte erstellen Python CGI-Skripte erstellen CGI (Common Gateway Interface)... ist eine Schnittstelle, um Scripte im Web bereitzustellen. ist eine Schnittstelle zwischen einem HTTP-Server und ausführbaren Programmen.

Mehr

ASP: Active Server Pages

ASP: Active Server Pages ASP: Active Server Pages Allgemeines: ASP ist die serverseitige Schnittstelle zu Skripten/Programmen ausgehend vom Microsoft-Internet- Information-Server (z.b. in Windows Server enthalten) Skript- und

Mehr

php Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick...2 2.Parameterübergabe...

php Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick...2 2.Parameterübergabe... php Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick...2 2.Parameterübergabe...7 3.Zugriff auf mysql Daten...11 Verteilte Systeme: php.sxw Prof.

Mehr

Java Web-Anwendungen Modell 1. JSPs & Servlets Beans Model-1-Architektur

Java Web-Anwendungen Modell 1. JSPs & Servlets Beans Model-1-Architektur Java Web-Anwendungen Modell 1 JSPs & Servlets Beans Model-1-Architektur Web-Server Was ist ein Web-Server? Implementierung des HTTP-Request-Response-Paradigmas Empfängt HTTP-Requests: URL evtl. mit Parametern

Mehr

Session Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de

Session Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de s & Servlet Integration Ralf Gitzel ralf_gitzel@hotmail.de 1 Themenübersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht Motivation Das Interface Stateful und Stateless s Programmierung einer Stateful

Mehr

Das WWW im Schweinsgalopp

Das WWW im Schweinsgalopp Das WWW im Schweinsgalopp Woher: T. Berners-Lee The actual observed working structure of the organisation is a multiply connected "web" whose interconnections evolve with time. In this environment, a new

Mehr

Anwendung eines Enterprise Java Beans

Anwendung eines Enterprise Java Beans Anwendung eines Enterprise Java Beans EJB Server EJB Container Remote Interface Home Interface EJB Object Der EJB Container kümmert sich um die Kommunikation des Beans mit anderen Komponenten, wobei er

Mehr

Einleitung. Gliederung. Struts-Framework. Model-View-Controller-Pattern

Einleitung. Gliederung. Struts-Framework. Model-View-Controller-Pattern Struts-Framework Model-View-Controller-Pattern STRUTS Open Source Web Application Framework Unterprojekt des Apache Jakarta Basierend auf: JSP, Servlets, JavaBeans Model View Controller Architektur Dipl.-Inf.

Mehr

FH LU JEE Vorlesung SS 2010. Ralf Gitzel ralf_gitzel@hotmail.de

FH LU JEE Vorlesung SS 2010. Ralf Gitzel ralf_gitzel@hotmail.de FH LU JEE Vorlesung SS 2010 Ralf Gitzel ralf_gitzel@hotmail.de 1 Einführung + Organisatorisches Ralf Gitzel ralf_gitzel@hotmail.de 2 Dozent Dr. Ralf Gitzel Promotion an der Universität Mannheim in Wirtschaftsinformatik

Mehr

Einführung. Ralf Gitzel

Einführung. Ralf Gitzel Einführung Ralf Gitzel ralf_gitzel@hotmail.de 1 Übersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht JSP Konzept JSP Beispiel Szenario Java Code in JSPs Unsere erste JSP Skriptfreie Seiten JSTL 3 JSP

Mehr

EJB Beispiel. JEE Vorlesung 10. Ralf Gitzel ralf_gitzel@hotmail.de

EJB Beispiel. JEE Vorlesung 10. Ralf Gitzel ralf_gitzel@hotmail.de EJB Beispiel JEE Vorlesung 10 Ralf Gitzel ralf_gitzel@hotmail.de 1 Stundenkonzept Gemeinsame Übung Stoff der letzten Stunde wird gemeinsam in einem Beispiel umgesetzt Details werden nochmals erklärt bzw.

Mehr

Web-Suche. Eingabeformulare. Websuche: Benutzer-Schnittstelle. Ein einfaches Suchformular. Benutzer-Schnittstelle.

Web-Suche. Eingabeformulare. Websuche: Benutzer-Schnittstelle. Ein einfaches Suchformular. Benutzer-Schnittstelle. Eingabeformulare Web-Suche Benutzer-Schnittstelle HTML unterstützt verschiedene Arten der Programmeingabe in Formularen einschließlich: Textbox Menüs Prüfbox Auswahlbuttons Wenn ein Anwender ein Formular

Mehr

Liste V Enterprise JavaBeans

Liste V Enterprise JavaBeans Liste V Enterprise JavaBeans Fachhochschule Wiesbaden, FB Design Informatik Medien Studiengang Allgemeine Informatik Vorlesung zur Vertiefungslehrveranstaltung Spezielle Methoden der Softwaretechnik SS

Mehr

3 Objektorientierte Konzepte in Java

3 Objektorientierte Konzepte in Java 3 Objektorientierte Konzepte in Java 3.1 Klassendeklarationen Fragen an die Klassendeklaration: Wie heißt die Klasse? Wer darf auf die Klasse und ihre Attribute/Methoden zugreifen? Ist die Klasse eine

Mehr

Kapitel 5 Serverseitige Technologien

Kapitel 5 Serverseitige Technologien Kapitel 5 Serverseitige Technologien Multimediale Web-Anwendungen Dr. E. Schön Sommersemester 2015 Folie 70 SSI-Beispiele Uhr

Mehr

Applets I. Grundlagen der g Applet-Programmierung

Applets I. Grundlagen der g Applet-Programmierung Applets I Grundlagen der g Applet-Programmierung 2 Inhalt Applets Was sind Applets Entwicklung Grundlagen Zustandssteuerung eines Applets Methoden zum Nachrichtentransfer Soundausgabe Animation Einbindung

Mehr

MCRServlet Table of contents

MCRServlet Table of contents Table of contents 1 Das Zusammenspiel der Servlets mit dem MCRServlet... 2 1 Das Zusammenspiel der Servlets mit dem MCRServlet Als übergeordnetes Servlet mit einigen grundlegenden Funktionalitäten dient

Mehr

Internetanbindung von Datenbanken

Internetanbindung von Datenbanken Internetanbindung von Datenbanken Oracle Application Server Oracle Application Server - 1 Gliederung Einführung Oracle Application Server (OAS) Praxis- und Diplomarbeitenverwaltung LiveHTML Kritik Becker,

Mehr

Programmieren von Webinformationssystemen

Programmieren von Webinformationssystemen Programmieren von Webinformationssystemen Wolfgang Gassler Databases and Information Systems (DBIS) Institute of Computer Science University of Innsbruck dbis-informatik.uibk.ac.at 1 HTML Hypertext Markup

Mehr

Spring Dynamic Modules for OSGi Service Platforms

Spring Dynamic Modules for OSGi Service Platforms Gerd Wütherich freiberuflicher Softwarearchitekt Spring Dynamic Modules for OSGi Service Platforms Server Anwendungen mit Spring und Eclipse Equinox Agenda OSGi Technologie: OSGi Technologie im Überblick

Mehr

JSP Usereingabe. Inhalt. 1 Zielsetzung. SEW(3.Jg) Unterlagen zu Java Server-Pages Teil 2

JSP Usereingabe. Inhalt. 1 Zielsetzung. SEW(3.Jg) Unterlagen zu Java Server-Pages Teil 2 JSP Usereingabe SEW(3.Jg) Unterlagen zu Java Server-Pages Teil 2 Inhalt 1 Zielsetzung... 1 2 Formulardaten bei dynamischen Webseiten... 2 2.1 Formulare mit HTML kreieren... 2 Formulare können einfach mit

Mehr

Grundlagen der. Marc Monecke

Grundlagen der. Marc Monecke Grundlagen der JavaServer Pages (JSP) Marc Monecke monecke@informatik.uni-siegen.de Praktische Informatik Fachbereich Elektrotechnik und Informatik Universität Siegen, D-57068 Siegen 1. Juli 2003 Zusammenfassung

Mehr

Java zur Realisierung von Internetanwendungen

Java zur Realisierung von Internetanwendungen Java zur Realisierung von Internetanwendungen MVC, JSP, Custom und Core Tags Darstellungsschicht Anwendungsschicht Datenschicht Architektur Browser Applikationsserver mit Servlet-Container DB-Server Web2-2

Mehr

Überblick über Internet-Technologien

Überblick über Internet-Technologien WebServer-Technologien SS 2004 Prof. Dr. Stefan Böttcher Universität Paderborn - SS 2004 - Prof. Dr. Stefan Böttcher Folie 1 Überblick über Internet-Technologien Server-Technologien XSP Java Server Pages

Mehr

Existierende Systeme I Bibliotheken & Frameworks

Existierende Systeme I Bibliotheken & Frameworks Projektgruppe: Generierung von Webanwendungen aus visuellen Spezifikationen Existierende Systeme I Bibliotheken & Frameworks Von Christian Schneider Paderborn, den 18.06.2004 Übersicht Motivation Dynamische

Mehr

FileMaker und PHP Workshop

FileMaker und PHP Workshop FileMaker und PHP Workshop 2-stündiger Ausschnitt aus einem 3-tägigen Schulungsprogramm Bernhard Schulz FileMaker Konferenz 2010 / Zürich Ziel des Workshops Kennenlernen von PHP Möglichkeiten von FileMaker

Mehr

Apache Tomcat. Inhalt. Rechner und Netzarchitektur SS 2003. Einleitung. Architektur

Apache Tomcat. Inhalt. Rechner und Netzarchitektur SS 2003. Einleitung. Architektur Apache Tomcat Rechner und Netzarchitektur SS 2003 Johannes Jabornig Daniel Peintner Inhalt Einleitung Was sind Servlets und JSP Vorteile Architektur Catalina Jasper Konnektoren Installation / Konfiguration

Mehr

Applets Belebung von Webseiten. Dipl.-Ing. Wolfgang Beer

Applets Belebung von Webseiten. Dipl.-Ing. Wolfgang Beer Applets Belebung von Webseiten Dipl.-Ing. Wolfgang Beer Was sind Applets? Java Klassen, die spezielle Richtlinien befolgen, um: "in Internet-Browsern lauffähig zu sein" Somit ist, komplexere Funktionalität,

Mehr

Mit OSGi Webanwendungen entwickeln Was geht, was nicht?

Mit OSGi Webanwendungen entwickeln Was geht, was nicht? Mit OSGi Webanwendungen entwickeln Was geht, was nicht? Peter Roßbach (Systemarchitekt) Gerd Wütherich (Freier Softwarearchitekt) Martin Lippert (akquinet it-agile GmbH) 2009 by P. Roßbach, G. Wütherich,

Mehr

Multimedia im Netz Wintersemester 2012/13

Multimedia im Netz Wintersemester 2012/13 Multimedia im Netz Wintersemester 2012/13 Übung 10 Ludwig-Maximilians-Universität München Multimedia im Netz WS 2012/13 - Übung 10-1 Lösung zu Übungsblatt 08 Ludwig-Maximilians-Universität München Multimedia

Mehr

Janeva:.NET meets J2EE

Janeva:.NET meets J2EE Inhalt: Motivation Was ist Janeva? Systemvoraussetzungen Installation Beispiel Converter Fazit Motivation Motivation: Janeva testen einen Überblick verschaffen Lauffähiges Beispiel Entscheidungshilfe über

Mehr

Proseminar: Website-Management-Systeme

Proseminar: Website-Management-Systeme Proseminar: Website-Management-Systeme Thema: Web: Apache/Roxen von Oliver Roeschke email: o_roesch@informatik.uni-kl.de Gliederung: 1.) kurze Einleitung 2.) Begriffsklärung 3.) Was ist ein Web? 4.) das

Mehr

Websuche: Benutzer-Schnittstelle. Eingabeformulare. Ein einfaches Suchformular. Web-Suche. Benutzer-Schnittstelle.

Websuche: Benutzer-Schnittstelle. Eingabeformulare. Ein einfaches Suchformular. Web-Suche. Benutzer-Schnittstelle. Websuche: Benutzer-Schnittstelle Web-Suche Benutzer-Schnittstelle Web-Suchmaschinen brauchen natürlich eine webbasierte Benutzer-Schnittstelle. Die Suchseite muss einen Anfragestring entgegennehmen und

Mehr

JSP, Tomcat, JDBC. Agenda. Übung Informationsintegration 3.5.2004. JSP & Tomcat JDBC. l Syntax. l Implizite Objekte. l Direktiven

JSP, Tomcat, JDBC. Agenda. Übung Informationsintegration 3.5.2004. JSP & Tomcat JDBC. l Syntax. l Implizite Objekte. l Direktiven JSP, Tomcat, JDBC Übung Informationsintegration 03.05.2004 Agenda JSP & Tomcat Syntax Impizite Objekte Direktiven JDBC 2 Java Server Pages - JSP Was ist eine JSP? Bietet die Mögichkeit, dynamischen Inhat

Mehr

J2EEKurs. J2EE Servlets und JavaServer Pages. Peter Thiemann. Sommercampus J2EEKurs, Freiburg, Germany, 10.-14.10.2005. Universität Freiburg, Germany

J2EEKurs. J2EE Servlets und JavaServer Pages. Peter Thiemann. Sommercampus J2EEKurs, Freiburg, Germany, 10.-14.10.2005. Universität Freiburg, Germany J2EE und Universität Freiburg, Germany Sommercampus, Freiburg, Germany, 10.-14.10.2005 Einführung Verarbeitung e Zustandsverwaltung Expression Language Frontendtechnologie programmorientiert Präsentationsschicht

Mehr

Auslieferungsmethoden im Performancevergleich Zieleinlauf mit Java

Auslieferungsmethoden im Performancevergleich Zieleinlauf mit Java Auslieferungsmethoden im Performancevergleich Zieleinlauf mit Java Dominik Gruntz & Hans-Peter Oser Fachhochschule Aargau/Nordwestschweiz d.gruntz@fh-aargau.ch & h.oser@fh-aargau.ch Im ix 3/2005 wurde

Mehr

Grails. Weiterführende Themen zu Internet- und WWW-Technologien. Matthias Springer. 06. Juni 2011

Grails. Weiterführende Themen zu Internet- und WWW-Technologien. Matthias Springer. 06. Juni 2011 Weiterführende Themen zu Internet- und WWW-Technologien 06. Juni 2011 Übersicht 1 Was ist? 2 Übersicht über 3 MVC-Konzept 4 Groovy Beispiele 5 Tutorial: Kleiner Notizblock Web Application Framework Übersicht

Mehr