SlideShare a Scribd company logo
Building Fat browser-agnosticGWT Clientsfor Cloud Distributedsystems (Java+.NET) Igor Moochnick IgorShare Consulting igor@igorshare.com Blog:  www.igorshare.com/blog
You are at the right place and time!
Create new GWT project
Compose UI from available components final Button sendButton = new Button("Send");  // Add a handler to send the search criteria to the server    sendButton.addClickHandler(new ClickHandler() {        /**        * Fired when the user clicks on the sendButton.        */       public void onClick(ClickEvent event) {            sendNameToServer();        }    Create client logic and UI
3 main parts Contract interface Client-side asynchronous proxy Server-side implementation Create remote service
Deploy to Google AppEngine http://igorsharecontactmgrdemo.appspot.com
REST via WCF
Deploy to the Staging Environment
Promote to the Production
GWT Client:  from GWT-RPC to REST
Compile Merge Deploy Merge GWT client and Azure Service
Jersey Restlet RESTEasy Apache CXF Spring v3  (somewhat) REST via JAX-RS  (Java)
Rightscale can help you manage AWS
Q&A
Thank you!
Building Fat browser-agnosticGWT Clientsfor Cloud Distributedsystems (Java+.NET) Igor Moochnick IgorShare Consulting igor@igorshare.com Blog:  www.igorshare.com/blog

More Related Content

What's hot

EPAM AQA: Let`s make a (s)hot with gatling 3.0+
EPAM AQA: Let`s  make a (s)hot with gatling 3.0+EPAM AQA: Let`s  make a (s)hot with gatling 3.0+
EPAM AQA: Let`s make a (s)hot with gatling 3.0+
Andrii Skrypnychenko
 
React Meetup 2
React Meetup 2React Meetup 2
React Meetup 2
redbadger
 
Google Cloud Messaging
Google Cloud Messaging Google Cloud Messaging
Google Cloud Messaging
Lavakush Verma
 
Meteor.js
Meteor.jsMeteor.js
Firebase Code Lab - 2015 GDG Buffalo DevFest
Firebase Code Lab - 2015 GDG Buffalo DevFestFirebase Code Lab - 2015 GDG Buffalo DevFest
Firebase Code Lab - 2015 GDG Buffalo DevFest
Bret McGowen - NYC Google Developer Advocate
 
Serverless
ServerlessServerless
Serverless
Iegor Fadieiev
 
高速な案件サイクルを支えるデータ基盤 その実践例
高速な案件サイクルを支えるデータ基盤 その実践例高速な案件サイクルを支えるデータ基盤 その実践例
高速な案件サイクルを支えるデータ基盤 その実践例
Recruit Lifestyle Co., Ltd.
 
GWT Quick Start
GWT Quick StartGWT Quick Start
GWT Quick Start
Guo Albert
 
Getting started with k8
Getting started with k8Getting started with k8
Getting started with k8
Anirban Sen Chowdhary
 
Efficient alternative for expensive microsoft project server
Efficient alternative for expensive microsoft project serverEfficient alternative for expensive microsoft project server
Efficient alternative for expensive microsoft project server
ValleySpeak, Inc
 
Google cloud functions
Google cloud functionsGoogle cloud functions
Google cloud functions
Péter Nagy
 
Serverless Cron Jobs with Ruby on Jets
Serverless Cron Jobs with Ruby on JetsServerless Cron Jobs with Ruby on Jets
Serverless Cron Jobs with Ruby on Jets
Tung Nguyen
 
Om & React
Om & ReactOm & React
Om & React
Fredrik Dyrkell
 
Angular Web Components
Angular Web ComponentsAngular Web Components
Angular Web Components
Orkhan Gasimov
 
GitHub Integration for Orangescrum Cloud Released!
GitHub Integration for Orangescrum Cloud Released!GitHub Integration for Orangescrum Cloud Released!
GitHub Integration for Orangescrum Cloud Released!
Orangescrum
 
Angular Web Components
Angular Web ComponentsAngular Web Components
Angular Web Components
GlobalLogic Ukraine
 
GCM Android
GCM AndroidGCM Android
GCM Android
aswapnal
 
Implementing GraphQL - Without a Backend
Implementing GraphQL - Without a BackendImplementing GraphQL - Without a Backend
Implementing GraphQL - Without a Backend
Showmax Engineering
 
