Webbasierte Informationssysteme



Ähnliche Dokumente
Webbasierte Informationssysteme

Einführung in Internet- und Middleware Technologien

Java Server Pages (JSP)

Überblick über Internet-Technologien

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

Java zur Realisierung von Internetanwendungen

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

Java - Webapplikationen

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

Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden.

HTML5. Wie funktioniert HTML5? Tags: Attribute:

Datenbanksysteme SS 2007

Erfolgreiche Verbindung. 3. Anmeldung: Bitte geben Sie Ihren Benutzernamen und Ihr Kennwort ein.

Internet online Update (Mozilla Firefox)

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Wann benötigen Sie eine neue Lizenz-Datei mit der Endung.pkg?

Softwaretechnik Teil Webprogrammierung (HTML, PHP) SS2011

MCRServlet Table of contents

ITT WEB-Service DEMO. Kurzbedienungsanleitung

Web Visu Tutorial. Hipecs Web Visu. Übersicht

Programmieren 2 (Prof. Hasbargen) Klausur

5. Übung: PHP-Grundlagen

Print2CAD 2017, 8th Generation. Netzwerkversionen

Thomas Wagner 2009 (im Rahmen der TA) Installation von MySQL 5.0 und Tomcat 5.5

Java: Vererbung. Teil 3: super()

Internet online Update (Internet Explorer)

Internet und WWW Übungen

WebService in Java SE und EE

Applications Applets (eingeschränkte Rechte)

Herzlich willkommen bei der Installation des IPfonie -Softclients!

KONFIGURATION livecrm 4.0

Datenbank-Verschlüsselung mit DbDefence und Webanwendungen.

Verwendung des Terminalservers der MUG

FileMaker und PHP Workshop

Dieses Tutorial gibt eine Übersicht der Form Klassen von Struts, welche Besonderheiten und Unterschiede diese aufweisen.

Kurzinformation Zugang zur NOVA für dezentrale Administratoren

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Tutorial Windows XP SP2 verteilen

Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite.

I. Travel Master CRM Installieren

Aufgaben HTML Formulare. Prof. Dr. rer. nat. Claus Brell, Wirtschaftsinformatik, Statistik

Einzelplatz - USB-Lizenz

Anleitung Team-Space Einladung Annehmen. by DSwiss AG, Zurich, Switzerland V

Step by Step Webserver unter Windows Server von Christian Bartl

[DvBROWSER] Offline-Viewer für [DvARCHIV] und [DvARCHIVpersonal] Version 2.2

Ablaufbeschreibung für das neu Aufsetzen von Firebird und Interbase Datenbanken mit der IBOConsole

Advoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank

SharePoint Demonstration

DELFI. Benutzeranleitung Dateiversand für unsere Kunden. Grontmij GmbH. Postfach Bremen. Friedrich-Mißler-Straße Bremen

Powermanager Server- Client- Installation

Benutzerhandbuch. Leitfaden zur Benutzung der Anwendung für sicheren Dateitransfer.

FIREBIRD BETRIEB DER SAFESCAN TA UND TA+ SOFTWARE AUF MEHR ALS EINEM COMPUTER

.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage

Es wird das Struts <html:option> Element erläutert und anhand von kleinen Beispielen der Umgang veranschaulicht.

OP-LOG

Folgende Einstellungen sind notwendig, damit die Kommunikation zwischen Server und Client funktioniert:

Online Banking System

Netzwerkversion PVG.view

COSA. Portal Client Installation JAVA J2SE / JRE Version 1.4.2_09, Stand Copyright

Installation des GeoShop Redirector für Apache (Stand ) ================================================================

Formular»Fragenkatalog BIM-Server«

Lehrveranstaltung Grundlagen von Datenbanken

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

Installationsleitfaden kabelsafe backup home unter MS Windows

Xylem WebService Demo Kurzbedienungsanleitung

Anleitung zum Extranet-Portal des BBZ Solothurn-Grenchen

Anleitung. Datum: 28. Oktober 2013 Version: 1.2. Bildupload per FTP. FTP-Upload / Datei-Manager FTP. Glarotech GmbH

Lexware professional und premium setzen bis einschließlich Version 2012 den Sybase SQL-Datenbankserver

Starten der Software unter Windows 7

HTML Formulare. Benutzerschnittstelle für interaktive Webseiten

Einrichtung des WS_FTP95 LE

Erste Schritte mit Microsoft Office 365 von Swisscom

Verwendung des IDS Backup Systems unter Windows 2000

Online-Publishing mit HTML und CSS für Einsteigerinnen

ESB - Elektronischer Service Bericht

Wissenswertes über LiveUpdate

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

Applet Firewall und Freigabe der Objekte

SEMINAR Modifikation für die Nutzung des Community Builders

