SlideShare a Scribd company logo
GWT & CDI
Heiko Braun <hbraun@redhat.com>
Topics


•   CDI & GWT
•   Use Cases & Requirements
•   Relevant Concepts
•   Likeminded Technologies
•   Demo
GWT & CDI
Google Web Toolkit

• Create Ajax applications from Java sources
• GWT SDK: Compiler, API, Tools
• Creates highly optimized, portable javascript
  code
Context and
Dependency Injection
• CDI: JSR-299, JSR-330
• Reference implementation: Weld
  • Seam 3
• EE6 component model
• Portable extensions
  • shrink-size or extend runtime
    (framework)
Use Cases &
Requirements
Use Cases

• Invoke CDI beans from GWT clients
   • RPC
   • Pub/Sub
   • Eventing
• Expose domain models to GWT clients
   • Serialization
Example: RPC bean
Example: RPC Client
Requirements


• “Seamless integration”
  • Verified concepts
  • Concise programming model
  • Reduction of boilerplate
Example: Event Bean
Example: Event Client
Relevant Concepts
Beans, Qualifiers &
         Scopes

• Bean type: Client-visible type (class, interface)
• Qualifier: Distinguish multiple beans of the same
  type
  • @Named, @Asynchronous
• Scope: Determines instance lifecycle
  • @SessionScoped,
    @ConversationScoped, @RequestScoped
Build & Run-time
• Run-time                    •   Build-time
  • Deployment
    • Same Origin Policy?
                                   •   GWT Compiler constraints

  • Transactions, Security             •   Domain model & API?
    • Context propagation?
  • Clustering, Failover
                                   •   Hosted Mode

    • Stateful Ajax Client?            •   CDI Bootstrap?

                                   •   Deferred Binding

                                       •   Boiler plate




              Java                  Javascript
Example: Conversation
    Scoped Bean
Example: Client managed
    conversation (1)
Example: Client managed
    conversation (2)
Likeminded
Technologies
Related Technologies

• JPA
   • Serialization
   • Detachment (lazy/eager loading)
   • Merging
• DataBinding
   • Widgets, Validation, Synchronization
• JMS
   • Ajax client as Topic Subscriber/Publisher
Project and
 Roadmap
Errai & Weld