CraftCamp for Students - Introduction to Meteor.js
CraftCamp for Students - Introduction to Meteor.jsCraftCamp for Students - Introduction to Meteor.js
CraftCamp for Students - Introduction to Meteor.js
craftworkz
 
Firebase
FirebaseFirebase
Firebase
neha nasreen
 

What's hot (20)

EPAM AQA: Let`s make a (s)hot with gatling 3.0+
EPAM AQA: Let`s  make a (s)hot with gatling 3.0+EPAM AQA: Let`s  make a (s)hot with gatling 3.0+
EPAM AQA: Let`s make a (s)hot with gatling 3.0+
 
React Meetup 2
React Meetup 2React Meetup 2
React Meetup 2
 
Google Cloud Messaging
Google Cloud Messaging Google Cloud Messaging
Google Cloud Messaging
 
Meteor.js
Meteor.jsMeteor.js
Meteor.js
 
Firebase Code Lab - 2015 GDG Buffalo DevFest
Firebase Code Lab - 2015 GDG Buffalo DevFestFirebase Code Lab - 2015 GDG Buffalo DevFest
Firebase Code Lab - 2015 GDG Buffalo DevFest
 
Serverless
ServerlessServerless
Serverless
 
高速な案件サイクルを支えるデータ基盤 その実践例
高速な案件サイクルを支えるデータ基盤 その実践例高速な案件サイクルを支えるデータ基盤 その実践例
高速な案件サイクルを支えるデータ基盤 その実践例
 
GWT Quick Start
GWT Quick StartGWT Quick Start
GWT Quick Start
 
Getting started with k8
Getting started with k8Getting started with k8
Getting started with k8
 
Efficient alternative for expensive microsoft project server
Efficient alternative for expensive microsoft project serverEfficient alternative for expensive microsoft project server
Efficient alternative for expensive microsoft project server
 
Google cloud functions
Google cloud functionsGoogle cloud functions
Google cloud functions
 
Serverless Cron Jobs with Ruby on Jets
Serverless Cron Jobs with Ruby on JetsServerless Cron Jobs with Ruby on Jets
Serverless Cron Jobs with Ruby on Jets
 
Om & React
Om & ReactOm & React
Om & React
 
Angular Web Components
Angular Web ComponentsAngular Web Components
Angular Web Components
 
GitHub Integration for Orangescrum Cloud Released!
GitHub Integration for Orangescrum Cloud Released!GitHub Integration for Orangescrum Cloud Released!
GitHub Integration for Orangescrum Cloud Released!
 
Angular Web Components
Angular Web ComponentsAngular Web Components
Angular Web Components
 
GCM Android
GCM AndroidGCM Android
GCM Android
 
Implementing GraphQL - Without a Backend
Implementing GraphQL - Without a BackendImplementing GraphQL - Without a Backend
Implementing GraphQL - Without a Backend
 
CraftCamp for Students - Introduction to Meteor.js
CraftCamp for Students - Introduction to Meteor.jsCraftCamp for Students - Introduction to Meteor.js
CraftCamp for Students - Introduction to Meteor.js
 
Firebase
FirebaseFirebase
Firebase
 

Viewers also liked

Proyecto que es la ciencia
Proyecto que es la cienciaProyecto que es la ciencia
Proyecto que es la ciencia
Brigith Flores
 
Presentación transparencia municipal a Lagun Artean, Solola abril 2010
Presentación transparencia municipal a Lagun Artean, Solola abril 2010Presentación transparencia municipal a Lagun Artean, Solola abril 2010
Presentación transparencia municipal a Lagun Artean, Solola abril 2010
Jorge López-Bachiller Fernández
 
Access
AccessAccess
Trig classroom readiniess 2014 - 15 Tim Hall
Trig classroom readiniess 2014 - 15 Tim Hall  Trig classroom readiniess 2014 - 15 Tim Hall
Trig classroom readiniess 2014 - 15 Tim Hall
jimwenz
 
Cuerpo sano mente sana
Cuerpo sano mente sanaCuerpo sano mente sana
Cuerpo sano mente sana
beatrizflores25
 
Diario 9.php
Diario 9.phpDiario 9.php
Diario 9.php
Mario Nicolau
 
Los procesos de gestión aplicados en eps
Los procesos de gestión aplicados en epsLos procesos de gestión aplicados en eps
Los procesos de gestión aplicados en eps
LESGabriela
 
