SlideShare ist ein Scribd-Unternehmen logo
1 von 18
Single Sourcing using Rich Ajax Platform



                                        Ankur Sharma
                                        PDE UI Contributor
                                        ankur_sharma@in.ibm.com




          © 2009 by International Business Machines; made available under the EPL v1.0
Agenda
o   Rich Ajax Platform
o   How it works?
o   Single Sourcing
o   How to develop for RAP?
o   The Good, The Bad and The Ugly




                    © 2010 by International Business Machines; made available under the EPL v1.0
RCP                                                              RAP                   Plug-ins




http://www.flickr.com/photos/stringgle/298571748/




                                                    © 2010 by International Business Machines; made available under the EPL v1.0
Rich Ajax Platform
o   brings RCP applications to browser
o   is not a web-application development toolkit
o   exposes sub-set of RCP API
o   enables re-use




                      © 2010 by International Business Machines; made available under the EPL v1.0
How RAP works?




           © 2010 by International Business Machines; made available under the EPL v1.0
How RAP works?
o   RWT impersonates SWT
o   uses qooxdoo Javascript library
    for rendering UI in browser
o   runs in a OSGi runtime (Equinox)
    with servlet bridge




                      © 2010 by International Business Machines; made available under the EPL v1.0
Single Sourcing
o   write once run everywhere
o   develop desktop and web client simultaneously
    from same code base
o   maximize code and skill reuse
o   can manage with few Javascript and web-
    development skills and resources



                      © 2010 by International Business Machines; made available under the EPL v1.0
How to develop for RAP?
o   Things you need to be careful about
    –     Target Platforms
    –     Dependencies
    –     Platform specific APIs
    –     Validation
    –     Resources
    –     Threads
    –     Jobs
    ...
                             © 2010 by International Business Machines; made available under the EPL v1.0
RAP Target Platform
o   RAP can not co-exists with RCP
o   has separate run-time thus needs different TP
o   better use different workspaces
o   develop principally for RAP TP




                      © 2010 by International Business Machines; made available under the EPL v1.0
Approach
o   Dependencies
    –   Favor Require-Bundle. Better tooling support.
    –   Import-Packages suffer split package problems
o   Missing API
    –   Build fragments
    –   Use compatibility plug-in




                          © 2010 by International Business Machines; made available under the EPL v1.0
RCP vs RAP



   RCP App.

                                           RAP App.




              © 2010 by International Business Machines; made available under the EPL v1.0
Session
o   Singletons are application scope
o   Use SessionSingletonBase for session scope
o   Use a façade
o   Move instance creation to fragments




                      © 2010 by International Business Machines; made available under the EPL v1.0
© 2010 by International Business Machines; made available under the EPL v1.0
Good, Bad and Ugly
o   Good
    –   Easy to port legacy RCP Applications to web
o   Bad
    –   Internationalization and localization is tricky
o   Ugly
    –   Need a bunch of Ant scripts, resource templates and
        few jars to build a .war



                           © 2010 by International Business Machines; made available under the EPL v1.0
© 2010 by International Business Machines; made available under the EPL v1.0
© 2010 by International Business Machines; made available under the EPL v1.0
Sources
o   http://www.eclipse.org/rap/introduction.php
o   http://www.eclipse-banking.org/pdf/slides/Krause.pdf
o   http://eclipsesource.com/en/info/rcp-rap-single-sourcing-
    guideline




                          © 2010 by International Business Machines; made available under the EPL v1.0
Image Credits
o   http://www.flickr.com/photos/stringgle/298571748/




                         © 2010 by International Business Machines; made available under the EPL v1.0

Weitere ähnliche Inhalte

Andere mochten auch

Cis485 Shop Sense Case Study
Cis485 Shop Sense Case StudyCis485 Shop Sense Case Study
Cis485 Shop Sense Case Study
guest598cb3a
 
Cis485 My Space Study
Cis485 My Space StudyCis485 My Space Study
Cis485 My Space Study
guest598cb3a
 

Andere mochten auch (9)

Cis485 Shop Sense Case Study
Cis485 Shop Sense Case StudyCis485 Shop Sense Case Study
Cis485 Shop Sense Case Study
 
Jesus Rally 2009
Jesus Rally 2009Jesus Rally 2009
Jesus Rally 2009
 
Condivisio "social business community 2.0"
Condivisio "social business community 2.0"Condivisio "social business community 2.0"
Condivisio "social business community 2.0"
 
Società Sportiva
Società SportivaSocietà Sportiva
Società Sportiva
 
Social Media Marketing
Social Media MarketingSocial Media Marketing
Social Media Marketing
 
Introduction to Turning Point Stables
Introduction to Turning Point StablesIntroduction to Turning Point Stables
Introduction to Turning Point Stables
 
