Evolution der Web-Entwicklung nach AJAX



Ähnliche Dokumente
DCCS Lotusphere Nachlese 2012 Was sind XPages? Mobile Features für XPages

Xpert.ivy Developer Day User Dialog Features. Autoren: Peter Stöckli & Flavio Sadeghi Datum: 14. Mai 2014

Agenda. Einführung AJAX Was ist eigentlich AJAX?

Herzlich Willkommen! eine praxisnahe Übersicht. Mit Java ins Web - mb@bebox.franken.de (c) Michael Behrendt -

Struts 2 Das Imperium schlägt zurück?

Einführung Internettechnologien. - Clientseitige Programmierung -

Einführung in Google Web Toolkit

Webseiten und Web-Apps grafisch gestalten mit HTML5 Canvas ohne Flash und sonstige Tools

RAP vs. GWT vs. GAE/J + jquery. Web Technologien im Verlgeich

Web 2.0 Architekturen und Frameworks

Server-centric vs. Client-centric Web Applications. BITKOM Software Summit 2014, Frankfurt

Alte Technik neu verpackt

Di 8.4. Silverlight: Windows Presentation Foundation für s Web. Christian Wenz

Apollo Überblick. Klaus Kurz. Manager Business Development Adobe Systems Incorporated. All Rights Reserved.

Beispiel aus der Praxis

Webapplikation aus dem MISTRA Bereich

Ihr IT-Dienstleister aus Bonn

Secure Network Communications (BC-SEC-SNC)

Softwareentwicklung mit Enterprise JAVA Beans

Entwicklung und Integration mobiler Anwendungen. <Speaker> Oracle Deutschland B.V. & Co. KG

Faclets. Eine alternative View Technologie um JSF Applikationen OHNE JSP zu entwickeln Wird unter java.net gehostet Open Source, CDDL Lizenz

Einleitung AJaX und Web 2.0 Kartendienst APIs im Web 2.0 Übersicht freier GPS Track Visualisierer

Moderne Web- Anwendungen mit

Kategorisierung von Web-Frameworks im Java-Umfeld

IAC-Programmierung HELP.BCFESITSIACPROG. Release 4.6C

IT works unlimited GmbH & Co. KG

Prozessunterstützung durch BPR-, BPM- und Workflow-Systeme

AJAX und Ruby on Rails

Entwicklung von Web-Anwendungen auf JAVA EE Basis

Herzlich willkommen zur Kurzvorlesung: Die häufigsten Fehlerquellen bei der Erstellung von Webapplikationen. Udo H. Kalinna. Nürnberg, den

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

Enterprise Application Integration Erfahrungen aus der Praxis

Perceptive Document Composition

Web Services. XML, WSDL, SOAP und UDDI Einblicke und Ausblicke J.M.Joller 1

Eclipse Equinox als Basis für Smart Client Anwendungen. Christian Campo, compeople AG, Java Forum Stuttgart 2007

C O C O O N. Wo ist Cocoon in die Apache Projekte einzureihen?

IntelliJ IDEA. Gliederung. Was ist IntelliJ IDEA? Lizenzmodell Warum IntelliJ einsetzen? IntelliJ und Eclipse Demo. Blick über den Eclipse-Tellerrand

PHP & Windows. Jan Burkl System Engineer, Zend Technologies. All rights reserved. Zend Technologies, Inc.

Aktuelle Kurstermine

Automatisches Exploratives Testen von Webanwendungen

Business Applika-onen schnell entwickeln JVx Framework - Live!

Online-Publishing mit HTML und CSS für Einsteigerinnen

Java Server Pages (JSP)

OERA OpenEdge Reference Architecture. Mike Fechner PUG Infotag 19. Mai 05 Frankfurt

Browserbasiertes, kollaboratives Whiteboard

OpenSource bei PostFinance Einsatz in der Software Entwicklung. informativ

BFV Widgets Kurzdokumentation

AJAX Implementierung mit Joomla!

Kompendium der Web-Programmierung

Web-Design mit JSF und AJAX. Java Enterprise Erkner, Carsten Mjartan