Entrevista a Andrés Pérez Ortega (marcapropia.net)
Entrevista a Andrés Pérez Ortega (marcapropia.net)Entrevista a Andrés Pérez Ortega (marcapropia.net)
Entrevista a Andrés Pérez Ortega (marcapropia.net)
Jorge Orús
 
Como ensamblar una pc
Como ensamblar una pcComo ensamblar una pc
Como ensamblar una pc
Meduca
 
iPhone Uygulamasi Pazalamasi 2
iPhone Uygulamasi Pazalamasi 2iPhone Uygulamasi Pazalamasi 2
iPhone Uygulamasi Pazalamasi 2
Murat OZORAL
 
Tarea 1, periodo 2 estrategias
Tarea 1, periodo 2 estrategiasTarea 1, periodo 2 estrategias
Tarea 1, periodo 2 estrategias
krlos72
 
Revista Num04
Revista Num04Revista Num04
Revista Num04
Special Class Club
 
Mobile conversion optimization with Chris Goward of WiderFunnel
Mobile conversion optimization with Chris Goward of WiderFunnelMobile conversion optimization with Chris Goward of WiderFunnel
Mobile conversion optimization with Chris Goward of WiderFunnel
Chris Goward
 
taller de Informática Aplicada
taller de Informática Aplicadataller de Informática Aplicada
taller de Informática Aplicada
Luis Ariel Quintero
 
Clasificaciones tipográficas
Clasificaciones tipográficasClasificaciones tipográficas
Clasificaciones tipográficas
tipofacil
 
The Paradox of Performance
The Paradox of PerformanceThe Paradox of Performance
The Paradox of Performance
Catalyst Consulting South Africa
 
Cine y embarazo (i)
Cine y embarazo (i)Cine y embarazo (i)
Cine y embarazo (i)
Javier González de Dios
 
Desarrollo humano integral
Desarrollo humano integralDesarrollo humano integral
Desarrollo humano integral
ETICA2013
 
L'économie de la télévision de rattrapage en 2015
L'économie de la télévision de rattrapage en 2015L'économie de la télévision de rattrapage en 2015
L'économie de la télévision de rattrapage en 2015
LeCNC
 

Viewers also liked (19)

Proyecto que es la ciencia
Proyecto que es la cienciaProyecto que es la ciencia
Proyecto que es la ciencia
 
Presentación transparencia municipal a Lagun Artean, Solola abril 2010
Presentación transparencia municipal a Lagun Artean, Solola abril 2010Presentación transparencia municipal a Lagun Artean, Solola abril 2010
Presentación transparencia municipal a Lagun Artean, Solola abril 2010
 
Access
AccessAccess
Access
 
Trig classroom readiniess 2014 - 15 Tim Hall
Trig classroom readiniess 2014 - 15 Tim Hall  Trig classroom readiniess 2014 - 15 Tim Hall
Trig classroom readiniess 2014 - 15 Tim Hall
 
Cuerpo sano mente sana
Cuerpo sano mente sanaCuerpo sano mente sana
Cuerpo sano mente sana
 
Diario 9.php
Diario 9.phpDiario 9.php
Diario 9.php
 
Los procesos de gestión aplicados en eps
Los procesos de gestión aplicados en epsLos procesos de gestión aplicados en eps
Los procesos de gestión aplicados en eps
 
Entrevista a Andrés Pérez Ortega (marcapropia.net)
Entrevista a Andrés Pérez Ortega (marcapropia.net)Entrevista a Andrés Pérez Ortega (marcapropia.net)
Entrevista a Andrés Pérez Ortega (marcapropia.net)
 
Como ensamblar una pc
Como ensamblar una pcComo ensamblar una pc
Como ensamblar una pc
 
iPhone Uygulamasi Pazalamasi 2
iPhone Uygulamasi Pazalamasi 2iPhone Uygulamasi Pazalamasi 2
iPhone Uygulamasi Pazalamasi 2
 
Tarea 1, periodo 2 estrategias
Tarea 1, periodo 2 estrategiasTarea 1, periodo 2 estrategias
Tarea 1, periodo 2 estrategias
 
Revista Num04
Revista Num04Revista Num04
Revista Num04
 
