SlideShare ist ein Scribd-Unternehmen logo
1 von 28
Downloaden Sie, um offline zu lesen
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Introduction to real-time collaboration with LiveCycle
Michaël CHAIZE - Flash Platform Evangelist
©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Feel free to contact me
2
Michaël Chaize
Flash Platform Evangelist
My blog: www.RIAgora.com
@mchaize
©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
RIA and technical challenges
• Better response time
• Light bandwidth
• Less load on the server side
• Less tests on the client side
Web 1.0 application Rich Internet Application
<page>
<page>
<page>
<page>
<page>
<page>
<page>
<application>
<data>
SERVER SERVER
CLIENT CLIENT
&
AdobeEvent.java
JAVA VALUE OBJECT
int idEvent
int idUser
String evtName
String evtCity
String evtCountry
int evtAudience
int evtDate
EventService.java
JAVA SERVICE CLASS
List getEvents()
AdobeEvent getEvent(idEvent)
AdobeEvent getEventbyIDUser(idUser)
List getActivityByuser()
boolean update(event)
boolean remove(event)
boolean deleteEvent(event)
AdobeActivityEvent.java
JAVA VALUE OBJECT
int idUser
String userName
int nbEvents
TABLES
DATABASE
adobeusers
adobevents
listEvents.jsp
JAVA SERVER PAGE
<activity>
<adobeEvent>
</adobeEvent>
<adobeEvent>
</adobeEvent>
</activity>
ADOBE FLEX 4
Remoting AMF
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
LiveCycle Data Services ES
LiveCycle Data Services is a set of Java EE
components and APIs used to:
Create data-intensive RIAs with less code, less risk, and
accelerated time to market due to an innovative client-
server programming model
Integrate RIAs with existing applications, back-end data,
and JEE infrastructure
Easily integrate RIAs with LiveCycle document and
process services
Enable collaboration, offline AIR and real-time data
streaming applications to be built in a scalable and
reliable manner with robust publish and subscribe
messaging
Generate PDF documents from RIAs that include
graphical assets
LiveCycle Data Services ES
Data Management
RPC Services
Messaging
Service
Adapters
Data Synchronization
Off-line Applications
Data Paging
Web Service
HTTP Service
Remote Object Service
Publish & Subscribe
Collaboration
Real Time Data Push
Proxy Service
Web-tier Compiler
Portal Deployment
RIA-PDF Generation
LiveCycle
ColdFusion
Hibernate
SQL
JMS
Java
Custom…
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Blaze DS
BlazeDS is a set of Java EE components
and APIs, and a subset of LiveCycle Data
Services:
- Free and open source.
- High performance data transfer for more responsive
applications using AMF
- Real-time server push over standard HTTP
- Full pub/sub messaging that extends existing
messaging infrastructure
LiveCycle Data Services ES
Data Management
RPC Services
Messaging
Service
Adapters
Data Synchronization
Off-line Applications
Data Paging
Web Service
HTTP Service
Remote Object Service
Publish & Subscribe
Collaboration
Real Time Data Push
Proxy Service
Web-tier Compiler
Portal Deployment
RIA-PDF Generation
LiveCycle
ColdFusion
Hibernate
SQL
JMS
Java
Custom…
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
LCDS.war
! Structure of the WAR file:
! +WEB-INF/classes To place your Java classes
! +WEB-INF/lib Hosts the JAVA libraries of LCDS
! +WEB-INF/flex Hosts the XML configuration files
! Remoting-config.xml Destinations to Java classes for remoting
! Messaging-config.xml Destinations for messaging
! Data-Management-config.xml Destinations to Java assemblers
! Proxy-config.xml Destinations to HTTP services
! Services-config.xml Channels configurations
A file named « LCDS.war » is provided to start your Flex/Java projects.
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Java and ActionScript value objects
Java VO ActionScript VO
2008 Adobe Systems Incorporated. All Rights Reserved.
Flex/Java classic architecture
UI LAYER
SERVER
PRESENTATION
/SERVICES/DAO
LAYER
DATABASE/
STORAGE LAYER
LiveCycle Data Services
Java servlet container (tomcat, WAS…)
JDBC
Web browser
JAVA classes/services
Webapp (WAR)
RPC services Messaging Data Mgt
WSDL
AMF over HTTPs
JAVA <-> AMF
EventService.java public getEvents()
ADOBE FLEX 4
Messaging
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Channels
Flex client
Servlet-based endpoints
AMF Endpoint
HTTPEndpoint
StreamingAMFEndpoint
NIO-based endpoints
NIOAMFEndpoint
NIOHTTPEndpoint
RTMPEndpoint
MessageBrokerServlet
Socket Server (LCDS only)
Message
Broker
Remoting
HTTPProxy
Message
Data Management
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Publish/Subscribe Messaging
Message
Service
LiveCycle DS / Blaze DS
Endpoint
Publisher
Subscriber
!RTMP
!AMF
!HTTP
!Client A
!Client B
!Client C
Quick Chat
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Data Push - Messaging
Message
Services
LiveCycle DS / Blaze DS
Adapter Y
Adapter X
Messaging
System Y
Messaging
System X
Endpoint
JMS
Provider
JMS Adapter
Publisher
Subscriber
!RTMP
!AMF
!HTTP
Real-Time
Sales
ADOBE FLEX 4
Data Management
Services
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Data Management Services
LiveCycle Data Services
Data
Service
DAO
Object
Adapter
Hibernate
Adapter
JDBC
Adapter
Hibernate
RDBMS
CFC
Adapter ColdFusion
Endpoint
Client A
Client B
Client C
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Data Management Benefits
1. Automatic Client to Middle-Tier Synchronization
! Change Tracking
! Automatic invocation of remote services
2. Highlander Principle: there is only one instance of a given entity in
memory at any given time
3. Conflict resolution
4. Offline Synchronization (thanks to Adobe AIR)
5. Lazy loading
6. Paging
7. Cross-client synchronization
Data
Management
LiveCycle Collaboration
Service
2010 Adobe Systems Incorporated. All Rights Reserved. 23
LCCS SDK Offers Both High-Level Components and Foundation
Classes
High-level
Components
Foundation Classes
Pods
RTC UI Components
Shared Managers Shared Model
Session
(Connection, Authentication, Reconnect/Failover, RMI Routing)
Audio Pub / SubWebcam Pub / Sub File Pub / Sub Shared Cursors
Users AV Streams
Files Room
Pub / Sub Messaging + Permissions
Shared Collection Baton
Shared Property UserQueue
Roster WhiteBoard Chat FileShare Note WebCam
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Server Integration
! Create and Delete Rooms
! Manage your Users’ Authentication
! Publish and Subscribe to Messages
! Variety of different Languages (some donated by our
users, tx!):
Java PHP ColdFusion
Ruby C#Python Groovy
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Applications Templates and Provisioning
! Only OWNERs can add new nodes, meaning new collaborative capabilities to a
room.
! We want to be able to spawn rooms on the fly (from our servers).
! But we don’t want our users to come in as OWNERs to set up the collaborative
capabilities! That’s too much power!
! What we want is to set it up so that new rooms come with the collaborative
capabilities we want, pre-installed.
! That’s why we have application templates!
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
External Authentication
Your Server
Your
Client
LiveCycle Collaboration
Service
Token
Token
Login / Session
Token Fetch
BlazeDS
LiveCycle Data Services
TrialVersion > lcds-samples
LiveCycle Collaboration Service
.com > LCCS SDK > Samples
©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Feel free to contact me
28
Michaël Chaize
Flash Platform Evangelist
My blog: www.RIAgora.com
@mchaize

