Webapplicaties: de serverkant Marleen Sint / Manuela Witsiers 13 november 2010 Webapplicaties Voorgeschiedenis - Revisie van Distributed Computing, die door studenten werd ervaren als verouderd: te weinig over het gebruik van Java in (webgebaseerde) client-server toepassingen - Meest gemiste onderwerp: frameworks - Framework is een geraamte van een webapplicatie met een vaste structuur - Revisie: Cursus over server-side van webapplicaties Voorgeschiedenis - Cursus moest tekstboek / werkboek - Er zijn heel veel ‘kookboeken’ over individuele technieken maar weinig brede, meer conceptuele boeken - Om frameworks te begrijpen is een basis nodig (en het aanleren daarvan kost vrij veel tijd) - Frameworks zijn nuttig bij grote applicaties - Frameworks hebben meestal een steile leercurve Tekstboeken Shklar en Rosen, Web application architecture Wordt gebruikt voor het bredere kader Murach en Steelman, Java servlets and JSP ‘Kookboek’ voor Java-webapplicaties Onderwerpen en toetsing Inleiding: webpprotocollen (vooral HTTP) JSP Servlets Webapplicaties met MVC-structuur Sessiebeheer (onder andere cookies) JSP Expression Language (EL) JSP Standard Tag Librarry (JSTL) Taxonomie van server-side webtechnieken Struts Ruby on Rails Toetsing: drie opdrachten (samen 50%) en tentamen (50 %) Servlets en JSP - Servlet: server-side Java-programma. - Vanuit servlet kun je HTML schrijven - Nadeel: Javacode staat vol HTML - JSP: ook server side - HTML-pagina met daarbinnen stukjes Java voor de ‘dynamische’ delen - Nadeel: HTML-pagina staat vol Java Model View Control combineert servlets en JSP Browser stuurt HTTP response stuurt HTTP request Webapplicatie Controller selecteert (servlets) View (HTML, JSP, stylesheets) raadpleegt en w ijzigt raadpleegt Model (Java) raadpleegt en w ijzigt Data store Servlets bevatten geen HTML JSP bevat weinig Java Inleveropdrachten 1 en 2: demo’s - Inleveropdracht 1: boter kaas en eieren (MVC-applicatie mbv JSP; geen database) - Inleveropdracht 2: enquete-service (MVC-applicatie met JSTL en database) Frameworks - Een (web)framework is een geraamte van een webapplicatie met een vaste structuur (meestal MVC) - Struts is een MVC- Java framework - Met Ruby on rails (niet Java-based) kun je met één druk op de knop een basisapplicatie maken (Create / read / update / delete op database) - Alleen snuffelen; voor meer is geen tijd! - Inleveropdracht 3: onderzoek zelf een framework Samenhang met Webapps , de client kant - Cursussen zijn complementair - Verschillende webservers (we hebben de tekstboeken gevolgd) - Webapps clientkant is GEEN voorkennis voor Webapps serverkant - Nadeel: combinatie van technieken wordt niet behandeld