Mobile conversion optimization with Chris Goward of WiderFunnel
Mobile conversion optimization with Chris Goward of WiderFunnelMobile conversion optimization with Chris Goward of WiderFunnel
Mobile conversion optimization with Chris Goward of WiderFunnel
 
taller de Informática Aplicada
taller de Informática Aplicadataller de Informática Aplicada
taller de Informática Aplicada
 
Clasificaciones tipográficas
Clasificaciones tipográficasClasificaciones tipográficas
Clasificaciones tipográficas
 
The Paradox of Performance
The Paradox of PerformanceThe Paradox of Performance
The Paradox of Performance
 
Cine y embarazo (i)
Cine y embarazo (i)Cine y embarazo (i)
Cine y embarazo (i)
 
Desarrollo humano integral
Desarrollo humano integralDesarrollo humano integral
Desarrollo humano integral
 
L'économie de la télévision de rattrapage en 2015
L'économie de la télévision de rattrapage en 2015L'économie de la télévision de rattrapage en 2015
L'économie de la télévision de rattrapage en 2015
 

Similar to Building Gwt Clients For Cloud Apps.Pptx

Google Web Toolkits
Google Web ToolkitsGoogle Web Toolkits
Google Web Toolkits
Yiguang Hu
 
Real time Communication with Signalr (Android Client)
Real time Communication with Signalr (Android Client)Real time Communication with Signalr (Android Client)
Real time Communication with Signalr (Android Client)
Deepak Gupta
 
Google Web Toolkits
Google Web ToolkitsGoogle Web Toolkits
Google Web Toolkits
Yiguang Hu
 
Fancy Features in Asp.Net Core SignalR
Fancy Features in Asp.Net Core SignalRFancy Features in Asp.Net Core SignalR
Fancy Features in Asp.Net Core SignalR
Vladimir Georgiev
 
Gwt session
Gwt sessionGwt session
Gwt session
Ahmed Akl
 
Gwt session
Gwt sessionGwt session
Gwt session
Mans Jug
 
SignalR tutorial & best practices
SignalR tutorial & best practicesSignalR tutorial & best practices
SignalR tutorial & best practices
Minh Ng
 
Google Wave API: Now and Beyond
Google Wave API: Now and BeyondGoogle Wave API: Now and Beyond
Google Wave API: Now and Beyond
Marakana Inc.
 
Building a chat app with windows azure mobile
Building a chat app with windows azure mobileBuilding a chat app with windows azure mobile
Building a chat app with windows azure mobile
Flavius-Radu Demian
 
Cruise control
Cruise controlCruise control
Cruise control
Rajesh Kumar
 
Building IoT Solutions using Windows IoT Core
Building IoT Solutions using Windows IoT CoreBuilding IoT Solutions using Windows IoT Core
Building IoT Solutions using Windows IoT Core
WinWire Technologies Inc
 
A Microsoft Silverlight User Group Starter Kit Made Available for Everyone to...
A Microsoft Silverlight User Group Starter Kit Made Available for Everyone to...A Microsoft Silverlight User Group Starter Kit Made Available for Everyone to...
A Microsoft Silverlight User Group Starter Kit Made Available for Everyone to...
DataLeader.io
 
Google Web Toolkit Introduction - eXo Platform SEA
Google Web Toolkit Introduction - eXo Platform SEAGoogle Web Toolkit Introduction - eXo Platform SEA
Google Web Toolkit Introduction - eXo Platform SEA
nerazz08
 
.NET Conf 2019 高雄場 - .NET Core 3.0
.NET Conf 2019 高雄場 - .NET Core 3.0.NET Conf 2019 高雄場 - .NET Core 3.0
.NET Conf 2019 高雄場 - .NET Core 3.0
Jeff Chu
 
Google Web Toolkit
Google Web ToolkitGoogle Web Toolkit
Google Web Toolkit
Christos Stathis
 
GWT training session 3
GWT training session 3GWT training session 3
GWT training session 3
SNEHAL MASNE
 
CloudHub Connector With Mulesoft
CloudHub Connector With MulesoftCloudHub Connector With Mulesoft
CloudHub Connector With Mulesoft
Jitendra Bafna
 
Highload JavaScript Framework without Inheritance
Highload JavaScript Framework without InheritanceHighload JavaScript Framework without Inheritance
Highload JavaScript Framework without Inheritance
FDConf
 