Installation von NetBeans inkl. Glassfish Anwendungs-Server

HMS. Statistiken mit SAS ins Internet. HMS Analytical Software GmbH - Johannes Lang

Systemvoraussetzungen

Neues in ArcGIS Server 9.3 Matthias Schenker ESRI Geoinformatik AG

Herzlich willkommen im Modul Informatik Grundlagen

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

6.9 Java Server Pages

Wir bringen Ihre Notes/Domino Anwendungen sicher ins Web , Bilster Berg Drive Resort Michael Steinhoff, agentbase AG.

Festpreisprojekte in Time und in Budget

Nutzung von JavaFX. Wo? Wann? Wie?

Erfahrungen und Erkenntnisse. Klaus Richarz, HBT GmbH

Webinar: Einführung in ICEfaces

Java Applet Alternativen

M i t a r b e i t e r p r o f i l (Stand: August 09)

Spring Dynamic Modules for OSGi Service Platforms

Continuous Delivery in der Realität eines Großunternehmens

AS/point, Ihr Partner die nächsten 10 und mehr Jahre -

Einführung Responsive Webdesign

ArcGIS Online Werkstatt II Wege zur eignen Webanwendung

PRESman. Presentation Manager. Reduzieren Sie nachhaltig die Kosten für das. Erstellen, Verwalten und Verteilen Ihrer

Workshop Java Webentwicklung Tapestry. Ulrich Stärk

SAP SharePoint Integration. e1 Business Solutions GmbH

Architektur von Business Apps

Kai Wähner MaibornWolff et al GmbH

Agenda. Einleitung. Einbinden von JSF AJAX Beispiele Komponenten Entwicklung PrimeFaces Praktikum. Was ist JSF Aufbau und Techniken HTML vs.

Leichtgewichtige Web 2.0-Architektur für komplexe Business-Anwendungen Nicolas Moser PRODYNA AG

Internet-Know How - Wissen um neue Technologien -

Google Gears Offline Web?

Web 2.0 (In) Security PHPUG Würzburg Björn Schotte

Enterprise Control Center. Systemvoraussetzungen V2.1

<Insert Picture Here> Oracle Forms Roadmap in Richtung SOA

JSF goes Mobile Mit JavaServer Faces mobile Welten erschließen Copyright 2013, Andy Bosch,

Dataport IT Bildungs- und Beratungszentrum. HTML- Grundlagen und CSS XML Programmierung - Grundlagen PHP Programmierung - Grundlagen...

Abschlussvortrag zur Diplomarbeit

Wo finde ich die Software? - Jedem ProLiant Server liegt eine Management CD bei. - Über die Internetseite

Introduction to JSF technology and Rapid Application Development Roland Zänger

Multimedia im Netz. Wintersemester 2011/12. Übung 10. Betreuer: Verantwortlicher Professor: Sebastian Löhmann. Prof. Dr.

Hochschule Heilbronn Technik Wirtschaft Informatik

Mobile Doku mit altbekannten Werkzeugen. Prof. Sissi Closs

Datenbank-basierte Webserver

Lohnjournal (Report RPCLJNx0; HxxCLJN0)

Dirk Reinemann Working Student Sales Consulting

Architekturen. Von der DB basierten zur Multi-Tier Anwendung. DB/CRM (C) J.M.Joller

Systemanforderungen Verlage & Akzidenzdruck

Perceptive Document Composition

Organisation und Systeme SOA: Erstellung von Templates für WebService Consumer und Provider in Java

Destructive AJAX. Stefan Proksch Christoph Kirchmayr

Transkript:

Evolution der Web-Entwicklung nach AJAX Vortrag BMW Messe, Oktober 2007 Rudolf Lindner, Projektleiter Technologie F&F GmbH

Was ist eine WEB-Anwendung? Datenbank Datenbank Server Logik Prozesse Datenbank Server Logik Prozesse GUI Netz Frontend GUI, Logik, Prozesse Frontend GUI, Logik, Prozesse Browser GUI Plugin Persistenz Persistenz Klassische FAT Client Anwendung WEB-Anwendung Internet, Intranet 2

