Untitled Document

Order Today!

Order Now & Save $49!
Table of Contents
Subject of the Book
Sample Chapter
Blitz Interview

Chapter 11 Samples

Errata/Updates

ISBN 0-9777622-2-X
Rich Internet Applications with Adobe Flex and Java: Secrets of the Masters Perfect AC (USA)

"I think that Flex for rich Internet client applications can become a major player. Its easy cross-platform support removes many programmer headaches, the component model offers powerful library reuse, and the result produces a very comfortable and appealing interface for the client to use. Because this book teaches you how to use Flex along with the dominant server-side development tool (Java), it?s an ideal introduction if you want to learn how to leverage these technologies."

- Bruce Eckel, author, Thinking in Java

 

Untitled Document

Table of Contents

CHAPTER 3

Flex Builder Development Environment
Installing and Configuring Flex Builder
Yet Another Hello World
Working with the Source Panel
Running HelloWorld
Building the Project
Flex Builder-Generated Files
Running Applications in Flex Builder
Simple Event Processing
A Pure MXML Version
Specifying Events Handlers
Layouts
View States and Transitions
Fine Tuning Flex Builder
Debugging with Flex Builder
Project Types and Data Access
Generated ActionScript
Flex Builder Tips and Keyboard Shortcuts
Using the Subversion Version Control System
Summary

CHAPTER 4
Learning Flex Through Applications
ActionScript Dynamic Classes
Methods, Functions, and Closures
Function Parameters
Getters and Setters
Functions as Objects
Closures
Asynchronous Programming
Data Binding
Binding in MXML
Binding Expressions
What’s Under the Hood?
Binding in ActionScript
Binding Inside a String and Application Parameters
Is Data Binding a Silver Bullet?
Program in Style or an Elevator Pitch
From COBOL to Flex
From Java to Flex
From Smalltalk to Flex
Object-Oriented ActionScript
Program Design with Interfaces and Polymorphism
Polymorphism Without Interfaces
Namespaces in ActionScript
Using Flex with JavaServer Pages
Retrieving Data from JSP
Sending Data from Flex to JSP
E4X, Data Binding, and Regular Expressions
Collections, Filters, and Master-Detail
Adding XMLListCollection
Filtering
Master-Detail Relationships
Adding a Data Feed
Events
Event Flow
Event Propagation or Bubbling
Custom Events
Let’s Go Through the Sequence of Events
Sending Data Using Custom Events
Summary
Endnotes

CHAPTER 5
A Complete Application with RPC Communications and JMS
Multi-Tier Application Development with Flex
Designing a Stock Portfolio Application
Adding a Data Grid
Adding the Charting Component
Chart/DataGrid Toggling
Dealing with Financial News
Configuring the Server-Side Destination and Proxy
Processing the News Feed
Introducing Item Renderers
Programming Master-Detail Relationships
Adding the JMS Feed to the Stock Portfolio
Introduction to the Java Naming and Directory Interface
Introduction to the Java Messaging Service
Two Modes of Message Delivery
JMS Classes and Terms
Types of Messages
How to Publish a Message
How to Subscribe for a Topic
Integrating Flex and Java Messaging Services
Configuring Flex Messaging Destination
Configuring ActiveMQ JMS
Writing the TickerFeed Java Program
Modifying the Flex Client to Consume Messages
Summary
CHAPTER 6
End-to-End Rapid Application Development with Flex
Data Management Services
Flex Data Management Services: Flex Remoting on Steroids
Flex Data Services and Automation: Problem Statement and Solution
A “Manual” FDS Application
Building the Client Application
Creating Assembler and DTO Classes
Implementing the Fill-Method of the DataServices Data Access Object
Implementing the Sync-Method of FDS Data Access Object
Implementing Update, Delete and Insert Methods
Introducing Metadata
Introducing Templates
Metadata for Input Parameters
Templates for Implementing the Fill Method
Completing the Fill Method
Setting JDBC Statement Parameters
Reading the Result Set Record
Templates for Implementing Sync-Method
Completing the Sync Method
The Template for the doCreate() Method
Who Owns the DAOFlex Templates?
Rapid Application Development with DAOFlex
DAOFlex Directory Structure and Configuration Files
DAOFlex Project Setup
Running the DAOFlex Code Generator
Testing and Using DAOFlex Output
Summary
Endnote