Next Generation Hybrid Applications with Qt - presentation for SEE 2009
Next Generation Hybrid Applications with Qt - presentation for SEE 2009Next Generation Hybrid Applications with Qt - presentation for SEE 2009
Next Generation Hybrid Applications with Qt - presentation for SEE 2009
Nokia
 
Connecting Xamarin Apps with IBM Worklight in Bluemix
Connecting Xamarin Apps with IBM Worklight in BluemixConnecting Xamarin Apps with IBM Worklight in Bluemix
Connecting Xamarin Apps with IBM Worklight in Bluemix
IBM
 

Similar to Building Gwt Clients For Cloud Apps.Pptx (20)

Google Web Toolkits
Google Web ToolkitsGoogle Web Toolkits
Google Web Toolkits
 
Real time Communication with Signalr (Android Client)
Real time Communication with Signalr (Android Client)Real time Communication with Signalr (Android Client)
Real time Communication with Signalr (Android Client)
 
Google Web Toolkits
Google Web ToolkitsGoogle Web Toolkits
Google Web Toolkits
 
Fancy Features in Asp.Net Core SignalR
Fancy Features in Asp.Net Core SignalRFancy Features in Asp.Net Core SignalR
Fancy Features in Asp.Net Core SignalR
 
Gwt session
Gwt sessionGwt session
Gwt session
 
Gwt session
Gwt sessionGwt session
Gwt session
 
SignalR tutorial & best practices
SignalR tutorial & best practicesSignalR tutorial & best practices
SignalR tutorial & best practices
 
Google Wave API: Now and Beyond
Google Wave API: Now and BeyondGoogle Wave API: Now and Beyond
Google Wave API: Now and Beyond
 
Building a chat app with windows azure mobile
Building a chat app with windows azure mobileBuilding a chat app with windows azure mobile
Building a chat app with windows azure mobile
 
Cruise control
Cruise controlCruise control
Cruise control
 
Building IoT Solutions using Windows IoT Core
Building IoT Solutions using Windows IoT CoreBuilding IoT Solutions using Windows IoT Core
Building IoT Solutions using Windows IoT Core
 
A Microsoft Silverlight User Group Starter Kit Made Available for Everyone to...
A Microsoft Silverlight User Group Starter Kit Made Available for Everyone to...A Microsoft Silverlight User Group Starter Kit Made Available for Everyone to...
A Microsoft Silverlight User Group Starter Kit Made Available for Everyone to...
 
Google Web Toolkit Introduction - eXo Platform SEA
Google Web Toolkit Introduction - eXo Platform SEAGoogle Web Toolkit Introduction - eXo Platform SEA
Google Web Toolkit Introduction - eXo Platform SEA
 
.NET Conf 2019 高雄場 - .NET Core 3.0
.NET Conf 2019 高雄場 - .NET Core 3.0.NET Conf 2019 高雄場 - .NET Core 3.0
.NET Conf 2019 高雄場 - .NET Core 3.0
 
Google Web Toolkit
Google Web ToolkitGoogle Web Toolkit
Google Web Toolkit
 
GWT training session 3
GWT training session 3GWT training session 3
GWT training session 3
 
CloudHub Connector With Mulesoft
CloudHub Connector With MulesoftCloudHub Connector With Mulesoft
CloudHub Connector With Mulesoft
 
Highload JavaScript Framework without Inheritance
Highload JavaScript Framework without InheritanceHighload JavaScript Framework without Inheritance
Highload JavaScript Framework without Inheritance
 
Next Generation Hybrid Applications with Qt - presentation for SEE 2009
Next Generation Hybrid Applications with Qt - presentation for SEE 2009Next Generation Hybrid Applications with Qt - presentation for SEE 2009
Next Generation Hybrid Applications with Qt - presentation for SEE 2009
 
Connecting Xamarin Apps with IBM Worklight in Bluemix
Connecting Xamarin Apps with IBM Worklight in BluemixConnecting Xamarin Apps with IBM Worklight in Bluemix
Connecting Xamarin Apps with IBM Worklight in Bluemix
 

More from Igor Moochnick

Continuous delivery workflow with Docker
Continuous delivery workflow with DockerContinuous delivery workflow with Docker
Continuous delivery workflow with Docker
Igor Moochnick
 