Warum Web-Anwendung? Zentraler Server Verarbeitungslogik Datenhaltung Präsentationsschicht! Management, Total Cost of Ownership (TCO) 3

Kurze Geschichte des WEB 1990: CERN, Tim Berners-Lee: Erste Version Hypertextsystem 1993: Marc Andreesen: Mosaic Browser 1995: Erste Alpha Release von JAVA 1996: Integration von JAVA im Netscape Browser 1995-1998: Browser-Krieg ( ActiveX ) 1998: IE 4 mit XMLHttpRequest 2002: Java 1.4 statisches Web dynamisches Web 4

Vorteile JAVA Applets Front-End und Server Entwicklung aus einem Guss RAD Entwicklung wie bei FAT Client Desktop Anwendung Write once, test everywhere Browser GUI Plugin Frontend GUI Logik Prozesse 5

Probleme mit JAVA Applets Inkompatibilitäten MS vs SUN NS 4.x mit JAVA < 1.2 Kompatibilitätsprobleme über div. JAVA Versionen Bugs Applets werden unattraktiv 6

Parallel: Pimp my Browser Plugin's für Fenster-Teile (Flash, Java Applets, Active X) Verbesserung der statischen HTML Seiten (HTML 4.x) CSS 1 und 2 "Kreative" Workarounds / Javascript, DOM Manipulationen Erweiterte UI-Controls mit Javascript / Server - Coding AJAX 7

AJAX 8

AJAX Browser XMLHttpRequest Server Browser Browser XML Data Javascript Objekte Server Server (JSON) 9

AJAX: populäre Anwendungen Google Maps Googel Suggest Writely Textverarbeitung Zimbra Email Suite Popularität durch verbesserte Bedienbarkeit Rich User Interface, Drag and Drop,... von Anwendern gefordert 10

AJAX: Frameworks (kleine Auswahl) Open Rico Dojo Prototype ZK JavaScript Bibliotheken, teilweise mit Server Integration Komplexität 11

Gerne kolportierte Mythen Ein Web-Browser ist eine Anwendungsplattform WEB-Entwicklung ist hat niedrigen TCO WEB-Anwendungen sind einfach zu entwickeln 12

Benötigter Skill-Level (typische J2EE WEB-Applikation) IE 7 DHTML/DOM Internet Explorer Firefox Safari HTML CSS XML LDAP Legacy Systems Schnittstellen Javascript JSP Taglibs EJB Java ORM Mail Business Logic Datenbank Application Server Betriebsystem 13

Benötigter Skill-Level (typische J2EE WEB-Applikation) IE 7 DHTML/DOM Internet Explorer Firefox Safari HTML CSS XML LDAP Legacy Systems Schnittstellen Javascript JSP Taglibs EJB Java ORM Mail Business Logic Datenbank Application Server GUI Entwicklung Betriebsystem 14

Probleme Hohe Komplexität Gefrickel 15