Kapitel 5 Serverseitige Technologien

Android Remote Desktop & WEB

Einrichten eines Postfachs mit Outlook Express / Outlook bis Version 2000

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

Java Einführung Packages

BSV Software Support Mobile Portal (SMP) Stand

Installation von NetBeans inkl. Glassfish Anwendungs-Server

Lizenzen auschecken. Was ist zu tun?

Das Handbuch zu KNetAttach. Orville Bennett Übersetzung: Thomas Bögel

Anhang zum Handbuch. Netzwerk

JSP Grundlagen. JEE Vorlesung Teil 5. Ralf Gitzel

1. Loggen Sie sich mit Ihrem Benutzernamen in den Hosting-Manager (Confixx) auf Ihrer entsprechenden AREA ein. Automatische Wordpress Installation

ANLEITUNG NETZEWERK INSTALATION

FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7

Wollen Sie einen mühelosen Direkteinstieg zum Online Shop der ÖAG? Sie sind nur einen Klick davon entfernt!

Klausurteilnehmer. Wichtige Hinweise. Note: Klausur Informatik Programmierung, Seite 1 von 8 HS OWL, FB 7, Malte Wattenberg.

Content Management System (CMS) Manual

Transkript:

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,... Hardware PC, Laptop, Handy,... Unix-Rechner, - SS 2004 - Prof. Dr. Stefan Böttcher Folie 1 - SS 2004 - Prof. Dr. Stefan Böttcher Folie 2 IT- und TK-Infrastruktur Datenbankkopplung??? Applikation Client (Such-)Dienste, Web-Shop,... Netzwerk Server Kataloge, Dienste, Mall, Bank,... Software Web-Browser, Applet,... Middleware, Internet,... Web-Server, Datenbank-S.,... Hardware PC, Laptop, Handy,... Festnetz, Funknetz,... - SS 2004 - Prof. Dr. Stefan Böttcher Folie 3 Unix-Rechner,... Dokumentsprachen Client-Technologien - SS 2004 - Prof. Dr. Stefan Böttcher Folie 4 XSP Java Server Pages (JSP) Servlet generiert HTML PHP CGI generiert HTML trennt Layout / Logik / Daten trennt z.t. Layout / Logik / Daten effizient / geht nur in Java einfach generierte Webseiten geht in jeder Sprache einfach einfach (Firewalls+) HTML+Javascript schnell entwickelbare Animationen HTML+Applets Typ-sichere, wartbare Animationen Client-Technologien - SS 2004 - Prof. Dr. Stefan Böttcher Folie 5 - SS 2004 - Prof. Dr. Stefan Böttcher Folie 6 Prof. Dr. Stefan Böttcher 1