Being a generalist and being great at what you do
Being a generalist and being great at what you doBeing a generalist and being great at what you do
Being a generalist and being great at what you do
Igor Moochnick
 
The journey to container adoption in enterprise
The journey to container adoption in enterpriseThe journey to container adoption in enterprise
The journey to container adoption in enterprise
Igor Moochnick
 
Dev ops overview (brief)
Dev ops overview (brief)Dev ops overview (brief)
Dev ops overview (brief)
Igor Moochnick
 
Dev ops cd tool chains
Dev ops cd tool chainsDev ops cd tool chains
Dev ops cd tool chains
Igor Moochnick
 
Orchestration musings
Orchestration musingsOrchestration musings
Orchestration musings
Igor Moochnick
 
Delivery pipelines
Delivery pipelinesDelivery pipelines
Delivery pipelines
Igor Moochnick
 
Tips for building responsive cloud applications
Tips for building responsive cloud applicationsTips for building responsive cloud applications
Tips for building responsive cloud applications
Igor Moochnick
 
Building complex single page application should be as enjoyable as visit to a...
Building complex single page application should be as enjoyable as visit to a...Building complex single page application should be as enjoyable as visit to a...
Building complex single page application should be as enjoyable as visit to a...
Igor Moochnick
 
Amazon 101 - building composite responsive apps - small
Amazon 101 - building composite responsive apps - smallAmazon 101 - building composite responsive apps - small
Amazon 101 - building composite responsive apps - small
Igor Moochnick
 
Ccr - Concurrency and Coordination Runtime
Ccr - Concurrency and Coordination RuntimeCcr - Concurrency and Coordination Runtime
Ccr - Concurrency and Coordination Runtime
Igor Moochnick
 
RavenDB overview
RavenDB overviewRavenDB overview
RavenDB overview
Igor Moochnick
 
NO SQL: What, Why, How
NO SQL: What, Why, HowNO SQL: What, Why, How
NO SQL: What, Why, How
Igor Moochnick
 
Azure ServiceBus Queues and Topics
Azure ServiceBus Queues and TopicsAzure ServiceBus Queues and Topics
Azure ServiceBus Queues and Topics
Igor Moochnick
 
Arch factory - Agile Design: Best Practices
Arch factory - Agile Design: Best PracticesArch factory - Agile Design: Best Practices
Arch factory - Agile Design: Best Practices
Igor Moochnick
 
Best practices for agile design
Best practices for agile designBest practices for agile design
Best practices for agile design
Igor Moochnick
 
Caliburn.micro jump start composite applications for WPF, Silverlight and WP7
Caliburn.micro jump start composite applications for WPF, Silverlight and WP7Caliburn.micro jump start composite applications for WPF, Silverlight and WP7
Caliburn.micro jump start composite applications for WPF, Silverlight and WP7
Igor Moochnick
 
Building lean products with distributed agile teams
Building lean products with distributed agile teamsBuilding lean products with distributed agile teams
Building lean products with distributed agile teams
Igor Moochnick
 
Practical alm testing
Practical alm   testingPractical alm   testing
Practical alm testing
Igor Moochnick
 
Putting SOAP to REST
Putting SOAP to RESTPutting SOAP to REST
Putting SOAP to REST
Igor Moochnick
 

More from Igor Moochnick (20)

Continuous delivery workflow with Docker
Continuous delivery workflow with DockerContinuous delivery workflow with Docker
Continuous delivery workflow with Docker
 
Being a generalist and being great at what you do
Being a generalist and being great at what you doBeing a generalist and being great at what you do
Being a generalist and being great at what you do
 
The journey to container adoption in enterprise
The journey to container adoption in enterpriseThe journey to container adoption in enterprise
The journey to container adoption in enterprise
 
Dev ops overview (brief)
Dev ops overview (brief)Dev ops overview (brief)
Dev ops overview (brief)
 
Dev ops cd tool chains
Dev ops cd tool chainsDev ops cd tool chains
Dev ops cd tool chains
 
Orchestration musings
Orchestration musingsOrchestration musings
Orchestration musings
 
Delivery pipelines
Delivery pipelinesDelivery pipelines
Delivery pipelines
 
Tips for building responsive cloud applications
Tips for building responsive cloud applicationsTips for building responsive cloud applications
Tips for building responsive cloud applications
 