北部灣德城新世界介紹
北部灣德城新世界介紹北部灣德城新世界介紹
北部灣德城新世界介紹
 
Cis485 My Space Study
Cis485 My Space StudyCis485 My Space Study
Cis485 My Space Study
 
Eclipse IOT stack over Intel Edison
Eclipse IOT stack over Intel EdisonEclipse IOT stack over Intel Edison
Eclipse IOT stack over Intel Edison
 

Ähnlich wie Single sourcing using Rich Ajax Platform

OGDC 2014_Cross platform mobile game application development_Mr. Makku J.Kero
OGDC 2014_Cross platform mobile game application development_Mr. Makku J.KeroOGDC 2014_Cross platform mobile game application development_Mr. Makku J.Kero
OGDC 2014_Cross platform mobile game application development_Mr. Makku J.Kero
ogdc
 
OGDC 2014: Cross Platform Mobile Game Application Development
OGDC 2014: Cross Platform Mobile Game Application DevelopmentOGDC 2014: Cross Platform Mobile Game Application Development
OGDC 2014: Cross Platform Mobile Game Application Development
GameLandVN
 
How does the WSO2 App Factory Contribute to the Quick Deleivery of a Solution
How does the WSO2 App Factory Contribute to the Quick Deleivery of a SolutionHow does the WSO2 App Factory Contribute to the Quick Deleivery of a Solution
How does the WSO2 App Factory Contribute to the Quick Deleivery of a Solution
WSO2
 
Who Took The Cookie From The Cookie Jar?
Who Took The Cookie From The Cookie Jar?Who Took The Cookie From The Cookie Jar?
Who Took The Cookie From The Cookie Jar?
Olivier Thomann
 

Ähnlich wie Single sourcing using Rich Ajax Platform (20)

Rich Ajax Platform - Programming for Web and Rich Client
Rich Ajax Platform - Programming for Web and Rich ClientRich Ajax Platform - Programming for Web and Rich Client
Rich Ajax Platform - Programming for Web and Rich Client
 
Riena on-rap-ese2010
Riena on-rap-ese2010Riena on-rap-ese2010
Riena on-rap-ese2010
 
OGDC 2014_Cross platform mobile game application development_Mr. Makku J.Kero
OGDC 2014_Cross platform mobile game application development_Mr. Makku J.KeroOGDC 2014_Cross platform mobile game application development_Mr. Makku J.Kero
OGDC 2014_Cross platform mobile game application development_Mr. Makku J.Kero
 
OGDC 2014: Cross Platform Mobile Game Application Development
OGDC 2014: Cross Platform Mobile Game Application DevelopmentOGDC 2014: Cross Platform Mobile Game Application Development
OGDC 2014: Cross Platform Mobile Game Application Development
 
Overview of webSpoon @ Pentaho Community Meeting 2016 (PCM16)
Overview of webSpoon @ Pentaho Community Meeting 2016 (PCM16)Overview of webSpoon @ Pentaho Community Meeting 2016 (PCM16)
Overview of webSpoon @ Pentaho Community Meeting 2016 (PCM16)
 
An introduction to Apache Cordova
An introduction to Apache CordovaAn introduction to Apache Cordova
An introduction to Apache Cordova
 
"React Native" by Vanessa Leo e Roberto Brogi
"React Native" by Vanessa Leo e Roberto Brogi "React Native" by Vanessa Leo e Roberto Brogi
"React Native" by Vanessa Leo e Roberto Brogi
 
Comparison of Programming Platforms
Comparison of Programming PlatformsComparison of Programming Platforms
Comparison of Programming Platforms
 
RefCard API Architecture Strategy
RefCard API Architecture StrategyRefCard API Architecture Strategy
RefCard API Architecture Strategy
 
【Primer】WebApp release in 3 hours! Programming from scratch Rails course
【Primer】WebApp release in 3 hours! Programming from scratch Rails course【Primer】WebApp release in 3 hours! Programming from scratch Rails course
【Primer】WebApp release in 3 hours! Programming from scratch Rails course
 
Eclipse - Single Source;Three Runtimes
Eclipse - Single Source;Three RuntimesEclipse - Single Source;Three Runtimes
Eclipse - Single Source;Three Runtimes
 
Introduction to ASP.NET Core
Introduction to ASP.NET CoreIntroduction to ASP.NET Core
Introduction to ASP.NET Core
 
SAP NetWeaver Gateway - Gateway Service Consumption
SAP NetWeaver Gateway - Gateway Service Consumption SAP NetWeaver Gateway - Gateway Service Consumption
SAP NetWeaver Gateway - Gateway Service Consumption
 
