Google Web Toolkit An Overview By Shauvik Roy Choudhary.

Slides:



Advertisements
Similar presentations
Coding Basics - Deferred Binding. Deferred Binding is a feature of the GWT compiler works by generating many versions of code at compile time, only one.
Advertisements

Google Web Toolkit (GWT) Steve Wargolet. Introduction Desktop client-server applications and their drawbacks. Static-only Web pages Introduction of Web.
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 
Introduction To Java Objectives For Today â Introduction To Java â The Java Platform & The (JVM) Java Virtual Machine â Core Java (API) Application Programming.
June 28 th – July 1 st 2006 Implementing Usability: Insights to improve your chances  CFUnited 2007.
1 GWT Google Web Toolkit Build AJAX apps in the Java language
P&O3: Tools & methodologies Stefaan Ternier. Overview TCP/IP Servlets Google Web Toolkit Google Maps JPDA.
6/3/2015eBiquity1 Tutorial on AJAX Anubhav Kale (akale1 AT cs DOT umbc DOT edu)
© 2007 IBM Corporation IBM Emerging Technologies Enabling an Accessible Web 2.0 Becky Gibson Web Accessibility Architect.
Technical Architectures
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.
Cloud Computing Lecture #7 Introduction to Ajax Jimmy Lin The iSchool University of Maryland Wednesday, October 15, 2008 This work is licensed under a.
Dynamic Web Pages Bert Wachsmuth. Review  Internet, IP addresses, ports, client-server, http, smtp  HTML, XHTML, XML  Style Sheets, external, internal,
L EC. 01: J AVA FUNDAMENTALS Fall Java Programming.
ITM352 Javascript and Dynamic Web Pages: Client Side Processing.
© 2006 by IBM 1 How to use Eclipse to Build Rich Internet Applications With PHP and AJAX Phil Berkland IBM Software Group Emerging.
Chapter 6 DOJO TOOLKITS. Objectives Discuss XML DOM Discuss JSON Discuss Ajax Response in XML, HTML, JSON, and Other Data Type.
GWT-EXT 로 Web application 개발하기
UNIT-V The MVC architecture and Struts Framework.
Prof. James A. Landay University of Washington Spring 2008 Web Interface Design, Prototyping, and Implementation Rich Internet Applications: AJAX, Server.
Windows.Net Programming Series Preview. Course Schedule CourseDate Microsoft.Net Fundamentals 01/13/2014 Microsoft Windows/Web Fundamentals 01/20/2014.
P&O3: Tools & methodologies Stefaan Ternier. Overview TCP/IP Servlets Google Web Toolkit Google Maps JPDA.
Pittsburgh Java User Group– Dec Java PureFaces: A JSF Framework Extension.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Introduction to ASP.NET. Prehistory of ASP.NET Original Internet – text based WWW – static graphical content  HTML (client-side) Need for interactive.
ExtWebDriver Open Source Project Daniel Koo Latha Nagaraj Bryan Robbins 04/23/2014.
1 Web GIS: from Javascript to GWT Pieter De Graef – Community Manager & Lead Developer Geomajas.
Ruth Betcher Ruth Christie
XForms: A case study Rajiv Shivane & Pavitar Singh.
ASP.NET + Ajax Jesper Tørresø ITNET2 F08. Ajax Ajax (Asynchronous JavaScript and XML) A group of interrelated web development techniques used for creating.
INNOV-10: Getting Started with Ajax Ken Wilner VP of Technology.
Java Mobile Apps with GWT & PhoneGap Josh Marinacci, webOS Developer Advocate.
Copyright 2007 Adobe Systems Incorporated. 1 ColdFusion 8 : Advanced AJAX Development Rakshith N Computer Scientist Jan 02, 2008.
The Web Architecture and ASP.NET. Slide 2 Review of the Web (1) It began with HTTP and HTML, which delivers static Web pages to browsers which would render.
Contrasting styles of Web UI Development: GWT vs Native JavaScript Roland Schweitzer Weathertop Consulting, LLC Jeremy Malczyk JISAO.
Google Web Toolkit Paul Heiniz, Wolfgang Kluth, Jan Marten, Malte Behrendt Web Technologies – Prof. Dr. Ulrik Schroeder – WS 2010/111 The slides are licensed.
GWT In-depth Explained by Rohit Ghatol
© 2006 IBM Corporation Agile Planning Web UI. © 2006 IBM Corporation Agenda  Overview of APT Web UI  Current Issues  Required Infrastructure  API.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
WebSphere Portal Technical Conference U.S Creating Rich Internet (AJAX) Applications with WebSphere Portlet Factory.
AJAX Compiled from “AJAX Programming” [Sang Shin] (Asynchronous JavaScript and XML)
Simplifying EAI Paul Butterworth Forté Software Inc. HPTS 99.
Google Web Toolkit. What is GWT? GWT is a development toolkit for building and optimizing complex Ajax applications Goal is to enable productive development.
REAL WORLD AJAX MARCH TIBCO USER CONFERENCE / 2004 Enterprise Rich Internet Applications with AJAX Real World Case Studies with TIBCO General Interface™
Weekend MS CS Program Internet and Web Technologies COT 5930 Web Project Development - Ajax Dr. Roy Levow, Associate Chair & Professor
INFSOM-RI The ETICS Web Portal WP5 activity Tomasz Kokoszka CERN/WP5.
CSI 3125, Preliminaries, page 1 SERVLET. CSI 3125, Preliminaries, page 2 SERVLET A servlet is a server-side software program, written in Java code, that.
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.
AJAX and REST. Slide 2 What is AJAX? It’s an acronym for Asynchronous JavaScript and XML Although requests need not be asynchronous It’s not really a.
Prof. James A. Landay University of Washington Spring 2008 Web Interface Design, Prototyping, and Implementation Rich Internet Applications: AJAX, Server.
Architectural Mismatch: Why reuse is so hard? Garlan, Allen, Ockerbloom; 1994.
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……………….
Ext JS - Direct Bridging The Gap A DMSBT Presentation By Timothy Chandler.
Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key.
Technologies For Creating Rich Internet Applications Presenter's name
Google Web Toolkit (GWT) St. Louis Java SIG April 12, 2007 Brad Busch Andrew Prunicki.
Sung-Dong Kim, Dept. of Computer Engineering, Hansung University Java - Introduction.
INNOV-16: Rich User Interface for the Web???? AJAX to the Rescue Ken Wilner VP of Technology Progress Software.
Google Web Toolkit Tutorial
Google Web Toolkit - Gufran Mohammed
AJAX.
Open Source Technologies
Modern web applications
Lecture 1: Multi-tier Architecture Overview
Modern web applications
Architectural Mismatch: Why reuse is so hard?
Presentation transcript:

Google Web Toolkit An Overview By Shauvik Roy Choudhary

Agenda GWT Basics User Interfaces Remote Procedure Calls (RPCs) JavaScript Native Interface (JSNI) The GWT Project

GWT Basics

What is GWT? Java software development framework that makes writing AJAX applications easy Develop and debug AJAX applications in the Java language Java-to-JavaScript compiler and a special web browser The compiler translates your Java application to browser-compliant JavaScript and HTML

Two Modes of Running Hosted mode Application runs as Java bytecode within the Java Virtual Machine (JVM) Used for Development because running in the JVM means you can take advantage of Java's debugging facilities Web mode Application runs as pure JavaScript and HTML, compiled with the Java-to-JavaScript compiler End users will only see this mode

Why use Java ? Static type checking boosts productivity while reducing errors. Common JavaScript errors (typos, type mismatches) are easily caught at compile time Code prompting/completion Automated Java refactoring Java-based OO designs are easier to communicate and understand

Why GWT ? No need to learn/use JavaScript language learn/use DOM APIs handle browser incompatibilities and quirks handle forward/backward buttons build commonly used Widgets Leverage various tools of Java programming language for writing/debugging/testing JUnit integration Internationalization

GWT Architecture

Building User Interfaces

GWT User Interface Classes Lots of GWT Widgets Custom Composite Widgets Event Handling Listener interface model Styling through CSS Dynamically add/remove styles

Remote Procedure Call (RPC)

What is and Why GWT RPC? Mechanism for interacting with the server by invoking a method Makes it easy for the client and server to pass Java objects back and forth over HTTP When used properly, RPCs give you the opportunity to move all of your UI logic to the client (leaving business logic on the server)

RPC Plumbing Architecture

Implementing a GWT RPC Write two service interface's (client & server) Synchronous interface Asynchronous interface - has to pass async. callback object Implement the service at the server side Service class implements Service interface and extends RemoteServiceServlet class Configure the service in the module configuration file Needed for running the app in hosted mode Make a call from the client

JavaScript Native JavaScript Native Interface (JSNI)

Why JSNI? Sometimes it's very useful to mix handwritten JavaScript into your Java source code Leverage various existing JavaScript toolkits Dojo toolkits, Prototype, Rico, etc. Should be used sparingly JSNI code is less portable across browsers, more likely to leak memory, less amenable to Java tools, and hard for the compiler to optimize Web equivalent of inline assembly code

GWT Module Configuration

Configuration Settings of a GWT Project (*.gwt.xml) Inherited modules An entry point class name Source path entries Public path entries Deferred binding rules, including property providers and class generators

Project Structure Overlaid into Java Packages Standard GWT Project layout com/example/cal/ - The project root package contains module XML files com/example/cal/client/ - Client-side source files and subpackages com/example/cal/server/ - Server-side code and subpackages com/example/cal/public/ - Static resources that can be served publicly

References Links with-google-web-toolkit.html Books GWT Java Ajax Programming by Prabhakar Chaganti [Packt Publishing] The Google Web Toolkit by Bruce Johnson and Joel Webber [Addison-Wesley]