Datenbankkopplung XML+XSL Dokumentsprachen (läuft auch in altem Browser) (trennt Layout und Inhalt, wartbar) entlastet Web-Server Client-PGM ruft DB-Server enge Kopplung Web-Server ruft Datenbankserver - SS 2004 - Prof. Dr. Stefan Böttcher Folie 7 - SS 2004 - Prof. Dr. Stefan Böttcher Folie 8 3. Java-Webserver (1) Der Tomcat-Webserver Servlets HTML-Forms Session-Konzepte Generierter HTML-Code <html> <head> <title> Generierter HTML-Code</title> </head> <body> Jetzt, Do 8. Feb 10:00:00 Uhr bieten wir Ihnen... </body> </html> Servlets mit Datenbank-Anbindung Variabler Teil Konstanter Teil - SS 2004 - Prof. Dr. Stefan Böttcher Folie 9 - SS 2004 - Prof. Dr. Stefan Böttcher Folie 10 Java-Code zum generieren der Seite import java.io.*; import java.util.*; Variable für die Ausgabe Ausgabestrom public class Kunde3 { public static void main( String[ ] args ) { Date zeit = new Date() ; PrintWriter aus = new PrintWriter(System.out) ; // aus für Ausgabe aus.println("<html>"); aus.println(" <head> <title> Kunde3 </title> </head> "); aus.println(" <body>"); aus.println(" <p>jetzt, "+ zeit + " bieten wir Ihnen:... \n </p>"); aus.println(" </body>"); aus.println("</html>"); aus.close() ; - SS 2004 - Prof. Dr. Stefan Böttcher Folie 11 Tomcat Web-Server installieren download von: http://www.apache.org Default-Installation vornehmen Server starten mit: C:\tomcat\bin\startup.bat Server stoppen mit: C:\tomcat\bin\shutdown.bat - SS 2004 - Prof. Dr. Stefan Böttcher Folie 12 Prof. Dr. Stefan Böttcher 2

HTML-Dokumente auf dem Server speichern Dokumente speichern in: C:\tomcat\Webapps\Root z.b.: HTML-Dokument lokal speichern als C:\tomcat\Webapps\Root\Start.html HTML-Dokumente ggf. editieren, z.b. mit Netscape (Datei Seite ändern) oder UltraEdit Tomcat Web-Server zugreifen im Browser Zugriff auf: http://192.168.1.113:8080/start.html IP-Nummer eines laufenden Tomcat-Servers Default-Port: 8080 Dokumentname (z.b. Start.html) eines Dokuments im Root-Verzeichnis C:\tomcat\Webapps\Root Zugriff auf Dokumente in Unterverzeichnissen des Root-Verzeichnisses über Pfade, z.b. http://192.168.1.113:8080/abteilung1/start.html - SS 2004 - Prof. Dr. Stefan Böttcher Folie 13 - SS 2004 - Prof. Dr. Stefan Böttcher Folie 14 Überblick: Web-Server mit Servlets Servlet : erstes Beispiel Browser auf dem Client evtl. mit Eingaben ruft Erzeugt HTML- Seite Web-Server HTML-Seiten evtl. Servlets Servlet-Ausgabe IP-Nummer Port (8080) Servlet-Verzeichnis des Web-Servers Servlet-Name - SS 2004 - Prof. Dr. Stefan Böttcher Folie 15 - SS 2004 - Prof. Dr. Stefan Böttcher Folie 16 Was ist ein Servlet? (in Java geschriebene und compilierte) Anwendung auf dem Server. wird vom Webserver automatisch gestartet. erzeugt eine neue Seite für den Client. wird auf dem Server gespeichert, z.b. in C:\tomcat\webapps\Root\Web-Inf\classes kann Eingaben des Benutzers in HTML-Forms verarbeiten. Servlet-Code zum ersten Beispiel import java.io.* ; import javax.servlet.* ; import javax.servlet.http.* ; public class Servlet1 extends HttpServlet { public void doget ( HttpServletRequest req, HttpServletResponse res ) { res.setcontenttype("text/html"); PrintWriter aus = res.getwriter ( ); aus.println( Willkommen in unserem Internetshop!"); - SS 2004 - Prof. Dr. Stefan Böttcher Folie 17 - SS 2004 - Prof. Dr. Stefan Böttcher Folie 18 Prof. Dr. Stefan Böttcher 3

HTML-Form-Beispiel HTML-Form Teil eines HTML-Dokuments Kann Eingaben des Benutzers verarbeiten. Input-Felder für interaktive Eingabe des Benutzers auf dem Client Submit-Knopf (zum abschicken des ausgefüllten Formulars) Submit-Knopf Input-Feld Webseite - SS 2004 - Prof. Dr. Stefan Böttcher Folie 19 Eingaben werden z.b. in Servlets verarbeitet - SS 2004 - Prof. Dr. Stefan Böttcher Folie 20 HTML-Form-Code-Beispiel <html> <head> <title> Hallo Kunde, bitte identifizieren! </title> </head> <body> <H3>Herzlich willkommen in unserem Internetshop. Bitte geben Sie Ihren Namen ein! </H3> <form method=get action="servlet/kenntkunde"> <input type=text name="anrede"> <p> <input type=submit value="absenden"> </form> </body> </html> - SS 2004 - Prof. Dr. Stefan Böttcher Folie 21 Servlet-Code zum Form Beispiel import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class KenntKunde extends HttpServlet { public void doget ( HttpServletRequest req, HttpServletResponse res ) { res.setcontenttype("text/html"); PrintWriter aus = res.getwriter (); String kunde = req.getparameter("anrede"); aus.println("ihre Name ist: "); aus.println( kunde ); - SS 2004 - Prof. Dr. Stefan Böttcher Folie 22 Ausgabe des Servlets Alternative: Servlet generiert HTML-Code Ausgabe Servlet Parameter - SS 2004 - Prof. Dr. Stefan Böttcher Folie 23 - SS 2004 - Prof. Dr. Stefan Böttcher Folie 24 Prof. Dr. Stefan Böttcher 4

Servlet generiert HTML-Code import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class KenntKunde2 extends HttpServlet { public void doget ( HttpServletRequest req, HttpServletResponse res ) { res.setcontenttype("text/html"); PrintWriter aus = res.getwriter ( ); String kunde = req.getparameter("anrede"); aus.println("<html><head><title>willkommen</title></head><body>"); aus.println("<h3>hallo <i>" + kunde + "</i>, willkommen in unserem...!</h3>"); aus.println("<h3>in welchem Jahr sind Sie geboren, " + kunde +"?</h3>" ); aus.println("<form method=get action=rechnet>"); aus.println("<input type=text name=alter><p>"); aus.println("<input type=submit value=absenden>"); aus.println("</form></body></html>"); - SS 2004 - Prof. Dr. Stefan Böttcher Folie 25 Umwandlung von Strings in Zahlen/Ausnahmen String s = tf.gettext() ; // String s aus TextField tf einlesen Umwandlung nach int über Klasse Integer try{ // try-block wird ausgeführt, bis Ausnahme auftritt // Ausnahme, falls s keine Ganzzahl enthält int intwert = Integer.valueOf( s ).intvalue() ; catch ( Exception e ) { System.out.println( Fehler : + e ) ; Umwandlung nach double über Klasse Double try{ // Ausnahme, falls s keine Komma-Zahl enthält double doublewert = Double.valueOf( s ).doublevalue() ; catch ( Exception e ) { System.out.println( Fehler : + e ) ; auffangen einer Ausnahme Ausnahme-Behandlung - SS 2004 - Prof. Dr. Stefan Böttcher Folie 26 Ausgabe des Servlets Rechnet.class Servlet Parameter Java-Code des Servlets: Rechnet.java import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class KenntKundeundRechnet extends HttpServlet { public void doget ( HttpServletRequest req, HttpServletResponse res ) { res.setcontenttype("text/html"); PrintWriter aus = res.getwriter (); String geburtsjahr = req.getparameter("alter"); int alter = 2001 - new Integer(geburtsjahr).intValue(); aus.println( "<HTML><HEAD><TITLE>Berechnet Alter des Kunden" + "</TITLE></HEAD><BODY>" ); aus.println("<h3>2001 minus " + geburtsjahr + " sind " + alter + ".</H3><P>"); aus.println("dann sind Sie also <b>" + alter + "</b> Jahre alt " + "- oder werden es noch in diesem Jahr </BODY></HTML>"); - SS 2004 - Prof. Dr. Stefan Böttcher Folie 27 - SS 2004 - Prof. Dr. Stefan Böttcher Folie 28 HTML-Form-Passwort-Beispiel Passwort-Felder für NICHT SICHTBARE interaktive Eingabe des Benutzers. - SS 2004 - Prof. Dr. Stefan Böttcher Folie 29 HTML-Code zum Passwort-Beispiel <html> <head> <title>hallo Kunde, Passwort bitte!</title> </head> <body> <H3>Herzlich willkommen in unserem Internetshop! </H3> <p> <form method=get action="servlet/kenntkunde2"> Benutzername: < input type=text name= anrede ><p> Passwort: < input type=password name= code ><p> < input type=submit value= Absenden > </form> </body> </html> - SS 2004 - Prof. Dr. Stefan Böttcher Folie 30 Prof. Dr. Stefan Böttcher 5

Servlet-Code zur Passwort-Abfrage Passwort abfragen in Java... public void doget ( HttpServletRequest req, HttpServletResponse res ) {... String passwort = req.getparameter( code ); if ( passwort.equals( xy45!q% ) ) SeiteZeigen ( res ) ; else MeldungFalschesPasswort ( res ) ; Seite generieren, je nachdem, ob Passwort o.k. INPUT-Arten für HTML-Forms Submit-Knopf zum Abschicken der Eingabe Reset-Knopf zum Zurücksetzen der Eingabe Image (wirkt wie Submit) Checkbox Radio-Button Text : Feld zur sichtbaren Eingabe von Text Passwort: Feld zur Eingabe von Passwörtern NICHT SICHTBARE Hidden-Felder für Sitzungsinformationen. - SS 2004 - Prof. Dr. Stefan Böttcher Folie 31 - SS 2004 - Prof. Dr. Stefan Böttcher Folie 32 Sitzungen Hidden-Felder werden benutzt, um Informationen von einer Seite zur nächsten zu tragen. Alternative 1: Alle bisher ausgetauschten Daten werden im Hiddenfeld codiert. Alternative 2: Nur eine Session-Id wird im Hiddenfeld codiert, der Rest wird serverseitig gespeichert. XSP generiert HTML trennt Layout, Logik und Daten Servlet generiert HTML effizient / geht nur in Java JSP generiert HTML PHP generiert HTML Java pendant zu ASP eigene Sprache CGI generiert HTML geht in jeder Sprache einfach - SS 2004 - Prof. Dr. Stefan Böttcher Folie 33 - SS 2004 - Prof. Dr. Stefan Böttcher Folie 34 XSP generiert HTML Servlet generiert HTML JSP generiert HTML PHP generiert HTML CGI generiert HTML HTML+Javascript HTML+Applets XML+XSL Dokumentsprachen Datenbankkopplung Client-PGM ruft DB-Server Web-Server ruft DB-Server Client-Technologien - SS 2004 - Prof. Dr. Stefan Böttcher Folie 35 Prof. Dr. Stefan Böttcher 6