Warum nicht so? Erstellung von WEB-Anwendungen so einfach wie Erstellung von ( Client 3 GL Client/Server Anwendungen (Delphi, JAVA Fat Interaktiver Designer/RAD Tool Keine Programmierung in Javascript DHTML, DOM, Browserunterschiede, Taglibs uninteressant! Anbindung Business Logic Komponenten 16

Lösungsorientierung GUI GUI Business Logic Projektbudget Schnittstellen Business Logic Schnittstellen Datenbank Datenbank 17

Java Server Faces (JSF) Basierend auf Servlet und JSP Technologie (JSP nicht zwingend erforderlich) MVC Prinzip GUI Komponenten 18

Beispiel <?xml version="1.0" encoding="iso-8859-1"?> <%@ page language="java" contenttype="text/html;...%> <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%> <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%> <%@ taglib uri="http://richfaces.org/a4j" prefix="a4j"%> <%@ taglib uri="http://richfaces.org/rich" prefix="rich"%> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"...> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="content-type" content="text/html;.../> <title>test für JSF</title> </head> <body> <f:view> <h:form> <rich:calendar value="#{datebean.date}"></rich:calendar> </h:form> </f:view> </body> </html> package de.ff.test; import java.text.dateformat; import java.text.parseexception; import java.text.simpledateformat; import java.util.date; public class DateBean { protected Date date; DateFormat df; public DateBean() { df = new SimpleDateFormat("dd.MM.yyyy"); try { date = df.parse("25.09.2007"); } catch (ParseException e) { e.printstacktrace(); } } public Date getdate() { return date; } public void setdate(date date) { this.date = date; } } 19

JSF Frameworks jmaki (Javascript Wrapper für AJAX Komponenten) dynamic Faces Ice Faces Project Woodstock ajax4jsf / Rich Faces 20

BMW Standards aktuell Java Technology Cluster 1 Struts, UTC/SA, JSP ab 2007/2008 Java Technology Cluster 2 Java EE 5 BEA WL 10JSF/AJAX Integration, z.b.: JMAKI FZ bietet Standardkomponenten für User Interface Elemente 21

Beispiel: Netbeans 6 mit Form Designer und JSF Komponenten 22

Benötigter Skill-Level (typische J2EE WEB-Applikation) IE 7 DHTML/DOM Internet Explorer Firefox Safari HTML CSS XML LDAP Legacy Systems Schnittstellen Javascript JSP Taglibs EJB Java ORM Mail Business Logic Datenbank Application Server GUI Entwicklung Betriebsystem 23

Benötigter Skill-Level (J2EE Applikation mit fertigen JSF Komponenten) JSF XML LDAP Legacy Systems Schnittstellen Mail JSP EJB Java ORM Business Logic Datenbank Application Server Betriebsystem 24

The Return of the Browser Plugin Microsoft Silverlight 1.0: AJAX Microsoft Silverlight 1.1.NET Runtime für Browser Adobe Flex/AIR 25

Java Desktop Reloaded (JNLP, Applets) JAVA Consumer Runtime (http://weblogs.java.net/blog/chet/archive/2007/05/consumer_jre_le.html) 2 MB? Quickstarter? Desktop Integration Anfang 2008? Java FX Rich Media Java Flash Konkurrenz? 26

Benötigter Skill-Level (typische J2EE WEB-Applikation) IE 7 DHTML/DOM Internet Explorer Firefox Safari HTML CSS XML LDAP Legacy Systems Schnittstellen Javascript JSP Taglibs EJB Java ORM Mail Business Logic Datenbank Application Server GUI Entwicklung Betriebsystem 27

Benötigter Skill-Level (J2EE Applikation mit JAVA Frontend) Java FX XML LDAP Legacy Systems Schnittstellen Mail Swing EJB Java ORM Business Logic Datenbank Application Server Betriebsystem 28

Vergleich Ultra Thin Client / Java Native Client UTC TNC Plugin Software - Installation + - 0/+ Java Cache, JNLP Plattform dependence + 0 + Security integration + 0 0/+ Java Runtime / keine Browser- Unterschiede Rapid Prototyping + 0 ++ hervoragende IDE's und Tools Learning curve + 0 + Client-side processing - + + Available widgets 0 + + Interactivness/Responsiveness + + User base within BMW + - - Tool support + - ++ hervoragende IDE's und Tools Quelle: http://it.muc/community/fz/fz-32/index.htm?mainframe=http://it.muc/community/fz/fz-32/websec/howto/utc-tnc.htm 29

F&F Technology & Services Noch Fragen? Wir freuen uns, Ihnen unsere Demos und unsere Kompetenz für BMW Anwendungen auf unserem Messestand präsentieren zu dürfen. Stand: 4.3 30

Prozessorientierte Informationssysteme der Spitzenklasse F&F Computer Anwendungen und Unternehmensberatung GmbH Westendstraße 195 Tel.: + 49 89 51727 0 kontakt@ff-muenchen.de D-80686 München Fax: + 49 89 51727 111 www.ff-muenchen.de