Weitere ähnliche Inhalte Ähnlich wie Michael Adobe Flex Java 1 London Ähnlich wie Michael Adobe Flex Java 1 London (20) Mehr von Skills Matter (20) Kürzlich hochgeladen (20) Michael Adobe Flex Java 1 London1. Advanced mechanisms between JAVA and FLEX
LONDON - 16th of June
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Con dential.
2. Feel free to contact me
Michaël Chaize
Flash Platform Evangelist
My blog: www.RIAgora.com
@mchaize
©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Con dential. 2
3. Applications & User Interfaces in the Enterprise world
Global
2004
RICH INTERNET
WEB APPLICATIONS
APPLICATIONS
1998
REACH
1992
Local
MAINFRAME CLIENT/SERVER
Text UI RICH Integrated Rich GUI
©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Con dential.
4
4. Why Do Intuitive User Experiences Ma er?
Forrester
August 7, 2009
e State Of Enterprise IT Budgets: 2009
by Heidi Lo and Andrew Bartels
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe con dential. 4
5. Rich User Experiences: Opportunities for internal users
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe con dential. 5
6. Rich User Experiences: Opportunities for internal users
5 mins 20 secs
Increase productivity & improve decision making
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe con dential. 6
7. NATO
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe con dential. 7
8. NATO
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe con dential. 8
9. NATO
From system-centric views, to user-centric applications.
®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe con dential. 9
10. RIA and technical challenges
Web 1.0 application Rich Internet Application
• Be er response time
• Light bandwidth
• Less load on the server side
• Less tests on the client side
SERVER SERVER
<page>
<page>
<page>
<page>
<data>
<page>
<page>
<page>
<application>
CLIENT CLIENT
©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Con dential.
11. e Flash Platform is the leading solution for rapidly building RIAs
Multiscreen
Content and Applications
TOOLS FRAMEWORK SERVERS SERVICES CLIENTS
FLASH PLATFORM
Flash Flash Flex Flash Media Flash Flash Player
Professional Catalyst Server Family Platform
Services
Flash Builder LiveCycle AIR
Creative Suite ColdFusion Analytics &
Optimization
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Con dential.
All external content and images pending approvals.
15. What is Flex and how it works
Flash Builder IDE Browser
Flex SDK Flash Player
MXML ActionScript
Flex Class Library SOAP HTTP/S AMF/S RTMP/S
Web Server
Compile
XML/HTTP LC Data Services
REST
SOAP Web Services J2EE Application Server
Existing Applications & Infrastructure
©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Con dential.
18. JAVA VALUE OBJECT JAVA SERVICE CLASS DATABASE
AdobeEvent.java EventService.java TABLES
adobeusers
int idEvent List getEvents()
adobevents
int idUser AdobeEvent getEvent(idEvent)
String evtName AdobeEvent getEventbyIDUser(idUser)
String evtCity List getActivityByuser()
String evtCountry boolean update(event)
int evtAudience boolean remove(event)
int evtDate boolean deleteEvent(event)
JAVA VALUE OBJECT JAVA SERVER PAGE
AdobeActivityEvent.java listEvents.jsp
int idUser <activity>
String userName <adobeEvent>
int nbEvents </adobeEvent>
<adobeEvent>
</adobeEvent>
</activity>
20. Flex/JSP architecture
UI LAYER
Web browser
SERVER XML on HTTP(s) Java servlet container (tomcat, WAS…)
PRESENTATION
/SERVICES/DAO Webapp (WAR)
LAYER
JAVA classes/services
listEvents.jsp
EventService.java public getEvents()
DATABASE/
STORAGE LAYER
WSDL JDBC
2008 Adobe Systems Incorporated. All Rights Reserved.
22. Flex and <HTTPRequest>
! 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
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Con dential.
©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Con dential.
23. Flex and <Webservice>
! Web Services Description Language 1.1 (WSDL 1.1)
document
! e 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
forma ed as SOAP messages
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Con dential.
©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Con dential.
24. XML AMF Published in December 2007
1.1Mo 5000 rows ? 29Ko
26. LiveCycle Data Services ES
LiveCycle Data Services ES
LiveCycle Data Services is a set of Java EE
Service
components and APIs used to: Data Management Adapters
Data Synchronization
LiveCycle
Create data-intensive RIAs with less code, less risk, and O -line Applications
accelerated time to market due to an innovative client-
Data Paging ColdFusion
server programming model
RPC Services
Integrate RIAs with existing applications, back-end data, Hibernate
Web Service
and JEE infrastructure
HTTP Service SQL
Easily integrate RIAs with LiveCycle document and Remote Object Service
process services JMS
Messaging
Enable collaboration, o ine AIR and real-time data
Publish & Subscribe Java
streaming applications to be built in a scalable and
Collaboration
reliable manner with robust publish and subscribe Custom…
Real Time Data Push
messaging
Proxy Service
Generate PDF documents from RIAs that include
graphical assets Web-tier Compiler
Portal Deployment
RIA-PDF Generation
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Con dential.
27. Blaze DS
LiveCycle Data Services ES
BlazeDS is a set of Java EE components Service
Data Management Adapters
and APIs, and a subset of LiveCycle Data
Data Synchronization
Services: LiveCycle
O -line Applications
- Free and open source. Data Paging ColdFusion
- High performance data transfer for more responsive RPC Services Hibernate
applications using AMF Web Service
- Real-time server push over standard HTTP HTTP Service SQL
Remote Object Service
- Full pub/sub messaging that extends existing JMS
messaging infrastructure Messaging
Publish & Subscribe Java
Collaboration
Custom…
Real Time Data Push
Proxy Service
Web-tier Compiler
Portal Deployment
RIA-PDF Generation
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Con dential.
28. LCDS.war
A le named « LCDS.war » is provided to start your Flex/Java projects.
! Structure of the WAR le:
! +WEB-INF/classes To place your Java classes
! +WEB-INF/lib Hosts the JAVA libraries of LCDS
! +WEB-INF/ ex Hosts the XML con guration les
! Remoting-con g.xml Destinations to Java classes for remoting
! Messaging-con g.xml Destinations for messaging
! Data-Management-con g.xml Destinations to Java assemblers
! Proxy-con g.xml Destinations to HTTP services
! Services-con g.xml Channels con gurations
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Con dential.
29. Java and ActionScript value objects
Java VO ActionScript VO
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Con dential.
30. 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
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Con dential.
31. Flex/Java classic architecture
UI LAYER
Web browser
AMF over HTTPs
SERVER Java servlet container (tomcat, WAS…)
PRESENTATION
/SERVICES/DAO Webapp (WAR)
LAYER
LiveCycle Data Services JAVA classes/services
JAVA <-> AMF
RPC services Messaging Data Mgt EventService.java public getEvents()
DATABASE/
STORAGE LAYER
WSDL JDBC
2008 Adobe Systems Incorporated. All Rights Reserved.
34. Channels
Message
MessageBrokerServlet Broker
Servlet-based endpoints
AMF Endpoint
Remoting
HTTPEndpoint
StreamingAMFEndpoint
HTTPProxy
Socket Server (LCDS only)
Flex client
Message
NIO-based endpoints
NIOAMFEndpoint
Data Management
NIOHTTPEndpoint
RTMPEndpoint
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Con dential.
35. Publish/Subscribe Messaging
LiveCycle DS / Blaze DS
!Client A
Message
Endpoint
Service
!Client B
!RTMP
!Client C
!AMF Publisher
!HTTP Subscriber
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Con dential.
36. BEST RIA WORKFLOW
DESIGNERS DEVELOPERS
FLASH CS5 FLASH CATALYST CS5 FLASH BUILDER 4
38. Publish/Subscribe Messaging : private messages
LiveCycle DS / Blaze DS
!Client A
to clientA Message
Endpoint
Service
!Client B
!RTMP
!Client C
!AMF Publisher
!HTTP Subscriber
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Con dential.
40. Data Push - Messaging
LiveCycle DS / Blaze DS
Messaging
Adapter X
System X
Message JMS
Endpoint JMS Adapter
Services Provider
Messaging
Adapter Y
System Y
!RTMP
!AMF Publisher
!HTTP Subscriber
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Con dential.
44. Data Management Services
LiveCycle Data Services
JDBC
Client A RDBMS
Adapter
Endpoint Data Object
DAO
Service Adapter
Client B
Hibernate
Hibernate
Adapter
CFC
Client C Adapter ColdFusion
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Con dential.
45. Data Management Bene ts
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. Con ict resolution
4. O ine Synchronization (thanks to Adobe AIR)
5. Lazy loading
6. Paging
7. Cross-client synchronization
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Con dential.
48. Code Driven Development
Code
•UI controls / formatters / styles
• Calculated elds
• Validation Rules
• Variants (conditional properties)
• Localization
• Security
• Data Retrieval Logic (paging, lazy loading)
• Data Synchronization Logic
Model
•Basic Data Description
Model Server-side code Client-side code
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Con dential.
49. Model Driven Development
Code
• Ad-hoc customization
• View composition
• External business/validation logic
Model
• Rich data model (data and behaviors)
• Calculated elds
• Validation Rules
• Variants (conditional properties)
• Localization
• Security
• UI hints/defaults: controls, formatters, styles
Model includes enough information to derive data
retrieval, persistence, and synchronization logic
Model Server-side code Client-side code
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Con dential.
50. Model Driven Development Bene ts
Productivity: Less code to write
! No persistence code or data sync code
! Value objects and service stubs are automatically generated
Maintainability: Less code to maintain
! Changes to the model are automatically propagated
Consistency
! Between client and server (for example, constraints and validation rules are de ned in the model, not duplicated using di erent
languages in the client and the server)
! Across views (for example, UI controls, styles, and validation rules are de ned in the model, not duplicated across di erent
views)
Approachability
! No code to write to implement complex capabilities such as persistence, synchronization, paging, lazy loading, o ine, etc.
Innovation:
! O ine and client synchronization capabilities
! Model is language independent and can be leveraged by di erent client technologies and tools (Flex, PDF, etc)
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Con dential.
53. Out of the browser
O ine/Online sync (salesForce)
Invoke OS Native Processes
Embed your own Java libraries
Soon on smartphones
ADOBE AIR 2.0
56. Learn a new language ?
Flex and Java
developers
FAST and FUN
57. Agile development ?
JavaUnit and FlexUnit
JavaPMD and FlexPMD
MAVEN, ANT
MVC frameworks
Hudson, Sonar reports
FlexCover, FlexCPD, load tests
Flex and Java
developers
Keep your tools and methodologies
58. Large-scale systems ?
Adobe J2EE
Flex and Java libraries
developers
Leading framework for Enterprise RIA
60. JAVA JAVA + FLEX
rockstar rockstar
61. e Flash Platform is the leading solution for rapidly building RIAs
Multiscreen
Content and Applications
TOOLS FRAMEWORK SERVERS SERVICES CLIENTS
FLASH PLATFORM
Flash Flash Flex Flash Media Flash Flash Player
Professional Catalyst Server Family Platform
Services
Flash Builder LiveCycle AIR
Creative Suite ColdFusion Analytics &
Optimization
© 2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Con dential.
All external content and images pending approvals.
62. Feel free to contact me
Michaël Chaize
Flash Platform Evangelist
My blog: www.RIAgora.com
@mchaize
©2010 Adobe Systems Incorporated. All Rights Reserved. Adobe Con dential. 62