Weitere ähnliche Inhalte

Was ist angesagt?

Dynacache in WebSphere Portal Server
Dynacache in WebSphere Portal ServerDynacache in WebSphere Portal Server
Dynacache in WebSphere Portal ServerRohit Kelapure
 
Using windows azure to develop secure and deploy cloud applications Santiago ...
Using windows azure to develop secure and deploy cloud applications Santiago ...Using windows azure to develop secure and deploy cloud applications Santiago ...
Using windows azure to develop secure and deploy cloud applications Santiago ...Juan Pablo
 
Restful communication with Flex
Restful communication with FlexRestful communication with Flex
Restful communication with FlexChristian Junk
 
De 03 Introduction To V Cloud Api V1
De 03 Introduction To V Cloud Api V1De 03 Introduction To V Cloud Api V1
De 03 Introduction To V Cloud Api V1ikewu83
 
Optimizing HTML5 Sites with CQ5/WEM
Optimizing HTML5 Sites with CQ5/WEMOptimizing HTML5 Sites with CQ5/WEM
Optimizing HTML5 Sites with CQ5/WEMGabriel Walt
 
WebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise DemandsWebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise DemandsIan Robinson
 
WebService-Java
WebService-JavaWebService-Java
WebService-Javahalwal
 
Silverlight Document Search Engine
Silverlight Document Search EngineSilverlight Document Search Engine
Silverlight Document Search EngineMustata Bogdan
 
Liberty dynacache ffw_iea_ste
Liberty dynacache ffw_iea_steLiberty dynacache ffw_iea_ste
Liberty dynacache ffw_iea_steRohit Kelapure
 
Windows Azure Queues and Windows Azure Service Bus Queues
Windows Azure Queues and Windows Azure Service Bus QueuesWindows Azure Queues and Windows Azure Service Bus Queues
Windows Azure Queues and Windows Azure Service Bus QueuesJuan Pablo
 