Building complex single page application should be as enjoyable as visit to a...
Building complex single page application should be as enjoyable as visit to a...Building complex single page application should be as enjoyable as visit to a...
Building complex single page application should be as enjoyable as visit to a...
 
Amazon 101 - building composite responsive apps - small
Amazon 101 - building composite responsive apps - smallAmazon 101 - building composite responsive apps - small
Amazon 101 - building composite responsive apps - small
 
Ccr - Concurrency and Coordination Runtime
Ccr - Concurrency and Coordination RuntimeCcr - Concurrency and Coordination Runtime
Ccr - Concurrency and Coordination Runtime
 
RavenDB overview
RavenDB overviewRavenDB overview
RavenDB overview
 
NO SQL: What, Why, How
NO SQL: What, Why, HowNO SQL: What, Why, How
NO SQL: What, Why, How
 
Azure ServiceBus Queues and Topics
Azure ServiceBus Queues and TopicsAzure ServiceBus Queues and Topics
Azure ServiceBus Queues and Topics
 
Arch factory - Agile Design: Best Practices
Arch factory - Agile Design: Best PracticesArch factory - Agile Design: Best Practices
Arch factory - Agile Design: Best Practices
 
Best practices for agile design
Best practices for agile designBest practices for agile design
Best practices for agile design
 
Caliburn.micro jump start composite applications for WPF, Silverlight and WP7
Caliburn.micro jump start composite applications for WPF, Silverlight and WP7Caliburn.micro jump start composite applications for WPF, Silverlight and WP7
Caliburn.micro jump start composite applications for WPF, Silverlight and WP7
 
Building lean products with distributed agile teams
Building lean products with distributed agile teamsBuilding lean products with distributed agile teams
Building lean products with distributed agile teams
 
Practical alm testing
Practical alm   testingPractical alm   testing
Practical alm testing
 
Putting SOAP to REST
Putting SOAP to RESTPutting SOAP to REST
Putting SOAP to REST
 

Recently uploaded

Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
Postman
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
Daiki Mogmet Ito
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
DanBrown980551
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
Hiroshi SHIBATA
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Jeffrey Haguewood
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
fredae14
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
Zilliz
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
IndexBug
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Wask
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Webinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data WarehouseWebinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data Warehouse
Federico Razzoli
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 

Recently uploaded (20)

Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Webinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data WarehouseWebinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data Warehouse
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 

Building Gwt Clients For Cloud Apps.Pptx

  • 1. Building Fat browser-agnosticGWT Clientsfor Cloud Distributedsystems (Java+.NET) Igor Moochnick IgorShare Consulting igor@igorshare.com Blog: www.igorshare.com/blog
  • 2. You are at the right place and time!
  • 3. Create new GWT project
  • 4. Compose UI from available components final Button sendButton = new Button("Send"); // Add a handler to send the search criteria to the server    sendButton.addClickHandler(new ClickHandler() {        /**        * Fired when the user clicks on the sendButton.        */       public void onClick(ClickEvent event) {            sendNameToServer();        }    Create client logic and UI
  • 5. 3 main parts Contract interface Client-side asynchronous proxy Server-side implementation Create remote service
  • 6. Deploy to Google AppEngine http://igorsharecontactmgrdemo.appspot.com
  • 8. Deploy to the Staging Environment
  • 9. Promote to the Production
  • 10. GWT Client: from GWT-RPC to REST
  • 11. Compile Merge Deploy Merge GWT client and Azure Service
  • 12. Jersey Restlet RESTEasy Apache CXF Spring v3 (somewhat) REST via JAX-RS (Java)
  • 13. Rightscale can help you manage AWS
  • 14. Q&A
  • 16. Building Fat browser-agnosticGWT Clientsfor Cloud Distributedsystems (Java+.NET) Igor Moochnick IgorShare Consulting igor@igorshare.com Blog: www.igorshare.com/blog

Editor's Notes

  1. package com.igorshare.client;@RemoteServiceRelativePath("contacts")public interface ContactManagerService extends RemoteService { List<ContactInfo> getContacts(String filter);}package com.igorshare.client;public interface ContactManagerServiceAsync { void getContacts(String filter, AsyncCallback<List<ContactInfo>> callback);}package com.igorshare.server;public class ContactManagerServiceImpl extends RemoteServiceServlet implementsContactManagerService { public List<ContactInfo> getContacts(String filter) { ... }}