CHAPTER 7
How to Write Your Own Data Management Services
Setting the Scene
Introducing Destination-Aware Collections
Making a Destination-Aware Collection
Sensing Collection Changes
Anatomy of Managed ActionScript Objects
The Two Faces of ChangedObject
Tracking Collection Changes
Making Collection Updateable
Taking Care of Business: Transactions
Java Batch Gateway: Many Remote Calls in One Shot
BatchMember: Order Matters
BatchService
A Sample Application – An Order Entry
OrderEntryDemo Pre-requisites
OrderEntryDemo: OrdersPanel
OrderEntryDemo: OrderItemsPanel
OrderEntryDemo: OrderManager
Conclusion
Endnotes

CHAPTER 8
Enhancing and Extending Flex Controls
ComboBox Challenges
Making the Value Property Writeable
Adding a dataField Property
ComboBox with a Multi-Column List
Populating a ComboBox with Server-Side Data
Encapsulating a Remote Object Inside the ComboBox
Adding Auto- complete Support to TextInput
Integrating DataBase Search and ComboBox with Autocomplete
Separating Business Resources from Generic Component Code
Building a Business-Specific ComboBox
Building and Using the Resource Classes
Summary
Endnotes

CHAPTER 9
Trees with Dynamic Data Population
Basics of Tree Control
The Role of dataDescriptor
Moving to the Real Asynchronous World
No More Fake Remoting!
Design Patterns in Our Life
Data Transfer Object
Data Access Object
Asynchronous Completion Token
Assembler Design Pattern
Façade Design Pattern
Working with Employees and Departments
The Destination-Aware Tree
Adding Checkboxes to a Tree
Customizing the TreeItemRenderer
The Data Binding of Checkboxes
Summary

CHAPTER 10
Working with Large Applications
Deployment Scenarios
Application Domains 101
Runtime Shared Libraries 101
SWFs and SWCs: What’s Under the Hood
Making the FlexLibrary.swc
Making a FlexApplication Application
Static versus Dynamic Linking: Development Perspective
So, You Say Dynamic Linking?
Self-Initializing Libraries – Applications
Recap of the Technique
RSL versus Custom Loading of the Dynamic Code
The Custom Loading Example
Embedded Applications and the SWFLoader Object
Modules and ModuleLoaders
When Size Matters
Summary
Endnotes

CHAPTER 11
Advanced DataGrid
Making DataGrid Destination-Aware
Formatting with labelFunction
Formatting with Extended DataGridColumn
Introducing a Component Manifest File
More on Customizing the DataGridColumn
Improving FormattingManager
CheckBox as a Drop-In Renderer
DataGridColumn as ItemRenderer’s Knowledge Base
Nitpicking CheckBox
RadioButtonGroupBox as Drop-In Renderer
Computed Column Color
Computed Column Background
Runtime Column Styles Unleashed
Masked Input and Numeric Input
DataGrid with Automatic Item Editors
Data-Driven Programming Unleashed
Pivoted DataGrid or Property Bag
Summary
Endnotes

CHAPTER 12
Logging and Debugging Flex and Java Applications
Logging
Configuring Web Application (Server) Logging
Client-Side Logging
Using the Logging API
Server Log Target
Server Log Target Using Plain HTTP
The Client-Side Target
Creating a Tracing Console for LocalConnection
The RIA Aspect of Flex Logging
Debugging
Remote Debugging
Using Eclipse WTP for Debugging Java EE Servers
Configuring Tomcat
Deploying a Web Application Locally
Summary