Taking the Application Server to Web Scale with Netflix Open Source Software
Taking the Application Server to Web Scale with Netflix Open Source SoftwareTaking the Application Server to Web Scale with Netflix Open Source Software
Taking the Application Server to Web Scale with Netflix Open Source SoftwareDavid Currie
 
Alfresco from an agile framework perspective
Alfresco from an agile framework perspectiveAlfresco from an agile framework perspective
Alfresco from an agile framework perspectiveJeff Potts
 
FileAct in Access
FileAct in AccessFileAct in Access
FileAct in AccessSWIFT
 
Decomposing applications for deployability and scalability #springone2gx #s12gx
Decomposing applications for deployability and scalability #springone2gx #s12gxDecomposing applications for deployability and scalability #springone2gx #s12gx
Decomposing applications for deployability and scalability #springone2gx #s12gxChris Richardson
 
VMUGIT UC 2013 - 05a VMware vFabric
VMUGIT UC 2013 - 05a VMware vFabricVMUGIT UC 2013 - 05a VMware vFabric
VMUGIT UC 2013 - 05a VMware vFabricVMUG IT
 

Was ist angesagt? (20)

Dynacache in WebSphere Portal Server
Dynacache in WebSphere Portal ServerDynacache in WebSphere Portal Server
Dynacache in WebSphere Portal Server
 
Overview of web services
Overview of web servicesOverview of web services
Overview of web services
 
Using windows azure to develop secure and deploy cloud applications Santiago ...
Using windows azure to develop secure and deploy cloud applications Santiago ...Using windows azure to develop secure and deploy cloud applications Santiago ...
Using windows azure to develop secure and deploy cloud applications Santiago ...
 
Restful communication with Flex
Restful communication with FlexRestful communication with Flex
Restful communication with Flex
 
De 03 Introduction To V Cloud Api V1
De 03 Introduction To V Cloud Api V1De 03 Introduction To V Cloud Api V1
De 03 Introduction To V Cloud Api V1
 
Optimizing HTML5 Sites with CQ5/WEM
Optimizing HTML5 Sites with CQ5/WEMOptimizing HTML5 Sites with CQ5/WEM
Optimizing HTML5 Sites with CQ5/WEM
 
WebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise DemandsWebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise Demands
 
WebService-Java
WebService-JavaWebService-Java
WebService-Java
 
Silverlight Document Search Engine
Silverlight Document Search EngineSilverlight Document Search Engine
Silverlight Document Search Engine
 
Liberty dynacache ffw_iea_ste
Liberty dynacache ffw_iea_steLiberty dynacache ffw_iea_ste
Liberty dynacache ffw_iea_ste
 
Drive dam
Drive damDrive dam
Drive dam
 
Windows Azure Queues and Windows Azure Service Bus Queues
Windows Azure Queues and Windows Azure Service Bus QueuesWindows Azure Queues and Windows Azure Service Bus Queues
Windows Azure Queues and Windows Azure Service Bus Queues
 
Taking the Application Server to Web Scale with Netflix Open Source Software
Taking the Application Server to Web Scale with Netflix Open Source SoftwareTaking the Application Server to Web Scale with Netflix Open Source Software
Taking the Application Server to Web Scale with Netflix Open Source Software
 
Alfresco from an agile framework perspective
Alfresco from an agile framework perspectiveAlfresco from an agile framework perspective
Alfresco from an agile framework perspective
 
Alfresco Architecture
Alfresco ArchitectureAlfresco Architecture
Alfresco Architecture
 
FileAct in Access
FileAct in AccessFileAct in Access
FileAct in Access
 
Decomposing applications for deployability and scalability #springone2gx #s12gx
Decomposing applications for deployability and scalability #springone2gx #s12gxDecomposing applications for deployability and scalability #springone2gx #s12gx
Decomposing applications for deployability and scalability #springone2gx #s12gx
 
JavaCro'14 - Vaadin web application integration for Enterprise systems – Pete...
JavaCro'14 - Vaadin web application integration for Enterprise systems – Pete...JavaCro'14 - Vaadin web application integration for Enterprise systems – Pete...
JavaCro'14 - Vaadin web application integration for Enterprise systems – Pete...
 
VMUGIT UC 2013 - 05a VMware vFabric
VMUGIT UC 2013 - 05a VMware vFabricVMUGIT UC 2013 - 05a VMware vFabric
VMUGIT UC 2013 - 05a VMware vFabric
 
Rahul Resume.doc
Rahul Resume.docRahul Resume.doc
Rahul Resume.doc
 

Andere mochten auch

Andere mochten auch (17)

Resized Presentation 2
Resized Presentation 2Resized Presentation 2
Resized Presentation 2
 
