Flex on Rails: Building Rich Internet Applications with Adobe Flex 3 and Rails 2

Flex on Rails: Building Rich Internet Applications with Adobe Flex 3 and Rails 2

by Tony Hillerson, Daniel Wanja

NOOK Book(eBook)

$23.49 $39.99 Save 41% Current price is $23.49, Original price is $39.99. You Save 41%.
View All Available Formats & Editions

Available on Compatible NOOK Devices and the free NOOK Apps.
WANT A NOOK?  Explore Now

Product Details

ISBN-13: 9780321618153
Publisher: Pearson Education
Publication date: 12/23/2008
Series: Developer's Library
Sold by: Barnes & Noble
Format: NOOK Book
Pages: 360
File size: 4 MB

About the Author

Tony Hillerson is a Software Architect for EffectiveUI. He graduated from Ambassador University with a BA in MIS. On any given day, he may be working with Flex, Java, Rails, Maven, Ant, Ruby, Rake, Capistrano, or shell scripts. Tony maintains RubyAMF, a Rails plug-in that allows Flex applications to pass AMF messages to and from Rails. Tony has been a speaker at 360Flex, Adobe MAX, and RailsConf, as well as local user groups. In his nonexistent free time, Tony enjoys playing the bass, playing World of Warcraft, making electronic music, brewing beer, learning Latin, and studying philosophy. Tony lives outside Denver, Colorado with his wife and son, Titus.

Daniel Wanja, a native of Switzerland, currently lives in Denver, Colorado. He has lived in Denver for more than six years with his wife and three children, ages 5, 3, and 5 months. Daniel is a dynamic, skilled enterprise software architect and developer with over 20 years’ experience. He has worked in the banking, insurance, and high-tech industries around the world delivering mission-critical software. Daniel is president and part owner of two Flex and Ruby on Rails consulting agencies, Nouvelles Solutions, Inc., in Denver, http://n-so.com, and ProDesign Sarl in Geneva, Switzerland, http://prodesign.ch. Daniel started the http://onrails.org blog on Ruby on Rails and related matters in 2005.

Table of Contents


Foreword xv

Preface xvii

Acknowledgments from Tony Hillerson xxi

Acknowledgments from Daniel Wanja xxii

About the Authors xxiv


PART I: Flex and Rails Essentials


Chapter 1: Developing with Flex and Rails 3

Installation: What You Need to Get Running 3

The Structure of a Flex and Rails Application 6

The Example Code 9

Compiling MXML 9

Running the Rails Server 9

Summary 9


Chapter 2: Passing Data with XML 11

XML in Rails 11

XML in Flex 14

Getting XML to Flex 17

Sending XML to Rails 19

Mapping Data Types 21

Error Handling 25

Summary 28


Chapter 3: Flex with RESTful Services 29

Creating the Stock Portfolio Rails Application 29

Accessing Our RESTful Application with Flex 39

Summary 48


Chapter 4: Using Fluint to Test a Flex with Rails Application 49

Using Fluint to Write Your Flex Unit Tests 50

The Basics of Testing a Flex Application 51

Testing a Cairngorm-Based Application 59

Using Fixtures 79

Summary 83


Chapter 5: Passing Data with AMF 85

What Is AMF? 85

Benefits of AMF 86

RubyAMF 87

A Simple RubyAMF Example 95

A RESTful RubyAMF Integration 101

Summary 103


Chapter 6: Debugging 105

Logging 106

Debuggers 110

Command Line Debuggers 117

Debugging Communication 127

Summary 129


Chapter 7: Data Visualization 131

Online Analytical Processing (OLAP) 133

Advanced DataGrid 144

Charting 147

Summary 152


Chapter 8: Flex MVC Frameworks 153

What Do We Mean by a Framework? 153

Roll Your Own 154

Cairngorm at a High Level 154

PureMVC at a High Level 159

Stuff 163

Summary 182


Chapter 9: Performance and Optimization 185

Flex Performance 185

Rails Performance 206

Summary 211


PART II: Cookbook Recipes


Chapter 10: Source Control Flex and Rails Projects 215

Goal 215

Solution 215

Ignoring Files in Subversion 215

Git 217

Discussion 218

Summary 219


Chapter 11: Building Flex with Rake 221

Goal 221

Solution 221

Rake Is Your Friend 221

The Rakefile 222

Summary 225


Chapter 12: Deploying Flex and Rails Applications 227

Goal 227

Solution 227

Capistrano 227

Deploying with Capistrano 228

Summary 232


Chapter 13: Read the Source! 233

Goal 233

Solution 233

The Beauty of Open Source 233

The Rails Source 235

Flex Source 238

Generated Flex Source 240

Summary 243


Chapter 14: Using Observers to Clean Up Code 245

Goal 245

Solution 245

BindingUtils and ChangeWatchers in Flex 245

Taking Action on ActiveRecord Lifecycle Events 248

Summary 250


Chapter 15: Authenticating 251

Goal 251

Solution 251

Authenticating Users 251

Installing restful_authentication 251

Summary 257


Chapter 16: Reusing Commands with Prana Sequences 259

Goal 259

Solution 259

Sequences 259

Prana’s EventSequence 261

Summary 265


Chapter 17: Hierarchical Data with RubyAMF 267

Goal 267

Solution 267

Nested Sets 267

Summary 273


Chapter 18: Advanced Data Grid and Awesome Nested Set 275

Goal 275

Solution 275

Overview 275

Create the Rails Application and Database 275

Creating a Script to Load the Data 276

Flex Application 279

Adding CRUD 282

Summary 287


Chapter 19: Runtime Flex Configuration with Prana 289

Goal 289

Solution 289

IoC, Eh? 289

Summary 293


Chapter 20: Server Push with Juggernaut 295

Goal 295

Solution 295

Push Technology 295

Juggernaut 295

Creating the Rails Messaging Application 297

Creating the Flex Messaging Client Application 299

Summary 301


Chapter 21: Communicating between Flex and JavaScript 303

Goal 303

Solution 303

Communication between Flex and JavaScript 303

Security 303

Building the Samples 304

ExternalInterface 304

SWFObject and Prototype 305

ExternalInterface in Action 305

Flex-Ajax Bridge in Action 309

Summary 311


Chapter 22: File Upload 313

Goal 313

Solution 313

File Upload 313

Creating the Rails Application and Installing attachment_fu 315

Using Flex’s FileReference Class to Upload

One or Several Files 316

Using Flex URLLoader Class to Upload a PNG File 318

Summary 320


Index 321

Customer Reviews

Most Helpful Customer Reviews

See All Customer Reviews