CHAPTER 13
Building a SlideShow Application
Application Overview
Developing the SlideShow Component
Loading SlideShow Data
Animating the SlideShow
Adding Interactive Thumbnail Navigation
Developing the SlideShow Player Application
Developing the SlideShow Creator
Integrating with Flickr Web Services
Editing SlideShow Data
Developing the SlideShow Preview
Summary

CHAPTER 14
Developing Custom Charts
How to Develop a Chart from Scratch
Working with Larger Data Sets
Adding a Vertical Line
Non-Typical Use of Skinning
Adding Scrolling and Zooming
Summary

CHAPTER 15
Integration with External Applications
Overview of Flash External Interfacing Methods
Using External API
Two-Way Flex – OWC Spreadsheet Integration
Flex Application for OWC Spreadsheet Integration
HTML Template Embedding Our ActiveX Components
Making Flex and Spreadsheet Talk
Handling Flex Metadata Notification
Synchronizing Spreadsheet OWC with Flex Data Changes
Synchronizing Flex with Spreadsheet Data Changes
One-Way Flex-Excel Integration via the System Clipboard
Flex Embedded in Microsoft Excel
XML Format of External API
LiveLink: Standalone Flex - Excel
LocalConnection 101
Flex Excel Agent Application
Flex Standalone Application
Excel Worksheet – The Flex Agent Host
Getting in the Nitpicking Mood
Summary
Endnotes

Untitled Document

Book Authors

Yakov Fain is a Principal Consultant of Farata Systems. He's responsible for the Enterprise Architecture and emerging technologies. Yakov authored several Java books, dozens of technical articles, and his blog is hugely popular. Sun Microsystems has nominated and awarded Yakov with the title Java Champion. He leads the Princeton Java Users Group. Yakov holds BS and MS in Applied Math. You can reach him at yfain@faratasystems.com. He is Adobe Certified Flex Instructor.


Dr. Victor Rasputnis is a Managing Principal of Farata Systems. He's responsible for providing architectural design, implementation management and mentoring to companies migrating to XML Internet technologies. He holds a PhD in computer science from the Moscow Institute of Robotics. You can reach him at vrasputnis@faratasystems.com


Anatole Tartakovsky is a Managing Principal of Farata Systems. He's responsible for creation of frameworks and reusable components. Anatole authored number of books and articles on AJAX, XML, Internet and client-server technologies. He holds an MS in mathematics. You can reach him at atartakovsky@faratasystems.com


From the Blogosphere

"Let me tell you why this book is worth the money. At 700+ pages, this book is no lightweight. As you can see, this book covers a lot of Flex development scenarios. As the man on T.V. says "But wait! There is more! In addition to the book, you also get a DVD with all the sample code on it as well as 10 video sessions on Real World Flex.

P.S. - I was not compensated in any way to write this article. I paid $69.99 all by myself." read more...



"Yesterday, I received my copy of RIA with Adobe and Flex from SYS-CON editorial, and I admit that for first sentence the book gave me a good idea on how to work better with FDS and Java for serialization and Ascyncmenssage , other topics I took a little while and got extra work and points on how to extend default components.

The book's also send you the sessions at the Last Flex Seminars in NY where people like ( David Mendels, Jesse Warden and the guys at Farata System are in)." read more...




"Before I start talking about this book which inspired me to blog about it, let me bring up the topic of books for advanced level programmers in general..

It may be best to begin with a bunch of questions. We know of a lot of real good books that introduce various programming and software development topics but are there many books that deal with advanced topics? Is it that real experienced developers rather try it out and learn, or read up the manual, or talk to friends and strangers (on the discussion groups) and get their insight or read articles that discuss the advanced topics? Is it that the market for such books is limited and hence it’s not worth a good business idea? Is it that the thrill of gleaning from the heaps of data (good, bad and junk) on the internet is far more exciting? I certainly don’t know the answers but I do know that books on advanced topics are not that many." read more...

Sample Code


Download The RIA Book Sample code.

Brought To You By

Web Developer’s
& Designer’s Journal

For professional web developers and designers who use the award-winning products from Adobe to develop and design rich internet applications and content that engage people anywhere at anytime.
Download archives