Os
OsOs
Os
 
Challenging employeesmodernsamplefinal
Challenging employeesmodernsamplefinalChallenging employeesmodernsamplefinal
Challenging employeesmodernsamplefinal
 
Boyarsky
BoyarskyBoyarsky
Boyarsky
 
Morrer Pela Pele
Morrer Pela PeleMorrer Pela Pele
Morrer Pela Pele
 
Executive Order: Modified Standarization Law 201
Executive Order: Modified Standarization Law 201Executive Order: Modified Standarization Law 201
Executive Order: Modified Standarization Law 201
 
Aom3
Aom3Aom3
Aom3
 
Spring 3 - Der dritte Frühling
Spring 3 - Der dritte FrühlingSpring 3 - Der dritte Frühling
Spring 3 - Der dritte Frühling
 
我行·你行·大家行02
我行·你行·大家行02我行·你行·大家行02
我行·你行·大家行02
 
Ch02
Ch02Ch02
Ch02
 
Adobe LiveCycle Data Services
Adobe LiveCycle Data ServicesAdobe LiveCycle Data Services
Adobe LiveCycle Data Services
 
Flex presentation for Paris Android User group PAUG
Flex presentation for Paris Android User group PAUGFlex presentation for Paris Android User group PAUG
Flex presentation for Paris Android User group PAUG
 
DaWaK'07
DaWaK'07DaWaK'07
DaWaK'07
 
Larsine
LarsineLarsine
Larsine
 
Lidia Pivovarova
Lidia PivovarovaLidia Pivovarova
Lidia Pivovarova
 
Twitter User Hype Cycle
Twitter User Hype CycleTwitter User Hype Cycle
Twitter User Hype Cycle
 
Saxion 7 januari 2008
Saxion 7 januari 2008Saxion 7 januari 2008
Saxion 7 januari 2008
 

Ähnlich wie FATC UK - Real time collaborative Flex apps

Realizing Great Customer Experiences with Adobe® LiveCycle® ES3
Realizing Great Customer Experiences with Adobe® LiveCycle® ES3Realizing Great Customer Experiences with Adobe® LiveCycle® ES3
Realizing Great Customer Experiences with Adobe® LiveCycle® ES3Craig Randall
 
A Microsoft primer for PHP devs
A Microsoft primer for PHP devsA Microsoft primer for PHP devs
A Microsoft primer for PHP devsguest0a62e8
 
Vijay Oscon
Vijay OsconVijay Oscon
Vijay Osconvijayrvr
 
Silverlight Briefing Deck
Silverlight  Briefing  DeckSilverlight  Briefing  Deck
Silverlight Briefing Deckllangit
 
Developing RIAs... 10 reasons to use Adobe Flex
Developing RIAs... 10 reasons to use Adobe FlexDeveloping RIAs... 10 reasons to use Adobe Flex
Developing RIAs... 10 reasons to use Adobe FlexMatthias Zeller
 
Vijay Mix Presentation
Vijay Mix PresentationVijay Mix Presentation
Vijay Mix Presentationvijayrvr
 
Flex And Java Integration
Flex And Java IntegrationFlex And Java Integration
Flex And Java Integrationrssharma
 
Flex And Java Integration
Flex And Java IntegrationFlex And Java Integration
Flex And Java Integrationravinxg
 
Flex Remoting With WebORB v1.0
Flex Remoting With WebORB v1.0Flex Remoting With WebORB v1.0
Flex Remoting With WebORB v1.0guest642dd3
 
Windows Server 2008 R2 Dev Session 03
Windows Server 2008 R2 Dev Session 03Windows Server 2008 R2 Dev Session 03
Windows Server 2008 R2 Dev Session 03Clint Edmonson
 
Web Center Services and Framework
Web Center Services and  FrameworkWeb Center Services and  Framework
Web Center Services and FrameworkJaime Cid
 
Teched India Vijay Interop Track
Teched India Vijay Interop TrackTeched India Vijay Interop Track
Teched India Vijay Interop Trackvijayrvr
 
Build Apps Using Dynamic Languages
Build Apps Using Dynamic LanguagesBuild Apps Using Dynamic Languages
Build Apps Using Dynamic LanguagesWes Yanaga
 
Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015Bluegrass Digital
 
Flex Air Intro
Flex Air IntroFlex Air Intro
Flex Air IntroJUG Genova
 

Ähnlich wie FATC UK - Real time collaborative Flex apps (20)

Realizing Great Customer Experiences with Adobe® LiveCycle® ES3
Realizing Great Customer Experiences with Adobe® LiveCycle® ES3Realizing Great Customer Experiences with Adobe® LiveCycle® ES3
Realizing Great Customer Experiences with Adobe® LiveCycle® ES3
 
