Web Services Computing WS 11/12
Leitung: Andreas Wolke
Entwicklungspraktikum WS 11/12
Internetbasierte Geschäftssysteme -
Web Services Computing (IN2131/IN2106)
Erste Veranstaltung am 18.10.2011 16:30 Uhr
Zimmer MI 01.10.11 (IBIS/SEBIS Seminar Raum)
Weitere Informationen
Die weitere Verwaltung der Veranstaltung wird über eine Projektmanagement-Software abgewickelt: WSC WS11/12
Hintergrund
Moderne IT-Infrastrukturen basieren immer häufiger auf gängigen Inter-/Intranetprotokollen und -standards. Diesem Trend folgend wird heutzutage zum einen die Internetfähigkeit neu zu entwickelnder Anwendungen bereits in deren Planungsphase mit berücksichtigt, zum anderen werden Services vorhandener Legacy-Systeme über Integrationsmechanismen oder Middleware-Broker über das Internet/Intranet zugreifbar gemacht.
Das Web Services Konzept entspricht einer Integrationsarchitektur, welche eine dynamische Zusammenarbeit verschiedener Anwendungen über Netzwerkgrenzen hinweg unter Nutzung etablierter Internet-Standards erlaubt. Diese Softwarekomponenten können in XML-Notation beschrieben werden (WSDL) und tauschen Nachrichten im XML-Format miteinander aus (SOAP). Diese Technologie haben bereits weite Verbreitung im betrieblichen Umfeld ggefunden, wurde aber auch in technisch orientierten Feldern wie dem Grid-Computing eingesetzt. Das Praktikum führt über die Arbeit im Umfeld von betriebswirtschaftlichen Anwendungsbeispielen in relevante Techniken ein.
Inhalt
Wir werden die grundlegenden Technologien besprechen, die für eine Entwicklung von Web-Anwendungen und Web-Services mit Java benötigt werden. Dazu zählen:
- Eclipse IDE, Subversion, Maven, Jetty- und Apache Tomcat-Server, MySQL
- Webapplikationen mit Java Servlets, Java Server Pages (JSP), Java Standard Tag Library (JSTL)
- Design-Patterns: MVC, Factory, Dependency Injection, Data Access Objects
- Webapplikationen mit dem Spring-Framework und Spring-MVC
- Datenbankzugriff mittels JDBC und Spring JDBC-Templates
- XML & XML-Parsing, Document Type Definition, XML Schema, XPath-Queries
- SOAP-Services mit Apache CXF auf Basis von WSDL und JAX-WS
- Entwurf einer größeren Anwendung in Gruppenarbeit
Teilnahmevoraussetzungen
- Fundierte Programmierkenntnisse in Java oder einer anderen objektorientierten Programmiersprache
- Grundverständnis für das Prinzip dynamischer Serverkomponenten oder Web-Anwendungen sind nützlich
- Vordiplom bei Diplom-Studenten
Teilnehmerkreis
Das Praktikum kann u.a. von Studenten nachfolgend genannter Studienrichtungen absolviert werden:
- Wirtschaftsinformatik (Master) - Wahlpflichtpraktikum
- Informatik (Diplom) - Wahlpflichtpraktikum, Bereich 1. Praktische Informatik (1.6 Betriebl. Infomationssysteme)
- Informatik (Master)- Schwerpunkt: DBS oder SWE
Anmeldung
Die Anmeldung zu dieser Veranstaltung erfolgt über TUMonline. Eine Benachrichitigung über die Zuweisung eines Praktkumsplatzes erfolgt nicht. Wir verteilen Plätze nach dem "first come - first served"-Prinzip, d.h. nach erfolgreicher Anmeldung sind Sie automatisch zur Teilnahme angemeldet. Sollten die Kapazitätgrenzen unseres Labors erreicht werden, schliessen wir die Anmeldung vorzeitig.
Umfang
6 P (SWS)
Ort und Zeit der Lehrveranstaltung
Steht noch nicht fest.
Durchführung
Das Praktikum gliedert sich in zwei Teile. Zunächst lernen Sie anhand einzelner Teilaufgaben das Know-How, welches zur Entwicklung von Web-Anwendungen und Web-Services notwendig ist. Anschließend werden Sie in Teams eine komplexere Anwendung aus dem Bereich des Service Management entwickeln.
Die Aufgabenblätter werden jeweils zu den angekündigten Terminen besprochen. Das Aufgabenblatt und die Besprechungsunterlagen sollten Sie vorher ausdrucken und durchlesen. Die Aufgaben aus Teil I des Praktikums sind von jedem Praktikanten selbständig und alleine zu lösen und zum angegebenen Zeitpunkt abzugeben. Abgegebene Quellcodes werden daraufhin überprüft. Mit Beginn des zweiten Praktikumsabschnitts (Gruppenaufgabe) werden die Teilnehmer in 15-minütigen Einzelgesprächen auf ihr erarbeitetes Wissen hin überprüft. Hierbei werden auch die, von den Teilnehmern generierte Codefragmente besprochen.
Die Aufgaben sollen im PC-Labor (MI 01.10.036) bearbeitet werden. In den betreuten Stunden werden für Fragen Betreuer anwesend sein. Es ist wichtig, dass die entwickelten Aufgaben in der bereitgestellten Infrastruktur gespeichert bzw. installiert sind. Andernfalls kann keine Benotung stattfinden.
Betreute Zeiten
Zu folgenden Zeiten sind im Computerlabor voraussichtlich Betreuer für Fragen anwesend: Montags 13:00 - 14:30 Uhr
Teil I: Einzelaufgaben
1: Einführung IDE, SVN, Maven, Web Application Engineering (HTML, Servlets
2: Java Server Pages, JSTL, Model View Controller, Session Handling
3: Session Hijacking, Dependency Injection Pattern, Spring MVC, Spring Taglibs
4: JSTL-SQL, JDBC, Data Access Objects, Spring JDBC Template, (Ausblick OR-Mapping und No-SQL)
5: XML, DTD, XSD, XPath, XML-Parsing<
6: SOAP, WSDL, JAX-WS
Teil II: Use Cases
1: Vorbesprechung
2: Mehrere Milestones zur Präsentation des zwischenstandes
3: Abschlusspräsentation
Schein
Die Ausstellung des Scheins setzt die erfolgreiche Teilnahme an dem Praktikum voraus. Für eine erfolgreiche Teilnahme müssen mindestens 50% der Gesamtpunkte aus den Übungsaufgaben des 1. Praktikumsabschnitts (Einzelaufgaben) erreicht werden. Zudem muss mindestens eine der Spezifikation entsprechende Umsetzung des Use Case erfolgt sein.
Neben der Funktionalität des erstellten Codes wird ebenfalls dessen Qualität im Sinne der Einhaltung gängiger Richtlinien für Java Sourcecode-Strukturierung sowie dessen Dokumentation (Kommentierung) berücksichtigt.
In einer Abschliessenden Präsentation (siehe oben) wird ein grundlegendes Verständnis des Teilnehmers bzgl. der Übungsaufgaben bzw. des von ihm erstellen Quellcodes überprüft.
Literatur
Unter Anderem sind folgende weiterführende Bücher zu empfehlen:
![]() |
Craig Walls, Ryan Breidenbach "Spring in Action" Manning Publications; Second Edition (August 16, 2007) Spring Framework |
![]() |
Jim Farely, William Crawford, David Flanagan "Java Enterprise in a Nutshell" O`Reilly Java Servlets, Java Server Pages, JDBC, Java and XML |
![]() |
Sanjiva Weerawarana, Francisco Curbera and others "Web Services Platform Architecture" Prentice Hall SOA, SOAP, WSDL, UDDI, BPEL |
![]() |
Dan Woods, Thomas Mattern "Enterprise SOA" O`Reilly SOA, Enterprise Services Architecture, Web Services |
![]() |
David Chappell, Tyler Jewell "Java Web Services" O`Reilly SOAP, WSDL, UDDI |
![]() |
Neil Gray "Web Server Programming" Wiley HTTP, Java Servlets, Java Server Pages, XML |
Weitere Referenzen zu kontextrelvanten Inhalten werden in den Sitzung angegeben.
Ansprechpartner:
Andreas Wolke
Raum 01.10.058 (Boltzmannstraße/Garching)
Tel.: 089-289-17528
andreas.wolke (at) in.tum.de





