soirée flex/ria au nantes jug
DESCRIPTION
Durant cette soirée, nous avons discuté de RIA: * de Flash, de Flex, d’HTML5 * d’application multi-écrans: desktop, tablette, téléphone, télévision * des solutions offertes par Adobe dans ce domaine : o nous verrons comment les technologies Adobe permettent aux développeurs et architectes de construire des applications internet riches et multi-écrans, tout en faisant fructifier leurs anciens investissements, notamment sur les technologies Java/JEE (EJB3, Spring, Hibernate JPA, Maven...) Speaker : Francois Le Droff cf. http://www.nantesjug.org/TRANSCRIPT
![Page 1: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/1.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Soirée Flex & RIANantes JUG
![Page 2: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/2.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
About me : François Le Droff
o “Just another Java guy” (doing Flex)
o 11 years in web 1+n.0
o Open Source Software Geek : o FlexPMD, Cairngorm
o Ossgtp, ParisJUG, et TTFX
o French JUGs, MAX, et Solution Linux
o http://www.droff.com
o http://twitter.com/francoisledroff
o ledroff adobe.com<at>
![Page 3: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/3.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved. 3
![Page 4: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/4.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
![Page 5: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/5.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
RIA?
![Page 6: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/6.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Sexy and funkyapplications !
![Page 7: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/7.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
7
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe confidential.
What Are Intuitive User Experiences?
Effective, Efficient, Engaging, Easy to learn, Error free
Personalized, responsive experiences across devices and channels
Communication & collaboration in context
Harmonization of backend processes and services
![Page 8: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/8.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved. 8
Rich User Experiences: Opportunities for internal users
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe confidential.
![Page 9: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/9.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
9
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe confidential.
Rich User Experiences: Opportunities for internal users
5 mins 20 secs
Increase productivity & improve decision making
![Page 10: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/10.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved. 10Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe confidential.
NATO
![Page 11: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/11.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
11
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe confidential.
NATO
![Page 12: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/12.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
12
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe confidential.
NATO
From a system-centric view to a user-centric application.
![Page 13: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/13.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved. 13
Hendrix
![Page 14: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/14.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved. 14
o Before
Hendrix
![Page 15: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/15.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
o After
15
Hendrix
![Page 16: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/16.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved. 16
Hendrix: APIs , UIs, avoid unnecessary complexity and training
![Page 17: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/17.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
First-class interfaces
![Page 18: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/18.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Productive users Productive developers
Productivity by Design
Productivity by design
![Page 19: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/19.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Flash?
![Page 20: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/20.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
FLASH PLAYER 10.1
![Page 21: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/21.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
![Page 22: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/22.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Consumer Electronics
Personal Computers
Mobile Phones
![Page 23: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/23.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Partenaires technologiques
Open Screen Project
Diffuseurs de contenu
![Page 24: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/24.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Flash Player 10.1
Flash Player 10.1
Google TV
![Page 25: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/25.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Increased software rendering performance on mobile over 87%
Reduced memory consumption on mobile by over 55%
Flash Player 10.1 is designed for mobility
Performance Graphics hardware acceleration
Audio/video hardware decoding
Memory, battery & CPU optimizations
Optimized SWF Management
Sleep mode
Device integration Multi-touch and gestures
Accelerometer
Screen orientation
Mobile text input
Porting kit for OSP partners
![Page 26: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/26.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
o Brings full Flash Player feature set to devices
o New Features:
o Multi-touch & gestures
o Accelerometer
o Screen orientation
o Mobile text input
o Device capabilities discovery
o Globalization support (GSLib)
o Mobile settings manager
o Global error handling
Flash Player 10.1
![Page 27: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/27.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
AIR ?
![Page 28: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/28.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
ADOBE AIR 2.0
![Page 29: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/29.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
ADOBE AIR 2.0
Flash Player 10.1+ WebKit+ SQLite+ Desktop APIs---------------------= Adobe AIR
![Page 30: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/30.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
ADOBE AIR 2.0
Xplatform runtimeDrag & Drop files / DesktopLocal system accessMultiple windowsTransparent applicationsNative Process, UDP, USB...
![Page 31: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/31.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
DETECT AND BROWSE
USB STORAGE
![Page 32: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/32.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
UDP Network Protocols
PEER 2 PEER
![Page 33: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/33.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Documents and Processes
OS INTEGRATION
![Page 34: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/34.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved. © 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Demos
![Page 35: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/35.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Flex ?
![Page 36: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/36.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
ADOBE FLEX 4
![Page 37: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/37.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Basics
Flash Builder IDE
Flex SDK
Flex Class Library
MXML ActionScript
Compile
SOAP HTTP/S AMF/S RTMP/S
Web Server
Existing Applications & Infrastructure
J2EE Application Server
LC Data ServicesXML/HTTPRESTSOAP Web Services
Browser
Flash Player
![Page 38: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/38.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
OLD COMPONENT MODEL
FLEX FRAMEWORK 3
GraphicsLayoutAnimationPartsStatesBehaviorLogicData
Component / Skin
![Page 39: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/39.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
SPARK COMPONENT MODEL
FLEX FRAMEWORK 4
ActionScript MXML
GraphicsLayout
AnimationPartsStates
Component Skin
CSS properties
BehaviorLogic
Data
![Page 40: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/40.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
SPARK COMPONENT THEME
FLEX FRAMEWORK 4
![Page 41: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/41.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
NEW VIDEO COMPONENT
FLEX FRAMEWORK 4
![Page 42: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/42.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
TEXT LAYOUT FRAMEWORK SUPPORT
FLEX FRAMEWORK 4
![Page 43: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/43.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
NEW STATES MODEL
FLEX FRAMEWORK 4
![Page 44: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/44.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
NEW LAYOUT MODEL
FLEX FRAMEWORK 4
http://www.rialvalue.com/coverflow/
![Page 45: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/45.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
OLD MX COMPONENTS
FLEX FRAMEWORK 4
http://tinyurl.com/notspark
![Page 46: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/46.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
HTML5 ?
![Page 47: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/47.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
![Page 48: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/48.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
![Page 49: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/49.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
![Page 50: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/50.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
![Page 51: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/51.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
![Page 52: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/52.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
![Page 53: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/53.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
![Page 54: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/54.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
![Page 55: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/55.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
![Page 56: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/56.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
![Page 57: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/57.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
![Page 58: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/58.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
![Page 59: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/59.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
![Page 60: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/60.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
![Page 61: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/61.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
![Page 62: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/62.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
![Page 63: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/63.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
![Page 64: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/64.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
![Page 65: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/65.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
![Page 66: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/66.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
![Page 67: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/67.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
![Page 68: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/68.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
&
![Page 69: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/69.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
ADOBE FLEX 4
HTTP Request& WebServices
![Page 70: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/70.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved. 2008 Adobe Systems Incorporated. All Rights Reserved.
Flex/JSP architecture
UI LAYER
SERVERPRESENTATION/SERVICES/DAOLAYER
DATABASE/STORAGE LAYER
listEvents.jsp
Java servlet container (tomcat, WAS…)
JDBC
Web browser
JAVA classes/services
Webapp (WAR)
EventService.java public getEvents()
WSDL
XML on HTTP(s)
![Page 71: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/71.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Same with PHP, Ruby, Perl, ASP...
Returns XML, text, tabulated text, JSON...
Use send() to launch the request
Result and Fault events
New data-services wizard in Flash Builder 4 to generate a STUB on the client side
Flex and <HTTPRequest>
![Page 72: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/72.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Web Services Description Language 1.1 (WSDL 1.1) document
The Flex web service API generally supports Simple Object Access Protocol (SOAP) 1.1, XML Schema 1.0, and WSDL 1.1 RPC-encoded, RPC-literal, and document-literal (bare and wrapped style parameters).
Flex supports web service requests and results that are formatted as SOAP messages
Flex and <Webservice>
![Page 73: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/73.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
AMFPublished in December 2007
XML5000 rows ?1.1Mo 29Ko
![Page 74: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/74.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
ADOBE FLEX 4
Remoting AMF
![Page 75: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/75.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
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
ServiceAdapters
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…
![Page 76: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/76.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
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
ServiceAdapters
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…
![Page 77: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/77.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
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.
![Page 78: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/78.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Java and ActionScript value objects
Java VO ActionScript VO
![Page 79: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/79.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Java and ActionScript types
STRING STRING
BOOLEAN BOOLEAN
INT, SHORT, BYTE INT
DOUBLE, FLOAT, LONG NUMBER
CALENDAR, DATE DATE
OBJECT OBJECT
COLLECTION ARRAYCOLLECTION
OBJECT[] ARRAY
ORG.W3C.DOCUMENT XML OBJECT
NULL NULL
![Page 80: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/80.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Flex/Java classic architecture
UI LAYER
SERVERPRESENTATION/SERVICES/DAOLAYER
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()
![Page 81: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/81.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
ADOBE FLEX 4
Spring BlazeDS Integration
![Page 82: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/82.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Spring & Flex Services
o Intégrer Spring & Flex, c’est donc :o exposer les interfaces de ces services Flex,
o en laissant le conteneur Spring gérer
o leurs instanciations,
o leurs configurations,
o le cycle de vie de leurs implémentations
o leurs sécurité,
o leurs aspects (transactionels …)
![Page 83: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/83.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
ADOBE FLEX 4
Messaging
![Page 84: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/84.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Channels
Flex client
Servlet-based endpoints
AMF Endpoint
HTTPEndpoint
StreamingAMFEndpoint
NIO-based endpoints
NIOAMFEndpoint
NIOHTTPEndpoint
RTMPEndpoint
Socket Server (LCDS only)
HTTPProxy
Message
Data Management
![Page 85: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/85.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Publish/Subscribe Messaging
Message
Service
LiveCycle DS / Blaze DS
Endpoint
PublisherSubscriber
RTMP
AMF
HTTP
Client A
Client B
Client C
![Page 86: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/86.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Data Push - Messaging
Message
Services
LiveCycle DS / Blaze DS
Adapter Y
Adapter X
Messaging
System Y
Messaging
System X
EndpointJMS
ProviderJMS Adapter
PublisherSubscriber
RTMP
AMF
HTTP
![Page 87: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/87.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
ADOBE FLEX 4
Data ManagementServices
![Page 88: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/88.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Data Management Services
LiveCycle Data Services
DataService DAOObject
Adapter
HibernateAdapter
JDBCAdapter
Hibernate
RDBMS
CFCAdapter ColdFusion
Endpoint
Client A
Client B
Client C
![Page 89: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/89.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Data Management Benefits
1. Automatic Client to Middle-Tier Synchronization Change Tracking
Automatic invocation of remote services
1. Highlander Principle: there is only one instance of a given entity in memory at any given time
2. Conflict resolution
3. Offline Synchronization (thanks to Adobe AIR)
4. Lazy loading
5. Paging
6. Cross-client synchronization
![Page 90: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/90.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Today’s LiveCycle Data Services
Flex Client Flex Client Flex Client
LCDS
Java Classes
•Thing1.class•Thing2.class•Thing3.class
![Page 91: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/91.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Tomorrow’s LiveCycle Data Services
LCDS
NET
•??.???•??.???•??.???
Java Classes
•Thing1.class•Thing2.class•Thing3.class
.NET C# Classes
•Thing1.dll•Thing2.dll•Thing3.dll
IIS Plugin•.NET Remoting•Messaging•MSMQ Messaging
.NET Adapter•Remoting•Messaging•Data Mgmt
.NET
Ada
pter
Flex Client Flex Client Flex ClientJava Client Android ClientHTML5/JS Client ObjC Client
![Page 92: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/92.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Tomorrow’s LiveCycle Data Services
LCDS
NET
•??.???•??.???•??.???
Java Classes
•Thing1.class•Thing2.class•Thing3.class
.NET C# Classes
•Thing1.dll•Thing2.dll•Thing3.dll
IIS Plugin•.NET Remoting•Messaging•MSMQ Messaging
.NET Adapter•Remoting•Messaging•Data Mgmt
.NET
Ada
pter
Flex Client Flex Client Flex ClientJava Client Android ClientHTML5/JS Client ObjC Client
![Page 93: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/93.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Native Java Client
Java calling of remoting and messagingdestinations
Full Java implementations of:
RemoteObject
Producer
Consumer
Channel implementations, etc.
Includes support for native Android applications
![Page 94: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/94.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Tomorrow’s LiveCycle Data Services
LCDS
NET
•??.???•??.???•??.???
Java Classes
•Thing1.class•Thing2.class•Thing3.class
.NET C# Classes
•Thing1.dll•Thing2.dll•Thing3.dll
IIS Plugin•.NET Remoting•Messaging•MSMQ Messaging
.NET Adapter•Remoting•Messaging•Data Mgmt
.NET
Ada
pter
Flex Client Flex Client Flex ClientJava Client Android ClientHTML5/JS Client ObjC Client
![Page 95: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/95.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
HTML5/JavaScript Client
JavaScript calling of remoting and messagingdestinations without using Flash
Utilizes HTML5 WebSockets
Full JavaScript implementations of:
RemoteObject
Producer
Consumer
Channel implementations, etc.
![Page 96: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/96.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Tomorrow’s LiveCycle Data Services
LCDS
NET
•??.???•??.???•??.???
Java Classes
•Thing1.class•Thing2.class•Thing3.class
.NET C# Classes
•Thing1.dll•Thing2.dll•Thing3.dll
IIS Plugin•.NET Remoting•Messaging•MSMQ Messaging
.NET Adapter•Remoting•Messaging•Data Mgmt
.NET
Ada
pter
Flex Client Flex Client Flex ClientJava Client Android ClientHTML5/JS Client ObjC Client
![Page 97: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/97.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Native Objective C Client
oObjective C calling of remoting and messagingdestinations
oMacOSX and iOS client support
oFull Objective C implementations of:
o RemoteObject
o Producer
o Consumer
o Channel implementations – at least one polling and one real-time.
![Page 98: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/98.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
iOS APN Push Notifications and Multitasking
oApple push notifications are used by iPhone, iPadand iPod Touch (iOS 3.x and higher)
oLCDS/Server-generated notifications to iOS applications
oNotifications: Badges, sounds and custom text alerts
oRespectful of Apple’s rules about message size, type, frequency, etc.
o iSO Multitasking support (iOS 4.x and higher):
oConvenience client-side functions are provided to handle various multitasking-related events such as when iOS shuts down an app. Functions handle clean disconnects, server notification of disconnect, etc.
![Page 99: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/99.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
LCDS NEXT
LiveCycle Data Services
Devices & Clients <HTML>JavaScript / AJAXiOS
preview in January 2011
![Page 100: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/100.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
JEEintegration sample ?
![Page 101: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/101.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
101
Multiscreen and Modular Flex Application making
o Demo
Mobile Application Desktop Browser Application
![Page 102: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/102.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
IOC, utilities
oIoCoSpringoParsley
oUtilitieso Leverage JEEo Java OSS (Apache, Codehaus, Spring, JBoss, etc..)o Spicelib, KapInspect, Thunderbold, Cairngorm3
102
![Page 103: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/103.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Project setup and structure : Best Practice sample : Todo-Max
103
JVM - JBoss/JEE application server[ Web container, Transaction Manager, JMX, AOP, Cache, JNDI, Logging support)
todo_webapp (war)Spring[Micro Container, IOC, AOP, Security, LCDS integration support]
todo_java_flex_service (jar)
NIO ServerFlex-Data ManagementFlex-Messaging Flex-Remoting
todo_java_persistence (jar)JPA (Hibernate)
Dozer [CRM and CTI entity 2 DTOs mapper]
Flash Player
Dev/CI/QA/Stage/Prod Parameters : JNDI
![Page 104: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/104.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Use this Sample app as a skeleton
104
JVM - JBoss/JEE application server
todo_webapp (war)
Spring
todo_java_service (jar)
NIO ServerFlex-Data ManagementFlex-Messaging Flex-Remoting
todo_java_crm (jar)
JCO
Dozer [CRM and CTI entity 2 DTOs mapper]
Flash Player
Dev/CI/QA/Stage/Prod Parameters : JNDI
JVM - JBoss/JEE application server
Spring
todo_java_service (jar)
NIO ServerFlex-Data ManagementFlex-Messaging Flex-Remoting
todo_java_persistence (jar)
JPA (Hibernate)
Dozer [CRM and CTI entity 2 DTOs mapper]
Flash Player
Dev/CI/QA/Stage/Prod Parameters : JNDI
todo_webapp (war)
![Page 105: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/105.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
105
Multiscreen and Modular Flex Application making
o Todo Application Architecture
todo_flex_core
Parsley
Spicelib
todo_flex_remoting_dto
Common domain objects
Cairngorm 3 Module
Common infrastructure components
Common application layer (controllers, tasks, commands, ...)
todo_flex_shell todo_flex_android
todo_flex_todolist
todo_flex_todolist_lib
Cairngorm 3 Integration
Presentation layer
Presentation layer
Application layer
Domain layer
Infrastructure layer
![Page 106: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/106.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Demo
106
Demo
![Page 107: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/107.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Software factory ?
![Page 108: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/108.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Software factoryAutomation for the People (because Everybody Doing It Manually Hurts)
108
Dep
ende
ncie
sCh
ecks
Com
pila
tion
Codi
ngRu
lesC
heck
s
Dep
loym
ent
Pack
agin
g
Uni
t tes
t
Java
Doc
s, A
SDoc
s,
Qua
lity
Repo
rts
Aut
omat
edTe
sts
ContinuousIntegration
Server
ModificationChecks
Trigger
Qua
lity
Das
hboa
rd
Changelist/ Jobs
Tasks / Bug Tracking
Server
RepositoryServer
CI & QA Test Servers Quality & Doc Servers
Local Builds and Local App
Servers
Product Owner / User Champions / UX Designer
QA Engineers
SCMswc,swf, jar,war
push & pulldeploy
Update & CommitUpdate
Fetch swc,swf,jarand war
Checks/Notifications
Flex & Java Developers
Smoke / AcceptanceTest s
Func. and UX Feedbacks
Checks & Tests
Build
![Page 109: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/109.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved. 109
Dep
ende
ncie
sCh
ecks
Com
pila
tion
Codi
ngRu
lesC
heck
s
Dep
loym
ent
Pack
agin
g
Uni
t tes
t
Java
Doc
s, A
SDoc
s,
Qua
lity
Repo
rts
Aut
omat
edTe
sts
ContinuousIntegration
Server
ModificationChecks
Trigger
Qua
lity
Das
hboa
rd
RepositoryServer
CI & QA Test Servers Quality & Doc Servers
Local Builds and Local App
Servers
Product Owner / User Champions / UX Designer
QA Engineers
swc,swf, jar,warpush & pull
deploy
Update & CommitUpdate
Fetch swc,swf,jarand war
Checks/Notifications
Flex & Java Developers
Smoke / AcceptanceTest s
Func. and UX Feedbacks
Checks & Tests
BuildSCM
Changelist/ Jobs
Tasks / Bug Tracking
Server
SCM
• Jira / RallyDev / others
• Perforce / SVN / Git / others
• Bridge /Connect them• Automate the creation of Perforce jobs (svn changelist) associated with Bug fixes• Ease your integration, branch management,
• Ease release managament, by keeping your scm tags and Jira versioning in synch• Release notes automation
SCM
Changelist/ Jobs
Tasks / Bug Tracking
Server
SCM
![Page 110: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/110.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved. 110
Dep
ende
ncie
sCh
ecks
Com
pila
tion
Codi
ngRu
lesC
heck
s
Dep
loym
ent
Pack
agin
g
Uni
t tes
t
Java
Doc
s, A
SDoc
s,
Qua
lity
Repo
rts
Aut
omat
edTe
sts
ContinuousIntegration
Server
ModificationChecks
Trigger
Qua
lity
Das
hboa
rd
RepositoryServer
CI & QA Test Servers Quality & Doc Servers
Local Builds and Local App
Servers
Product Owner / User Champions / UX Designer
QA Engineers
swc,swf, jar,warpush & pull
deploy
Update & CommitUpdate
Fetch swc,swf,jarand war
Checks/Notifications
Flex & Java Developers
Smoke / AcceptanceTest s
Func. and UX Feedbacks
Checks & Tests
BuildSCM
Changelist/ Jobs
Tasks / Bug Tracking
Server
SCMContinuousIntegration
Server
Software factoryAutomation for the People (because Everybody Doing It Manually Hurts)
![Page 111: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/111.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved. 111
Dep
ende
ncie
sCh
ecks
Com
pila
tion
Codi
ngRu
lesC
heck
s
Dep
loym
ent
Pack
agin
g
Uni
t tes
t
Java
Doc
s, A
SDoc
s,
Qua
lity
Repo
rts
Aut
omat
edTe
sts
ContinuousIntegration
Server
ModificationChecks
Trigger
Qua
lity
Das
hboa
rd
RepositoryServer
CI & QA Test Servers Quality & Doc Servers
Local Builds and Local App
Servers
Product Owner / User Champions / UX Designer
QA Engineers
swc,swf, jar,warpush & pull
deploy
Update & CommitUpdate
Fetch swc,swf,jarand war
Checks/Notifications
Flex & Java Developers
Smoke / AcceptanceTest s
Func. and UX Feedbacks
Checks & Tests
SCM
Changelist/ Jobs
Tasks / Bug Tracking
Server
SCM
Dep
ende
ncie
sCh
ecks
• Ant + Ivy• Maven• Graddle• …
Build
![Page 112: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/112.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved. 112
Dep
ende
ncie
sCh
ecks
Com
pila
tion
Codi
ngRu
lesC
heck
s
Dep
loym
ent
Pack
agin
g
Uni
t tes
t
Java
Doc
s, A
SDoc
s,
Qua
lity
Repo
rts
Aut
omat
edTe
sts
ContinuousIntegration
Server
ModificationChecks
Trigger
Qua
lity
Das
hboa
rd
RepositoryServer
CI & QA Test Servers Quality & Doc Servers
Local Builds and Local App
Servers
Product Owner / User Champions / UX Designer
QA Engineers
swc,swf, jar,warpush & pull
deploy
Update & CommitUpdate
Fetch swc,swf,jarand war
Checks/Notifications
Flex & Java Developers
Smoke / AcceptanceTest s
Func. and UX Feedbacks
Checks & Tests
BuildSCM
Changelist/ Jobs
Tasks / Bug Tracking
Server
SCM
Dep
ende
ncie
sCh
ecks
• Dependency Management• Scope• Transitivity• Profile
• One common artefacts (swc, swf, jar, war, ear) repository• proxy, hosted, grouped repositories
![Page 113: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/113.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved. 113
Dep
ende
ncie
sCh
ecks
Com
pila
tion
Codi
ngRu
lesC
heck
s
Dep
loym
ent
Pack
agin
g
Uni
t tes
t
Java
Doc
s, A
SDoc
s,
Qua
lity
Repo
rts
Aut
omat
edTe
sts
ContinuousIntegration
Server
ModificationChecks
Trigger
Qua
lity
Das
hboa
rd
RepositoryServer
CI & QA Test Servers Quality & Doc Servers
Local Builds and Local App
Servers
Product Owner / User Champions / UX Designer
QA Engineers
swc,swf, jar,warpush & pull
deploy
Update & CommitUpdate
Fetch swc,swf,jarand war
Checks/Notifications
Flex & Java Developers
Smoke / AcceptanceTest s
Func. and UX Feedbacks
Checks & Tests
BuildSCM
Changelist/ Jobs
Tasks / Bug Tracking
Server
SCM
RepositoryServer
Codi
ngRu
lesC
heck
s
• PMD for java• http://pmd.sourceforge.net/
• FlexPMD for AS3/Flex• http://sourceforge.net/adobe/flexpmd/home/• FlexPMD: Your Canary in a Coal Mine – MAX 2010
![Page 114: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/114.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Software factoryAutomation for the People (because Everybody Doing It Manually Hurts)
114
Dep
ende
ncie
sCh
ecks
Com
pila
tion
Codi
ngRu
lesC
heck
s
Dep
loym
ent
Pack
agin
g
Uni
t tes
t
Java
Doc
s, A
SDoc
s,
Qua
lity
Repo
rts
Aut
omat
edTe
sts
ContinuousIntegration
Server
ModificationChecks
Trigger
Qua
lity
Das
hboa
rd
RepositoryServer
CI & QA Test Servers Quality & Doc Servers
Local Builds and Local App
Servers
Product Owner / User Champions / UX Designer
QA Engineers
swc,swf, jar,warpush & pull
deploy
Update & CommitUpdate
Fetch swc,swf,jarand war
Checks/Notifications
Flex & Java Developers
Smoke / AcceptanceTest s
Func. and UX Feedbacks
Checks & Tests
BuildSCM
Changelist/ Jobs
Tasks / Bug Tracking
Server
SCM
Com
pila
tion
Pack
agin
g
Uni
t tes
t
• javac, mxmlc• JUnit/TestNG, FlexUnit4• swc, swf ,jar ,war ,ear ,zip ,etc
![Page 115: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/115.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved. 115
Dep
ende
ncie
sCh
ecks
Com
pila
tion
Codi
ngRu
lesC
heck
s
Dep
loym
ent
Pack
agin
g
Uni
t tes
t
Java
Doc
s, A
SDoc
s,
Qua
lity
Repo
rts
Aut
omat
edTe
sts
ContinuousIntegration
Server
ModificationChecks
Trigger
Qua
lity
Das
hboa
rd
RepositoryServer
CI & QA Test Servers Quality & Doc Servers
Local Builds and Local App
Servers
Product Owner / User Champions / UX Designer
QA Engineers
swc,swf, jar,warpush & pull
deploy
Update & CommitUpdate
Fetch swc,swf,jarand war
Checks/Notifications
Flex & Java Developers
Smoke / AcceptanceTest s
Func. and UX Feedbacks
Checks & Tests
BuildSCM
Changelist/ Jobs
Tasks / Bug Tracking
Server
SCM
• Maven• Ant + Ivy• Graddle• BuildR• EasyAnt• Ant• Make
RepositoryServer
Dep
loym
ent
• Automated deployment on • Artefacts repository (for developers, for dependent projects)• CI test server (for developers’s check, automated functionaltesting)• QA test servers
• On demand for Release Candidate smoke test• UX review & Product review
• Test, stage and production ready deployment• Externalized configuration (jndi)• Profiled build (when platform dependent)
![Page 116: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/116.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Software factoryAutomation for the People (because Everybody Doing It Manually Hurts)
116
Dep
ende
ncie
sCh
ecks
Com
pila
tion
Codi
ngRu
lesC
heck
s
Dep
loym
ent
Pack
agin
g
Uni
t tes
t
Java
Doc
s, A
SDoc
s,
Qua
lity
Repo
rts
Aut
omat
edTe
sts
ContinuousIntegration
Server
ModificationChecks
Trigger
Qua
lity
Das
hboa
rd
RepositoryServer
CI & QA Test Servers Quality & Doc Servers
Local Builds and Local App
Servers
Product Owner / User Champions / UX Designer
QA Engineers
swc,swf, jar,warpush & pull
deploy
Update & CommitUpdate
Fetch swc,swf,jarand war
Checks/Notifications
Flex & Java Developers
Smoke / AcceptanceTest s
Func. and UX Feedbacks
Checks & Tests
BuildSCM
Changelist/ Jobs
Tasks / Bug Tracking
Server
SCM
RepositoryServer
• javac, mxmlc• JUnit/TestNG, FlexUnit4• swc, swf ,jar ,war ,ear ,zip ,etc
Aut
omat
edTe
sts
• Automated Functional Test• RIATest : http://www.riatest.com• FlexMonkey• QTP
• Leveraging the Flex SDK automation framework
![Page 117: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/117.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Software factoryAutomation for the People (because Everybody Doing It Manually Hurts)
117
Dep
ende
ncie
sCh
ecks
Com
pila
tion
Codi
ngRu
lesC
heck
s
Dep
loym
ent
Pack
agin
g
Uni
t tes
t
Java
Doc
s, A
SDoc
s,
Qua
lity
Repo
rts
Aut
omat
edTe
sts
ContinuousIntegration
Server
ModificationChecks
Trigger
Qua
lity
Das
hboa
rd
RepositoryServer
CI & QA Test Servers Quality & Doc Servers
Local Builds and Local App
Servers
Product Owner / User Champions / UX Designer
QA Engineers
swc,swf, jar,warpush & pull
deploy
Update & CommitUpdate
Fetch swc,swf,jarand war
Checks/Notifications
Flex & Java Developers
Smoke / AcceptanceTest s
Func. and UX Feedbacks
Checks & Tests
BuildSCM
Changelist/ Jobs
Tasks / Bug Tracking
Server
SCM
• Maven• Ant + Ivy• Graddle• BuildR• EasyAnt• Ant• Make
RepositoryServer
• javac, mxmlc• JUnit/TestNG, FlexUnit4• swc, swf ,jar ,war ,ear ,zip ,etc
Java
Doc
s, A
SDoc
s,
Qua
lity
Repo
rts
• Developer docs : • Compilation reports• Javadoc, ASdoc
• Dev/QA docs• Unit Test reports • Test Coverage reports• PMD reports• Dependencies• Dependency convergent reports• etc …
![Page 118: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/118.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Software factoryAutomation for the People (because Everybody Doing It Manually Hurts)
118
Dep
ende
ncie
sCh
ecks
Com
pila
tion
Codi
ngRu
lesC
heck
s
Dep
loym
ent
Pack
agin
g
Uni
t tes
t
Java
Doc
s, A
SDoc
s,
Qua
lity
Repo
rts
Aut
omat
edTe
sts
ContinuousIntegration
Server
ModificationChecks
Trigger
Qua
lity
Das
hboa
rd
RepositoryServer
CI & QA Test Servers Quality & Doc Servers
Local Builds and Local App
Servers
Product Owner / User Champions / UX Designer
QA Engineers
swc,swf, jar,warpush & pull
deploy
Update & CommitUpdate
Fetch swc,swf,jarand war
Checks/Notifications
Flex & Java Developers
Smoke / AcceptanceTest s
Func. and UX Feedbacks
Checks & Tests
BuildSCM
Changelist/ Jobs
Tasks / Bug Tracking
Server
SCM
RepositoryServer
• javac, mxmlc• JUnit/TestNG, FlexUnit4• swc, swf ,jar ,war ,ear ,zip ,etc
Qua
lity
Das
hboa
rd
• Quality Dashboard• Sonar : http://www.sonarsource.org/• Home made• Others
![Page 119: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/119.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Tasks / Bug Tracking
Server
CI & QA Test Servers Quality & Doc Servers
119
Dep
ende
ncie
sCh
ecks
Com
pila
tion
Codi
ngRu
lesC
heck
s
Dep
loym
ent
Pack
agin
g
Uni
t tes
t
Java
Doc
s, A
SDoc
s,
Qua
lity
Repo
rts
Aut
omat
edTe
sts
ContinuousIntegration
Server
ModificationChecks
Trigger
Qua
lity
Das
hboa
rd
Changelist/ Jobs
RepositoryServer
Local Builds and Local App
Servers
Product Owner / User Champions / UX Designer
QA Engineers
SCMswc,swf, jar,war
push & pulldeploy
Update & CommitUpdate
Fetch swc,swf,jarand war
Checks/Notifications
Flex & Java Developers
Smoke / AcceptanceTest s
Func. and UX Feedbacks
Checks & Tests
Build
• Aim for a full IDE integration :• Plugins
•Mylin, hudson, SCM, FlexPMD, FlexFormatter, FlexUnit, CodeCoverage, etc…
• Shared properties and configuration• Scripts
Product Owner / User Champions / UX Designer
QA EngineersFlex & Java Developers
![Page 120: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/120.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved. 120
References
![Page 121: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/121.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved. 121
Books /Articles« Effective Java: Programming Language Guide », Joshua Bloch« OO Design Quality Metrics », Robert Martin
http://www.octo.com/Java-Productivity-Primer.10/Publicationshttp://lil.univ-littoral.fr/~oumoumsack/qualite/http://www.objectmentor.com/resources/articles/Principles_and_Patterns.pdfhttp://www.infoq.com/presentations/effective-api-designhttp://www.infoq.com/news/Ken-Schwaber-Sacrificing-Qualityhttp://www.quotegarden.com/programming.htmlhttp://www.slideshare.net/francois.le.droff/solutions-linux2008-construire-sa-vision-qualitehttp://www.slideshare.net/francoisledroff/flex-continuous-quality-builds-flex-ant-mavenhttp://www.slideshare.net/francoisledroff/tesytquality-best-practices-toolkit-for-enterprise-flex
Photo /Graphicshttps://duke.dev.java.net/images/comfyChair/index.htmlhttp://blog.theflashblog.com/?p=2436http://www.riagora.com/http://coenraets.org/blog/
Blogs:http://blog.theflashblog.com/?p=2436http://www.riagora.com/http://coenraets.org/blog/
ToolsCairngorm: https://sourceforge.net/adobe/cairngorm/home/FlexUnit: http://flexunit.org/Parsley/Spicelib: http://www.spicefactory.orgKapInsect: http://lab.kapit.fr/display/kapinspect/Kap+InspectThunderbolt: http://github.com/sectore/ThunderBoltAS3Flexlib: http://code.google.com/p/flexlib/FlexPMD: https://sourceforge.net/adobe/flexpmd/home/Ant: http://ant.apache.org/Maven: http://maven.apache.org/Ivy: http://www.jaya.free.fr/ivy/Sonar: http://www.sonarsource.org/PMD: http://pmd.sourceforge.net/Spring: http://www.springsource.org/JBoss: http://www.jboss.orgDozer: http://dozer.sourceforge.net/
Adobe DocsActionScript Developer Site-http://www.adobe.com/devnet/actionscript/Flex Developer Site -http://www.adobe.com/devnet/flex/documentation.htmlLCDS Doc Site -http://livedocs.adobe.com/livecycle/8.2/programLC/programmer/lcds/help.html?content=lcconfig_4.html
References
![Page 122: Soirée Flex/RIA au Nantes jug](https://reader034.vdocuments.us/reader034/viewer/2022052619/554f855bb4c905d25b8b4c44/html5/thumbnails/122.jpg)
© 2010 Adobe Systems Incorporated. All Rights Reserved.
Questions ?