What is Adobe Flex ?
What is Adobe Flex  ?What is Adobe Flex  ?
What is Adobe Flex ?
 
Adobe® Flex™
Adobe® Flex™Adobe® Flex™
Adobe® Flex™
 
A Microsoft primer for PHP devs
A Microsoft primer for PHP devsA Microsoft primer for PHP devs
A Microsoft primer for PHP devs
 
air
airair
air
 
Vijay Oscon
Vijay OsconVijay Oscon
Vijay Oscon
 
Silverlight Briefing Deck
Silverlight  Briefing  DeckSilverlight  Briefing  Deck
Silverlight Briefing Deck
 
Developing RIAs... 10 reasons to use Adobe Flex
Developing RIAs... 10 reasons to use Adobe FlexDeveloping RIAs... 10 reasons to use Adobe Flex
Developing RIAs... 10 reasons to use Adobe Flex
 
Vijay Mix Presentation
Vijay Mix PresentationVijay Mix Presentation
Vijay Mix Presentation
 
Flex And Java Integration
Flex And Java IntegrationFlex And Java Integration
Flex And Java Integration
 
Flex And Java Integration
Flex And Java IntegrationFlex And Java Integration
Flex And Java Integration
 
Flex Remoting With WebORB v1.0
Flex Remoting With WebORB v1.0Flex Remoting With WebORB v1.0
Flex Remoting With WebORB v1.0
 
Windows Server 2008 R2 Dev Session 03
Windows Server 2008 R2 Dev Session 03Windows Server 2008 R2 Dev Session 03
Windows Server 2008 R2 Dev Session 03
 
Web Center Services and Framework
Web Center Services and  FrameworkWeb Center Services and  Framework
Web Center Services and Framework
 
Teched India Vijay Interop Track
Teched India Vijay Interop TrackTeched India Vijay Interop Track
Teched India Vijay Interop Track
 
Build Apps Using Dynamic Languages
Build Apps Using Dynamic LanguagesBuild Apps Using Dynamic Languages
Build Apps Using Dynamic Languages
 
Blaze Ds Slides
Blaze Ds SlidesBlaze Ds Slides
Blaze Ds Slides
 
Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015
 
Flex Air Intro
Flex Air IntroFlex Air Intro
Flex Air Intro
 
Adobe Flex
Adobe FlexAdobe Flex
Adobe Flex
 

Mehr von Michael Chaize

Typography on the Web - FITC Amsterdam 2015
Typography on the Web - FITC Amsterdam 2015Typography on the Web - FITC Amsterdam 2015
Typography on the Web - FITC Amsterdam 2015Michael Chaize
 
FITC Amsterdam 2015 - keynote-adobe - We are mutants
FITC Amsterdam 2015 -  keynote-adobe - We are mutantsFITC Amsterdam 2015 -  keynote-adobe - We are mutants
FITC Amsterdam 2015 - keynote-adobe - We are mutantsMichael Chaize
 
Multimania - Web Design Trends
Multimania - Web Design TrendsMultimania - Web Design Trends
Multimania - Web Design TrendsMichael Chaize
 
Feweb - Adobe et le Web Design
Feweb - Adobe et le Web DesignFeweb - Adobe et le Web Design
Feweb - Adobe et le Web DesignMichael Chaize
 
FITC 2014 Amsterdam - Adobe Apps for Web Designers in 2014
FITC 2014 Amsterdam - Adobe Apps for Web Designers in 2014FITC 2014 Amsterdam - Adobe Apps for Web Designers in 2014
FITC 2014 Amsterdam - Adobe Apps for Web Designers in 2014Michael Chaize
 
Adobe gaming flash gamm michael
Adobe gaming flash gamm michaelAdobe gaming flash gamm michael
Adobe gaming flash gamm michaelMichael Chaize
 
Max2013 rejected apps presentation
Max2013   rejected apps presentationMax2013   rejected apps presentation
Max2013 rejected apps presentationMichael Chaize
 
Oop2012 mobile workshops
Oop2012 mobile workshopsOop2012 mobile workshops
Oop2012 mobile workshopsMichael Chaize
 
Oop2012 keynote Design Driven Development
Oop2012 keynote Design Driven DevelopmentOop2012 keynote Design Driven Development
Oop2012 keynote Design Driven DevelopmentMichael Chaize
 
Xplatform mobile development
Xplatform mobile developmentXplatform mobile development
Xplatform mobile developmentMichael Chaize
 
One backend multiple Screens
One backend multiple ScreensOne backend multiple Screens
One backend multiple ScreensMichael Chaize
 
Flash camp portugal - Let's talk about Flex baby
Flash camp portugal - Let's talk about Flex babyFlash camp portugal - Let's talk about Flex baby
Flash camp portugal - Let's talk about Flex babyMichael Chaize
 