•   Errai acts as Umbrella (http://jboss.org/errai)
•   Weld as Reference implementation
•   Driven by both Errai and CDI Team
•   Same runtimes Weld supports:
    • SE, Servlet, EE6, EC2:
      “Start POC, grow big”
Questions?

•   Project:   http://jboss.org/errai
•   Weld:      http://seamframework.org
•   Blog:       http://errai-blog.blogspot.com/
•   IRC:       irc.freenode.net#errai

More Related Content

PPTX
BizBook365 : A microservice approach
Foyzul Karim
 
PPTX
Microservices: A developer's approach
Foyzul Karim
 
PDF
Mastering asp.net mvc - Dot Net Tricks
Gaurav Singh
 
PDF
JavaCro'15 - Service Discovery in OSGi Beyond the JVM using Docker and Consul...
HUJAK - Hrvatska udruga Java korisnika / Croatian Java User Association
 
PPTX
Using the Cascade Server Web Service API, by Artur Tomusiak
hannonhill
 
PPTX
Node ts1
Yaniv Rodenski
 
PPTX
Signal rity1
Yaniv Rodenski
 
PPTX
Express yourself
Yaniv Rodenski
 
BizBook365 : A microservice approach
Foyzul Karim
 
Microservices: A developer's approach
Foyzul Karim
 
Mastering asp.net mvc - Dot Net Tricks
Gaurav Singh
 
JavaCro'15 - Service Discovery in OSGi Beyond the JVM using Docker and Consul...
HUJAK - Hrvatska udruga Java korisnika / Croatian Java User Association
 
Using the Cascade Server Web Service API, by Artur Tomusiak
hannonhill
 
Node ts1
Yaniv Rodenski
 
Signal rity1
Yaniv Rodenski
 
Express yourself
Yaniv Rodenski
 

What's hot (20)

KEY
Portal - Lego set for app development
bdaw
 
PPTX
.Net Fundamentals
Sunny Sharma
 
PPTX
Improving Perceived Page Performance with ASP.NET Web API and AJAX
Chris Bohatka
 
PPTX
Why XAF and XPO?
Jose Javier Columbie
 
PPT
ASP.NET Identity - O Novo componente de Membership do ASP.NET
Eduardo Pires
 
PPTX
How to ease the learning curve
Jose Javier Columbie
 
PPTX
Rest assured
Yaniv Rodenski
 
PPTX
Intro cujojs
Yubin Yang
 
PPTX
autodiscoverable microservices with vertx3
Andy Moncsek
 
PPTX
Bayt training
Ghazi Alhowari
 
PPTX
Aws sys ops administrator
Learntek1
 
PPTX
Continuous Delivery is Not a Commodity
Anton Weiss
 
PPTX
Javascript for Wep Apps
Michael Puckett
 
PDF
API Economy, Realizing the Business Value of APIs
ColdFusionConference
 
PDF
Workflow driven development
DmitryDemyankov
 
PPTX
ApacheCon North America - Introduction to FlexJS
Yishay Weiss
 
KEY
Using an in-house WordPress framework
peterwilsoncc
 
PPTX
Advanced php code igniter framework
Fahim Faysal Kabir
 
PPTX
BizTalk Server Performance Tips
BizTalk360
 
PPTX
In Memory Cahce Structure
Mehmet Ali Tastan
 
Portal - Lego set for app development
bdaw
 
.Net Fundamentals
Sunny Sharma
 
Improving Perceived Page Performance with ASP.NET Web API and AJAX
Chris Bohatka
 
Why XAF and XPO?
Jose Javier Columbie
 
ASP.NET Identity - O Novo componente de Membership do ASP.NET
Eduardo Pires
 
How to ease the learning curve
Jose Javier Columbie
 
Rest assured
Yaniv Rodenski
 
Intro cujojs
Yubin Yang
 
autodiscoverable microservices with vertx3
Andy Moncsek
 
Bayt training
Ghazi Alhowari
 
Aws sys ops administrator
Learntek1
 
Continuous Delivery is Not a Commodity
Anton Weiss
 
Javascript for Wep Apps
Michael Puckett
 
API Economy, Realizing the Business Value of APIs
ColdFusionConference
 
Workflow driven development
DmitryDemyankov
 
ApacheCon North America - Introduction to FlexJS
Yishay Weiss
 
Using an in-house WordPress framework
peterwilsoncc
 
Advanced php code igniter framework
Fahim Faysal Kabir
 
BizTalk Server Performance Tips
BizTalk360
 
In Memory Cahce Structure
Mehmet Ali Tastan
 
Ad

Viewers also liked (10)

PDF
Jug Zurich Slides
hbraun
 
PDF
Gwt cdi jaxrs_hbraun
hbraun
 
PDF
Errai Workspaces
hbraun
 
PPTX
Anti patterns
Alex Tumanoff
 
PPTX
enterprise java bean
Jitender Singh Lodhi
 
PDF
CDI and Weld
Redpill Linpro
 
PDF
Cdi conf 2013
Elena Zhuravleva
 
PDF
Java EE Revisits GoF Design Patterns
Murat Yener
 
PPT
Java EE Introduction
ejlp12
 
PPT
Java Persistence API (JPA) Step By Step
Guo Albert
 
Jug Zurich Slides
hbraun
 
Gwt cdi jaxrs_hbraun
hbraun
 
Errai Workspaces
hbraun
 
Anti patterns
Alex Tumanoff
 
enterprise java bean
Jitender Singh Lodhi
 
CDI and Weld
Redpill Linpro
 
Cdi conf 2013
Elena Zhuravleva
 
Java EE Revisits GoF Design Patterns
Murat Yener
 
Java EE Introduction
ejlp12
 
Java Persistence API (JPA) Step By Step
Guo Albert
 
Ad

Similar to Gwt cdi jud_con_berlin (20)

DOC
Google web toolkit gwt training
FuturePoint Technologies
 
PPTX
6 weeks 6 months live project summer industrial training in cmc limited 2012
CMC Limited
 
PDF
Building Enterprise Grade Front-End Applications with JavaScript Frameworks
FITC
 
PDF
CDI Best Practices with Real-Life Examples - TUT3287
Ahmad Gohar
 
PPTX
WebNetConf 2012 - Single Page Apps
Pop Apps
 
KEY
20120306 dublin js
Richard Rodger
 
PPT
Getting Started with Docker
visual28
 
PDF
End-to-end W3C APIs - tpac 2012
Alexandre Morgaut
 
KEY
20120802 timisoara
Richard Rodger
 
PDF
DrupalSouth 2015 - Performance: Not an Afterthought
Nick Santamaria
 
PPTX
JavaOne2016 - How to Generate Customized Java 8 Code from Your Database [TUT4...
Speedment, Inc.
 
PPTX
How to JavaOne 2016 - Generate Customized Java 8 Code from Your Database [TUT...
Malin Weiss
 
KEY
Android lessons you won't learn in school
Michael Galpin
 
PPTX
Edy Dawson Notes on SF HTML5 Dev Conf
Edy Dawson
 
PDF
JHipster
Yuen-Kuei Hsueh
 
PDF
Full Stack Developer Course | Infinite Graphix Technologies
Infinite Graphix Technologies
 
PDF
Shift Remote: JS - Javascript Build Tools: Past & Beyond - Shedrack Akintayo
Shift Conference
 
PPTX
Continuous Deployment into the Unknown with Artifactory, Bintray, Docker and ...
Gilad Garon
 
PDF
Sitecore development approach evolution – destination helix
Peter Nazarov
 
PPTX
Women Who Code, Ground Floor
Katie Weiss
 
Google web toolkit gwt training
FuturePoint Technologies
 
6 weeks 6 months live project summer industrial training in cmc limited 2012
CMC Limited
 
Building Enterprise Grade Front-End Applications with JavaScript Frameworks
FITC
 
CDI Best Practices with Real-Life Examples - TUT3287
Ahmad Gohar
 
WebNetConf 2012 - Single Page Apps
Pop Apps
 
20120306 dublin js
Richard Rodger
 
Getting Started with Docker
visual28
 
End-to-end W3C APIs - tpac 2012
Alexandre Morgaut
 
20120802 timisoara
Richard Rodger
 
DrupalSouth 2015 - Performance: Not an Afterthought
Nick Santamaria
 
JavaOne2016 - How to Generate Customized Java 8 Code from Your Database [TUT4...
Speedment, Inc.
 
How to JavaOne 2016 - Generate Customized Java 8 Code from Your Database [TUT...
Malin Weiss
 
Android lessons you won't learn in school
Michael Galpin
 
Edy Dawson Notes on SF HTML5 Dev Conf
Edy Dawson
 
JHipster
Yuen-Kuei Hsueh
 
Full Stack Developer Course | Infinite Graphix Technologies
Infinite Graphix Technologies
 
Shift Remote: JS - Javascript Build Tools: Past & Beyond - Shedrack Akintayo
Shift Conference
 
Continuous Deployment into the Unknown with Artifactory, Bintray, Docker and ...
Gilad Garon
 
Sitecore development approach evolution – destination helix
Peter Nazarov
 
Women Who Code, Ground Floor
Katie Weiss
 

More from hbraun (7)

PDF
AS7 Console 2013
hbraun
 
PDF
One daytalk hbraun_oct2011
hbraun
 
PDF
Errai Workspaces
hbraun
 
PDF
Errai CDI Integration
hbraun
 
PDF
Patterns&Practices-Errai
hbraun
 
PDF
GWT Jug Stuttgart
hbraun
 
PDF
Jbpm4 Deployer
hbraun
 
AS7 Console 2013
hbraun
 
One daytalk hbraun_oct2011
hbraun
 
Errai Workspaces
hbraun
 
Errai CDI Integration
hbraun
 
Patterns&Practices-Errai
hbraun
 
GWT Jug Stuttgart
hbraun
 
Jbpm4 Deployer
hbraun
 

Recently uploaded (20)

PPTX
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
PDF
A Strategic Analysis of the MVNO Wave in Emerging Markets.pdf
IPLOOK Networks
 
PPTX
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
PDF
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
PDF
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
PDF
AI-Cloud-Business-Management-Platforms-The-Key-to-Efficiency-Growth.pdf
Artjoker Software Development Company
 
PDF
Trying to figure out MCP by actually building an app from scratch with open s...
Julien SIMON
 
PDF
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
PDF
The Future of Mobile Is Context-Aware—Are You Ready?
iProgrammer Solutions Private Limited
 
PDF
CIFDAQ's Market Wrap : Bears Back in Control?
CIFDAQ
 
PDF
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
 
PDF
How ETL Control Logic Keeps Your Pipelines Safe and Reliable.pdf
Stryv Solutions Pvt. Ltd.
 
PPTX
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
PDF
NewMind AI Weekly Chronicles - July'25 - Week IV
NewMind AI
 
PDF
Responsible AI and AI Ethics - By Sylvester Ebhonu
Sylvester Ebhonu
 
PPTX
Introduction to Flutter by Ayush Desai.pptx
ayushdesai204
 
PPTX
Agile Chennai 18-19 July 2025 | Emerging patterns in Agentic AI by Bharani Su...
AgileNetwork
 
PDF
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
PPTX
Agile Chennai 18-19 July 2025 Ideathon | AI Powered Microfinance Literacy Gui...
AgileNetwork
 
PPTX
The Future of AI & Machine Learning.pptx
pritsen4700
 
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
A Strategic Analysis of the MVNO Wave in Emerging Markets.pdf
IPLOOK Networks
 
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
AI-Cloud-Business-Management-Platforms-The-Key-to-Efficiency-Growth.pdf
Artjoker Software Development Company
 
Trying to figure out MCP by actually building an app from scratch with open s...
Julien SIMON
 
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
The Future of Mobile Is Context-Aware—Are You Ready?
iProgrammer Solutions Private Limited
 
CIFDAQ's Market Wrap : Bears Back in Control?
CIFDAQ
 
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
 
How ETL Control Logic Keeps Your Pipelines Safe and Reliable.pdf
Stryv Solutions Pvt. Ltd.
 
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
NewMind AI Weekly Chronicles - July'25 - Week IV
NewMind AI
 
Responsible AI and AI Ethics - By Sylvester Ebhonu
Sylvester Ebhonu
 
Introduction to Flutter by Ayush Desai.pptx
ayushdesai204
 
Agile Chennai 18-19 July 2025 | Emerging patterns in Agentic AI by Bharani Su...
AgileNetwork
 
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
Agile Chennai 18-19 July 2025 Ideathon | AI Powered Microfinance Literacy Gui...
AgileNetwork
 
The Future of AI & Machine Learning.pptx
pritsen4700
 

Gwt cdi jud_con_berlin