INNOV-10: Getting Started with Ajax Ken Wilner VP of Technology.

Slides:



Advertisements
Similar presentations
® IBM Software Group Copyright © 2005 IBM Corporation AJAX Toolkit Framework Emerging Internet Technologies Group.
Advertisements

Fawaz Ghali AJAX: Web Programming's Toy.
Web Toolkit Julie George & Ronald Lopez 1. Requirements  Java SDK version 1.5 or later  Apache Ant is also necessary to run command line arguments 
Designer’s Challenge – Web-based Applications using Adobe Flex and OpenInsight Clay Borne President CLB IT.
1 GWT Google Web Toolkit Build AJAX apps in the Java language
Introduction Rich Internet Applications OpenLaszlo as an RIA Examples Community Competitors OpenLaszlo Architecture OpenLaszlo XML Structure Dealing with.
© 2007 IBM Corporation IBM Emerging Technologies Enabling an Accessible Web 2.0 Becky Gibson Web Accessibility Architect.
Google Web Toolkit Dudeanu Ermoghen Ib ă nescu Diana Melinte Laurenţiu-Ionuţ Petrişor Ionuţ C ă t ă lin.
Google Web Toolkit - Gufran Mohammed. Google Web Toolkit (GWT) is an open source Java software development framework that makes writing AJAX applications.
AJAX Presented by: Dickson Fu Dimas Ariawan Niels Andreassen Ryan Dial Jordan Nielson CMPUT 410 University of Alberta 2006.
Agenda What is BIRT? BIRT Features and Report Gallery Scripting BIRT
Microsoft ASP.NET AJAX - AJAX as it has to be Presented by : Rana Vijayasimha Nalla CSCE Grad Student.
Dynamic Web Pages Bert Wachsmuth. Review  Internet, IP addresses, ports, client-server, http, smtp  HTML, XHTML, XML  Style Sheets, external, internal,
© 2006 by IBM 1 How to use Eclipse to Build Rich Internet Applications With PHP and AJAX Phil Berkland IBM Software Group Emerging.
The Easiest Way to Write Web Applications Jordi Sastre IT Architect, PSC May 2012.
2 A First Look at Windows Presentation Foundation Everywhere ("WPF/E") Joe Stegman Lead Program Manager Microsoft Corporation.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
RIA & Adobe Flex Yunhui Fu 11/05/2008. What’s RIA RIA (Rich Internet Applications) –web applications which look and perform like desktop applications.
CS 4720 RESTfulness and AJAX CS 4720 – Web & Mobile Systems.
Ruth Betcher Ruth Christie
XForms: A case study Rajiv Shivane & Pavitar Singh.
GIS technologies and Web Mapping Services
ASP.NET + Ajax Jesper Tørresø ITNET2 F08. Ajax Ajax (Asynchronous JavaScript and XML) A group of interrelated web development techniques used for creating.
Yahoo! User Interface (YUI) Library Natly Mekdara.
Ajax Runtime Toolkits IBM Emerging Technologies. What is an AJAX Toolkit/Framework? An AJAX Toolkit/Runtime is more than just XMLHTTPRequest Should includes:
Building a UI with Zen Pat McGibbon –Sales Engineer.
Prepared by Stephen Olaño June 12, Rich Internet Applications It allow to build rich applications with data and multimedia contents, offering a.
September 15, 2015 Laszlo Overview. 2 Copyright (c) 2007 Laszlo Systems, Inc. Laszlo Systems: Leader in RIA Software Pioneer of Rich Internet Applications.
Some essentials difference syntax and concept for jquery developers Roohullah Afzali
1 Producing Rich Internet Applications with an Open Source Platform Martin Cadirola Ecotronics.
® How to Build IBM Lotus Notes Components for Composite Applications 정유신 과장 2007 하반기 로터스 알토란.
HTML. Principle of Programming  Interface with PC 2 English Japanese Chinese Machine Code Compiler / Interpreter C++ Perl Assembler Machine Code.
Google Web Toolkit An Overview By Shauvik Roy Choudhary.
DEV-5: Introduction to WebSpeed ® Stephen Ferguson Sr. Training Program Manager.
Google Web Toolkit Paul Heiniz, Wolfgang Kluth, Jan Marten, Malte Behrendt Web Technologies – Prof. Dr. Ulrik Schroeder – WS 2010/111 The slides are licensed.
Weekend MS CS Program Internet and Web Technologies COT 5930 Web Project Development - Ajax Dr. Roy Levow, Associate Chair & Professor
JavaScript Framework for Rich Apps in Every Browser Maura Wilder Joan Wortman
GWT In-depth Explained by Rohit Ghatol
The Microsoft Technical Roadshow 2007 Rich Client Development in XAML Mark Johnston Developer & Platform Group Microsoft Ltd
Ventsislav Popov Crossroad Ltd.. 1. What is AJAX?  AJAX Concept  ASP.NET AJAX Framework 2. ASP.NET AJAX Server Controls  ScriptManager, UpdatePanel.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
Introducing ASP.NET 2.0. Internet Technologies WWW Architecture Web Server Client Server Request Response Network HTTP TCP/IP PC/Mac/Unix + Browser (IE,
Building Rich Web Applications with Ajax Linda Dailey Paulson IEEE – Computer, October 05 (Vol.38, No.10) Presented by Jingming Zhang.
Flex 2 We’re Not in Kansas Anymore! or Welcome to Flex Theo Rushin Jr TeraTech, Inc.
Session: 1. © Aptech Ltd. 2Introduction to the Web / Session 1  Explain the evolution of HTML  Explain the page structure used by HTML  List the drawbacks.
INTRODUCTION TO WEB APPLICATION Chapter 1. In this chapter, you will learn about:  The evolution of the Internet  The beginning of the World Wide Web,
Cs332a_chapt10.ppt CS332A Advanced HTML Programming DHTML Dynamic Hypertext Markup Language A term describing a series of technologies Not a stand-a-lone.
REAL WORLD AJAX MARCH TIBCO USER CONFERENCE / 2004 Enterprise Rich Internet Applications with AJAX Real World Case Studies with TIBCO General Interface™
INNOV-7: Building a Richer UI for the Browser Chris Skeldon Senior Solution Consultant.
ASP.NET (Active Server Page) SNU OOPSLA Lab. October 2005.
RIA and Web2.0 Development with no Coding Juan Camilo Ruiz Senior Product Manager Development Tools.
Building AJAX-Enabled Applications with ASP.NET AJAX Framework Peter Ty Developer Evangelist Microsoft Hong Kong
Ajax VS Flex A comparison based on shopping cart implementation PoHsu Yeh py2157.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
Plug-in Architectures Presented by Truc Nguyen. What’s a plug-in? “a type of program that tightly integrates with a larger application to add a special.
Ajax and the GWT. Ajax  Asynchronous JavaScript And XML  Technology behind interactive web sites  Provide smoother experience than conventional web.
Google Web Toolkit Dynamic web on Java (Script) Jordan Jordanov 6 March 2008.
INNOV-2: Build a Better Web Interface Using AJAX Chris Morgan Pandora Software Systems
Introduction to ASP.NET development. Background ASP released in 1996 ASP supported for a minimum 10 years from Windows 8 release ASP.Net 1.0 released.
Google Web Toolkit for Mobile Applications Development INGENUITY AT ITS BEST……………….
Ajax 101 for CF Programmers Randy Brown – Michigan State University
Technologies For Creating Rich Internet Applications Presenter's name
The web, reloaded..  I. What is Web 2.0?  II. Technologies and examples of applications  III. Building Web 2.0 applications.
Building rich web applications with ASP.NET AJAX Mike Ormond Developer & Platform Evangelism Group, Microsoft Ltd Developer & Platform Evangelism Group,
INNOV-16: Rich User Interface for the Web???? AJAX to the Rescue Ken Wilner VP of Technology Progress Software.
Google Web Toolkit Tutorial
GeneXus 9.0: Web applications at their higher power
Google Web Toolkit - Gufran Mohammed
Pentaho and Yahoo User Interface (YUI)
Running C# in the browser
Presentation transcript:

INNOV-10: Getting Started with Ajax Ken Wilner VP of Technology

© 2007 Progress Software Corporation 2 Innov-10: Getting Started With Ajax Desktop vs. Browser Reach Rich Traditional Desktop Client Traditional Browser Client Ajax Client Gartner, Rich Internet Applications Are the Next Evolution of the Web, May 4, 2005 Desktop  Smooth, dynamic, and fine grained interaction model  Asynchronous content retrieval Traditional Browser  Ubiquitous client  Device independent +

© 2007 Progress Software Corporation 3 Innov-10: Getting Started With Ajax Traditional Browser-based vs. Ajax User Interface Web Server Backend Business Application HTTP(params) HTML(data)/CSS Browser Server Traditional User Interface Ajax Engine Web Server Backend Business Application HTTP (data) Transport Object JavaScript event HTML/CSS/data Browser Server Ajax

© 2007 Progress Software Corporation 4 Innov-10: Getting Started With Ajax Ajax Technologies  JavaScript General purpose programming language that runs in a browser Aka JScript aka ECMAScript  Cascading Style Sheets (CSS) Reusable styles for defining look of a Web page Script based or JavaScript settable  Document Object Model (DOM) XML parser Built-in document object allows widget-tree walker  XMLHttpRequest Communicate with a Web Server without a refresh Synchronous and asynchronous

© 2007 Progress Software Corporation 5 Innov-10: Getting Started With Ajax Ajax Challenges  Layout issues  UI Controls  Server communication and data binding  Remote-site integration  Back button, bookmarks, and history  Internationalization  Accessing DOM  Browser-cross compatibility

© 2007 Progress Software Corporation 6 Innov-10: Getting Started With Ajax Ajax Frameworks and Libraries Remoting Toolkits Dojo,JSON-RPC,Prototype, Yahoo, DWR UI Widgets Dojo, Prototype, Backbase, Zimbra, ActiveWidgets, TurboWidgets, Yahoo UI Low Level Effects Dojo, Rico, Scriptaculous Development Environment and Tools OpenLaszlo Google Web Toolkit Backbase Community Edition JackBE General Interface JavaScript Utilities Prototype Dojo Yahoo

© 2007 Progress Software Corporation 7 Innov-10: Getting Started With Ajax Ajax Toolkits  Yahoo! User Interface Set of JavaScript utilities and controls  OpenLaszlo XML and JavaScript declarative programming model  Google Web Toolkit Java-based development framework

© 2007 Progress Software Corporation 8 Innov-10: Getting Started With Ajax Agenda  Yahoo! User Interface  OpenLaszlo  Google Web Toolkit  Summary and Conclusions

© 2007 Progress Software Corporation 9 Innov-10: Getting Started With Ajax Yahoo! User Interface Library (YUI)  Open source –  Comprehensive set of Ajax focused JavaScript components  Great documentation!! Cheat sheets Training videos

© 2007 Progress Software Corporation 10 Innov-10: Getting Started With Ajax Why YUI?  Pure JavaScript-based library promotes easy integration  Modular design means ability to incrementally introduce components  Simplified XML-based data binding model

© 2007 Progress Software Corporation 11 Innov-10: Getting Started With Ajax YUI Getting Started Demo

© 2007 Progress Software Corporation 12 Innov-10: Getting Started With Ajax YUI and OpenEdge Web Server WebSpeed Messenger YUI Client myDataSource.makeConnection( “StartsWith=“"custnam”, myDataTable.onDataReturnPopulateTable, myDataTable); Submit WebSpeed myDataSource = new YAHOO.util.DataSource(" myDataSource.responseSchema = { resultNode: "eeCustomer", fields: ["Name","City",…] };

© 2007 Progress Software Corporation 13 Innov-10: Getting Started With Ajax Request Message: Response Message: Abbeville Sporting G Abbeville SC (864) USA … Abc Sports Newtown CA USA

© 2007 Progress Software Corporation 14 Innov-10: Getting Started With Ajax YUI and OpenEdge

© 2007 Progress Software Corporation 15 Innov-10: Getting Started With Ajax YUI – More Info  YUI Web Site  Yahoo! Developers Network  YUI Ext

© 2007 Progress Software Corporation 16 Innov-10: Getting Started With Ajax Agenda  Yahoo! User Interface  OpenLaszlo  Google Web Toolkit  Summary and Conclusions

© 2007 Progress Software Corporation 17 Innov-10: Getting Started With Ajax OpenLaszlo  Open Source –  Supports multiple platforms – minimal differences Flash (swf) – no ActionScript Ajax (dhtml)  Application written in LZX XML JavaScript  Rich library of controls and services  Well documented with good examples  Laszlo server compiles LZX into swf or dhtml

© 2007 Progress Software Corporation 18 Innov-10: Getting Started With Ajax Why OpenLaszlo?  Standard framework for building RIA-based applications UI Components Databinding Remote communication Events  Object-oriented XML markup language promotes extensibility  Declarative style aligns well with HTML and promotes productivity  Complete JavaScript api promotes data-driven dynamic programming  Richness of environment means minimal code writing versus other alternatives

© 2007 Progress Software Corporation 19 Innov-10: Getting Started With Ajax OpenLaszlo Sample Applications

© 2007 Progress Software Corporation 20 Innov-10: Getting Started With Ajax OpenLaszlo Ajax  Open standard  Platform and device independence  Seamless integration with HTML Flash  De-facto standard plugin (98% coverage)  High-level of consistency across browsers  Streaming audio and video

© 2007 Progress Software Corporation 21 Innov-10: Getting Started With Ajax OpenLaszlo Development Model LZX file OpenLaszlo Presentation Server

© 2007 Progress Software Corporation 22 Innov-10: Getting Started With Ajax OpenLaszlo Getting Started Demo

© 2007 Progress Software Corporation 23 Innov-10: Getting Started With Ajax OpenLaszlo UI Widgets OpenLaszlo Kitchen Sink

© 2007 Progress Software Corporation 24 Innov-10: Getting Started With Ajax OpenLaszlo Declarative Programming  Views group components and layouts control positioning  UI components have events  Events logic typically defined via handlers using JavaScript  Styling Fonts, fontsize, width, height, bgcolor, etc. Set via attributes Set programmatically

© 2007 Progress Software Corporation 25 Innov-10: Getting Started With Ajax OpenLaszlo Databinding  XML based Embedded in application XML file Remote Web application Web Service (proxied only)  Programming models – XPath-based Declarative or Api driven XPath to bind to UI components Dataset/Datapath elements to point to data source

© 2007 Progress Software Corporation 26 Innov-10: Getting Started With Ajax OpenLaszlo and OpenEdge Web Server WebSpeed Messenger OpenLaszlo Client contactsData.doRequest(); Submit 5 2 WebSpeed 4 3 ContactsData = Name 1 6

© 2007 Progress Software Corporation 27 Innov-10: Getting Started With Ajax OpenEdge Customer Filter Demo View VBox Grid List of customers…. HBox Text Customer Name Filter EditTextButton Submit

© 2007 Progress Software Corporation 28 Innov-10: Getting Started With Ajax OpenLaszlo and OpenEdge

© 2007 Progress Software Corporation 29 Innov-10: Getting Started With Ajax Other OpenLaszlo Features  Drawing API  Animation  Drag and drop  Persistent connections  Runtime constraint system

© 2007 Progress Software Corporation 30 Innov-10: Getting Started With Ajax OpenLaszlo – More Info  OpenLaszlo WebSite  Manning Press – Laszlo in Action

© 2007 Progress Software Corporation 31 Innov-10: Getting Started With Ajax Agenda  Yahoo! User Interface  OpenLaszlo  Google Web Toolkit  Summary and Conclusions

© 2007 Progress Software Corporation 32 Innov-10: Getting Started With Ajax Google Web Toolkit (GWT)  Open Source –  Ajax written in Java  Use your Java tool of choice – JDT  Provides Java to JavaScript compiler  Debug in Java

© 2007 Progress Software Corporation 33 Innov-10: Getting Started With Ajax Why GWT?  Better tools Eclipse – code complete Debugging Refactoring  Static type checking  Single technology Packaged widget set – SWT like No DOM CSS is optional  Simplified remote communication (RPC style services)

© 2007 Progress Software Corporation 34 Innov-10: Getting Started With Ajax GWT Sample Applications

© 2007 Progress Software Corporation 35 Innov-10: Getting Started With Ajax Getting Started With GWT  projectCreator Creates Eclipse project  applicationCreator Creates sample project files

© 2007 Progress Software Corporation 36 Innov-10: Getting Started With Ajax GWT Application Components  MyApp.java Java client application  MyApp.html html page in which client is to be rendered  MyApp.gwt.xml Connects html file to java files that contains entry point Maps service (RPC) request to Java implementation

© 2007 Progress Software Corporation 37 Innov-10: Getting Started With Ajax GWT Runtime Models  Hosted – for testing Runs as Java Runs in hosted browser  Web mode – for deployment Compiled to JavaScript Runs in any browser

© 2007 Progress Software Corporation 38 Innov-10: Getting Started With Ajax GWT Getting Started Demo

© 2007 Progress Software Corporation 39 Innov-10: Getting Started With Ajax GWT UI Widgets Google Kitchen Sink

© 2007 Progress Software Corporation 40 Innov-10: Getting Started With Ajax GWT Programming  Entry Point Contains public void onModuleLoad() { … }  Widgets have events button.addClickListener(new ClickListener() { public void onClick(Widget sender) { if (label.getText().equals("")) label.setText("Hello World!"); else label.setText(""); }  CSS Styling – multiple approaches.gwt-Button { } myButton.setStyleName(“big-button"); myButton.setWidth(“10em”);

© 2007 Progress Software Corporation 41 Innov-10: Getting Started With Ajax GWT Programming Get  GWT classes  Java  java.lang  java.util.*  base datatypes  serialization (RPC) Don’t Get  Java 5  Reflection  threads Java Programming

© 2007 Progress Software Corporation 42 Innov-10: Getting Started With Ajax GWT RPC Web Server GWT Servlet GWT Client getCustomerBeginsWith(…,callback) function callback() {…} BeginsWithDataServiceImpl.java Class customer { getCustomerBeginsWith(…) { } Submit

© 2007 Progress Software Corporation 43 Innov-10: Getting Started With Ajax GWT RPC Architecture Interface YourServiceAsync { yourMethod(…, callback); } class RemoteServiceServlet { } class YourServiceImpl { yourMethod(…) { ….} } Interface RemoteService { } interface YourService { yourMethod(…); } ServerInterface Client extends relatedimplements GWT Written by you

© 2007 Progress Software Corporation 44 Innov-10: Getting Started With Ajax GWT and OpenEdge Web Server GWT Servlet GWT Client getCustomerBeginsWith(…,callback) function callback() {…} BeginsWithDataServiceImpl.java Class customer { getCustomerBeginsWith(…) { } AppServer 4 3 Open Client for Java Submit

© 2007 Progress Software Corporation 45 Innov-10: Getting Started With Ajax OpenEdge Customer Filter Demo Vertical Panel GridWidget List of customers…. Horizontal Panel Label Customer Name Filter TextBoxButton Submit

© 2007 Progress Software Corporation 46 Innov-10: Getting Started With Ajax GWT and OpenEdge

© 2007 Progress Software Corporation 47 Innov-10: Getting Started With Ajax Other GWT Features  History, bookmarks, and the back button support Api allows history tokens to be added History listener allows application to react when token is loaded  I18N Build one property file for each locale, e.g. en_US, el_GR, es_ES, etc. Right one automatically loaded based on locale query parameter  JSNI – JavaScript Native Interface Mix Java and JavaScript code, e.g. Dojo, Prototype, Rico, Yahoo, etc. Wrap JavaScript with type safe Java code

© 2007 Progress Software Corporation 48 Innov-10: Getting Started With Ajax GWT – More Info  GWT WebSite  GWT Powered  GWT Blog  Manning Press – GWT in Action

© 2007 Progress Software Corporation 49 Innov-10: Getting Started With Ajax Agenda  Yahoo! User Interface  OpenLaszlo  Google Web Toolkit  Summary and Conclusions

© 2007 Progress Software Corporation 50 Innov-10: Getting Started With Ajax In Summary  Ajax – rich UI for the Web  Looks to tools and frameworks to help you out – still evolving  Pick a toolkit that fits your style and requirements  You can start using with OpenEdge today  Start learning now!!!

© 2007 Progress Software Corporation 51 Innov-10: Getting Started With Ajax Questions?

© 2007 Progress Software Corporation 52 Innov-10: Getting Started With Ajax Thank you for your time

© 2007 Progress Software Corporation 53 Innov-10: Getting Started With Ajax