Back From MAX in London for CQ5 users
Back From MAX in London for CQ5 usersBack From MAX in London for CQ5 users
Back From MAX in London for CQ5 usersMichael Chaize
 
Enterprise Flex applications on tablet devices
Enterprise Flex applications on tablet devicesEnterprise Flex applications on tablet devices
Enterprise Flex applications on tablet devicesMichael Chaize
 
Pocket agile challenge adobe mobile v1.0.pptx
Pocket agile   challenge adobe mobile v1.0.pptxPocket agile   challenge adobe mobile v1.0.pptx
Pocket agile challenge adobe mobile v1.0.pptxMichael Chaize
 
Adobe et la stratégie multi-écrans
Adobe et la stratégie multi-écransAdobe et la stratégie multi-écrans
Adobe et la stratégie multi-écransMichael Chaize
 
Breizh camp adobe flex et les mobiles
Breizh camp   adobe flex et les mobilesBreizh camp   adobe flex et les mobiles
Breizh camp adobe flex et les mobilesMichael Chaize
 
Flex 4.5 and mobile development
Flex 4.5 and mobile developmentFlex 4.5 and mobile development
Flex 4.5 and mobile developmentMichael Chaize
 

Mehr von Michael Chaize (20)

Typography on the Web - FITC Amsterdam 2015
Typography on the Web - FITC Amsterdam 2015Typography on the Web - FITC Amsterdam 2015
Typography on the Web - FITC Amsterdam 2015
 
FITC Amsterdam 2015 - keynote-adobe - We are mutants
FITC Amsterdam 2015 -  keynote-adobe - We are mutantsFITC Amsterdam 2015 -  keynote-adobe - We are mutants
FITC Amsterdam 2015 - keynote-adobe - We are mutants
 
Multimania - Web Design Trends
Multimania - Web Design TrendsMultimania - Web Design Trends
Multimania - Web Design Trends
 
Feweb - Adobe et le Web Design
Feweb - Adobe et le Web DesignFeweb - Adobe et le Web Design
Feweb - Adobe et le Web Design
 
FITC 2014 Amsterdam - Adobe Apps for Web Designers in 2014
FITC 2014 Amsterdam - Adobe Apps for Web Designers in 2014FITC 2014 Amsterdam - Adobe Apps for Web Designers in 2014
FITC 2014 Amsterdam - Adobe Apps for Web Designers in 2014
 
Adobe gaming flash gamm michael
Adobe gaming flash gamm michaelAdobe gaming flash gamm michael
Adobe gaming flash gamm michael
 
Max2013 rejected apps presentation
Max2013   rejected apps presentationMax2013   rejected apps presentation
Max2013 rejected apps presentation
 
Oop2012 mobile workshops
Oop2012 mobile workshopsOop2012 mobile workshops
Oop2012 mobile workshops
 
Oop2012 keynote Design Driven Development
Oop2012 keynote Design Driven DevelopmentOop2012 keynote Design Driven Development
Oop2012 keynote Design Driven Development
 
Montpellier - Flex UG
Montpellier - Flex UGMontpellier - Flex UG
Montpellier - Flex UG
 
Xplatform mobile development
Xplatform mobile developmentXplatform mobile development
Xplatform mobile development
 
One backend multiple Screens
One backend multiple ScreensOne backend multiple Screens
One backend multiple Screens
 
Flash camp portugal - Let's talk about Flex baby
Flash camp portugal - Let's talk about Flex babyFlash camp portugal - Let's talk about Flex baby
Flash camp portugal - Let's talk about Flex baby
 
Back From MAX in London for CQ5 users
Back From MAX in London for CQ5 usersBack From MAX in London for CQ5 users
Back From MAX in London for CQ5 users
 
Flex mobile for JUG
Flex mobile for JUGFlex mobile for JUG
Flex mobile for JUG
 
Enterprise Flex applications on tablet devices
Enterprise Flex applications on tablet devicesEnterprise Flex applications on tablet devices
Enterprise Flex applications on tablet devices
 
Pocket agile challenge adobe mobile v1.0.pptx
Pocket agile   challenge adobe mobile v1.0.pptxPocket agile   challenge adobe mobile v1.0.pptx
Pocket agile challenge adobe mobile v1.0.pptx
 
Adobe et la stratégie multi-écrans
Adobe et la stratégie multi-écransAdobe et la stratégie multi-écrans
Adobe et la stratégie multi-écrans
 
Breizh camp adobe flex et les mobiles
Breizh camp   adobe flex et les mobilesBreizh camp   adobe flex et les mobiles
Breizh camp adobe flex et les mobiles
 
Flex 4.5 and mobile development
Flex 4.5 and mobile developmentFlex 4.5 and mobile development
Flex 4.5 and mobile development
 

Kürzlich hochgeladen

Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsSafe Software
 
Cybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxCybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxGDSC PJATK
 
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfJamie (Taka) Wang
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationIES VE
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioChristian Posta
 
Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Brian Pichman
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdfPedro Manuel
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding TeamAdam Moalla
 
UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8DianaGray10
 
100+ ChatGPT Prompts for SEO Optimization
100+ ChatGPT Prompts for SEO Optimization100+ ChatGPT Prompts for SEO Optimization
100+ ChatGPT Prompts for SEO Optimizationarrow10202532yuvraj
 
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...Aggregage
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxMatsuo Lab
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPathCommunity
 
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintMahmoud Rabie
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostMatt Ray
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1DianaGray10
 
UiPath Studio Web workshop series - Day 5
UiPath Studio Web workshop series - Day 5UiPath Studio Web workshop series - Day 5
UiPath Studio Web workshop series - Day 5DianaGray10
 
99.99% of Your Traces Are (Probably) Trash (SRECon NA 2024).pdf
99.99% of Your Traces  Are (Probably) Trash (SRECon NA 2024).pdf99.99% of Your Traces  Are (Probably) Trash (SRECon NA 2024).pdf
99.99% of Your Traces Are (Probably) Trash (SRECon NA 2024).pdfPaige Cruz
 

Kürzlich hochgeladen (20)

Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
 
Cybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxCybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptx
 
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
 
201610817 - edge part1
201610817 - edge part1201610817 - edge part1
201610817 - edge part1
 
20230104 - machine vision
20230104 - machine vision20230104 - machine vision
20230104 - machine vision
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and Istio
 
Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdf
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team
 
UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8
 
100+ ChatGPT Prompts for SEO Optimization
100+ ChatGPT Prompts for SEO Optimization100+ ChatGPT Prompts for SEO Optimization
100+ ChatGPT Prompts for SEO Optimization
 
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptx
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation Developers
 
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership Blueprint
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1
 
UiPath Studio Web workshop series - Day 5
UiPath Studio Web workshop series - Day 5UiPath Studio Web workshop series - Day 5
UiPath Studio Web workshop series - Day 5
 
99.99% of Your Traces Are (Probably) Trash (SRECon NA 2024).pdf
99.99% of Your Traces  Are (Probably) Trash (SRECon NA 2024).pdf99.99% of Your Traces  Are (Probably) Trash (SRECon NA 2024).pdf
99.99% of Your Traces Are (Probably) Trash (SRECon NA 2024).pdf
 