Create Web 20 Style Rich Clients With Eclipse
Create Web 20 Style Rich Clients With EclipseCreate Web 20 Style Rich Clients With Eclipse
Create Web 20 Style Rich Clients With Eclipse
 
Business management application
Business management applicationBusiness management application
Business management application
 
Eclipse RCP
Eclipse RCPEclipse RCP
Eclipse RCP
 
How does the WSO2 App Factory Contribute to the Quick Deleivery of a Solution
How does the WSO2 App Factory Contribute to the Quick Deleivery of a SolutionHow does the WSO2 App Factory Contribute to the Quick Deleivery of a Solution
How does the WSO2 App Factory Contribute to the Quick Deleivery of a Solution
 
Developing cross platforms mobile applications using the Apache Cordova
Developing cross platforms mobile applications using the Apache CordovaDeveloping cross platforms mobile applications using the Apache Cordova
Developing cross platforms mobile applications using the Apache Cordova
 
SAP Kapsel Plugins For Cordova
SAP Kapsel Plugins For CordovaSAP Kapsel Plugins For Cordova
SAP Kapsel Plugins For Cordova
 
Who Took The Cookie From The Cookie Jar?
Who Took The Cookie From The Cookie Jar?Who Took The Cookie From The Cookie Jar?
Who Took The Cookie From The Cookie Jar?
 

Kürzlich hochgeladen

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Kürzlich hochgeladen (20)

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 

Single sourcing using Rich Ajax Platform

  • 1. Single Sourcing using Rich Ajax Platform Ankur Sharma PDE UI Contributor ankur_sharma@in.ibm.com © 2009 by International Business Machines; made available under the EPL v1.0
  • 2. Agenda o Rich Ajax Platform o How it works? o Single Sourcing o How to develop for RAP? o The Good, The Bad and The Ugly © 2010 by International Business Machines; made available under the EPL v1.0
  • 3. RCP RAP Plug-ins http://www.flickr.com/photos/stringgle/298571748/ © 2010 by International Business Machines; made available under the EPL v1.0
  • 4. Rich Ajax Platform o brings RCP applications to browser o is not a web-application development toolkit o exposes sub-set of RCP API o enables re-use © 2010 by International Business Machines; made available under the EPL v1.0
  • 5. How RAP works? © 2010 by International Business Machines; made available under the EPL v1.0
  • 6. How RAP works? o RWT impersonates SWT o uses qooxdoo Javascript library for rendering UI in browser o runs in a OSGi runtime (Equinox) with servlet bridge © 2010 by International Business Machines; made available under the EPL v1.0
  • 7. Single Sourcing o write once run everywhere o develop desktop and web client simultaneously from same code base o maximize code and skill reuse o can manage with few Javascript and web- development skills and resources © 2010 by International Business Machines; made available under the EPL v1.0
  • 8. How to develop for RAP? o Things you need to be careful about – Target Platforms – Dependencies – Platform specific APIs – Validation – Resources – Threads – Jobs ... © 2010 by International Business Machines; made available under the EPL v1.0
  • 9. RAP Target Platform o RAP can not co-exists with RCP o has separate run-time thus needs different TP o better use different workspaces o develop principally for RAP TP © 2010 by International Business Machines; made available under the EPL v1.0
  • 10. Approach o Dependencies – Favor Require-Bundle. Better tooling support. – Import-Packages suffer split package problems o Missing API – Build fragments – Use compatibility plug-in © 2010 by International Business Machines; made available under the EPL v1.0
  • 11. RCP vs RAP RCP App. RAP App. © 2010 by International Business Machines; made available under the EPL v1.0
  • 12. Session o Singletons are application scope o Use SessionSingletonBase for session scope o Use a façade o Move instance creation to fragments © 2010 by International Business Machines; made available under the EPL v1.0
  • 13. © 2010 by International Business Machines; made available under the EPL v1.0
  • 14. Good, Bad and Ugly o Good – Easy to port legacy RCP Applications to web o Bad – Internationalization and localization is tricky o Ugly – Need a bunch of Ant scripts, resource templates and few jars to build a .war © 2010 by International Business Machines; made available under the EPL v1.0
  • 15. © 2010 by International Business Machines; made available under the EPL v1.0
  • 16. © 2010 by International Business Machines; made available under the EPL v1.0
  • 17. Sources o http://www.eclipse.org/rap/introduction.php o http://www.eclipse-banking.org/pdf/slides/Krause.pdf o http://eclipsesource.com/en/info/rcp-rap-single-sourcing- guideline © 2010 by International Business Machines; made available under the EPL v1.0
  • 18. Image Credits o http://www.flickr.com/photos/stringgle/298571748/ © 2010 by International Business Machines; made available under the EPL v1.0