FATC UK - Real time collaborative Flex apps

  • 1. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Introduction to real-time collaboration with LiveCycle Michaël CHAIZE - Flash Platform Evangelist
  • 2. ©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Feel free to contact me 2 Michaël Chaize Flash Platform Evangelist My blog: www.RIAgora.com @mchaize
  • 3. ©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. RIA and technical challenges • Better response time • Light bandwidth • Less load on the server side • Less tests on the client side Web 1.0 application Rich Internet Application <page> <page> <page> <page> <page> <page> <page> <application> <data> SERVER SERVER CLIENT CLIENT
  • 4. &
  • 5. AdobeEvent.java JAVA VALUE OBJECT int idEvent int idUser String evtName String evtCity String evtCountry int evtAudience int evtDate EventService.java JAVA SERVICE CLASS List getEvents() AdobeEvent getEvent(idEvent) AdobeEvent getEventbyIDUser(idUser) List getActivityByuser() boolean update(event) boolean remove(event) boolean deleteEvent(event) AdobeActivityEvent.java JAVA VALUE OBJECT int idUser String userName int nbEvents TABLES DATABASE adobeusers adobevents listEvents.jsp JAVA SERVER PAGE <activity> <adobeEvent> </adobeEvent> <adobeEvent> </adobeEvent> </activity>
  • 7. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. LiveCycle Data Services ES LiveCycle Data Services is a set of Java EE components and APIs used to: Create data-intensive RIAs with less code, less risk, and accelerated time to market due to an innovative client- server programming model Integrate RIAs with existing applications, back-end data, and JEE infrastructure Easily integrate RIAs with LiveCycle document and process services Enable collaboration, offline AIR and real-time data streaming applications to be built in a scalable and reliable manner with robust publish and subscribe messaging Generate PDF documents from RIAs that include graphical assets LiveCycle Data Services ES Data Management RPC Services Messaging Service Adapters Data Synchronization Off-line Applications Data Paging Web Service HTTP Service Remote Object Service Publish & Subscribe Collaboration Real Time Data Push Proxy Service Web-tier Compiler Portal Deployment RIA-PDF Generation LiveCycle ColdFusion Hibernate SQL JMS Java Custom…
  • 8. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Blaze DS BlazeDS is a set of Java EE components and APIs, and a subset of LiveCycle Data Services: - Free and open source. - High performance data transfer for more responsive applications using AMF - Real-time server push over standard HTTP - Full pub/sub messaging that extends existing messaging infrastructure LiveCycle Data Services ES Data Management RPC Services Messaging Service Adapters Data Synchronization Off-line Applications Data Paging Web Service HTTP Service Remote Object Service Publish & Subscribe Collaboration Real Time Data Push Proxy Service Web-tier Compiler Portal Deployment RIA-PDF Generation LiveCycle ColdFusion Hibernate SQL JMS Java Custom…
  • 9. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. LCDS.war ! Structure of the WAR file: ! +WEB-INF/classes To place your Java classes ! +WEB-INF/lib Hosts the JAVA libraries of LCDS ! +WEB-INF/flex Hosts the XML configuration files ! Remoting-config.xml Destinations to Java classes for remoting ! Messaging-config.xml Destinations for messaging ! Data-Management-config.xml Destinations to Java assemblers ! Proxy-config.xml Destinations to HTTP services ! Services-config.xml Channels configurations A file named « LCDS.war » is provided to start your Flex/Java projects.
  • 10. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Java and ActionScript value objects Java VO ActionScript VO
  • 11. 2008 Adobe Systems Incorporated. All Rights Reserved. Flex/Java classic architecture UI LAYER SERVER PRESENTATION /SERVICES/DAO LAYER DATABASE/ STORAGE LAYER LiveCycle Data Services Java servlet container (tomcat, WAS…) JDBC Web browser JAVA classes/services Webapp (WAR) RPC services Messaging Data Mgt WSDL AMF over HTTPs JAVA <-> AMF EventService.java public getEvents()
  • 13. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Channels Flex client Servlet-based endpoints AMF Endpoint HTTPEndpoint StreamingAMFEndpoint NIO-based endpoints NIOAMFEndpoint NIOHTTPEndpoint RTMPEndpoint MessageBrokerServlet Socket Server (LCDS only) Message Broker Remoting HTTPProxy Message Data Management
  • 14. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Publish/Subscribe Messaging Message Service LiveCycle DS / Blaze DS Endpoint Publisher Subscriber !RTMP !AMF !HTTP !Client A !Client B !Client C
  • 16. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Data Push - Messaging Message Services LiveCycle DS / Blaze DS Adapter Y Adapter X Messaging System Y Messaging System X Endpoint JMS Provider JMS Adapter Publisher Subscriber !RTMP !AMF !HTTP
  • 18. ADOBE FLEX 4 Data Management Services
  • 19. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Data Management Services LiveCycle Data Services Data Service DAO Object Adapter Hibernate Adapter JDBC Adapter Hibernate RDBMS CFC Adapter ColdFusion Endpoint Client A Client B Client C
  • 20. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Data Management Benefits 1. Automatic Client to Middle-Tier Synchronization ! Change Tracking ! Automatic invocation of remote services 2. Highlander Principle: there is only one instance of a given entity in memory at any given time 3. Conflict resolution 4. Offline Synchronization (thanks to Adobe AIR) 5. Lazy loading 6. Paging 7. Cross-client synchronization
  • 23. 2010 Adobe Systems Incorporated. All Rights Reserved. 23 LCCS SDK Offers Both High-Level Components and Foundation Classes High-level Components Foundation Classes Pods RTC UI Components Shared Managers Shared Model Session (Connection, Authentication, Reconnect/Failover, RMI Routing) Audio Pub / SubWebcam Pub / Sub File Pub / Sub Shared Cursors Users AV Streams Files Room Pub / Sub Messaging + Permissions Shared Collection Baton Shared Property UserQueue Roster WhiteBoard Chat FileShare Note WebCam
  • 24. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Server Integration ! Create and Delete Rooms ! Manage your Users’ Authentication ! Publish and Subscribe to Messages ! Variety of different Languages (some donated by our users, tx!): Java PHP ColdFusion Ruby C#Python Groovy
  • 25. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Applications Templates and Provisioning ! Only OWNERs can add new nodes, meaning new collaborative capabilities to a room. ! We want to be able to spawn rooms on the fly (from our servers). ! But we don’t want our users to come in as OWNERs to set up the collaborative capabilities! That’s too much power! ! What we want is to set it up so that new rooms come with the collaborative capabilities we want, pre-installed. ! That’s why we have application templates!
  • 26. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. External Authentication Your Server Your Client LiveCycle Collaboration Service Token Token Login / Session Token Fetch
  • 27. BlazeDS LiveCycle Data Services TrialVersion > lcds-samples LiveCycle Collaboration Service .com > LCCS SDK > Samples
  • 28. ©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Feel free to contact me 28 Michaël Chaize Flash Platform Evangelist My blog: www.RIAgora.com @mchaize