| | Copyright |
| | Dedication |
| | Preface |
| | | Remoting: More Than Just a Name |
| | | What Is Remoting Used For? |
| | | What This Book Contains |
| | | What This Book Is Not |
| | | The Book at a Glance |
| | | We'd Like to Hear from You |
| | | Future Versions of Flash |
| | | Acknowledgments |
|
| | Part I: Remoting Fundamentals |
| | | Chapter 1. Introduction to Flash Remoting |
| | | Section 1.1. What Is Flash Remoting? |
| | | Section 1.2. How Does Flash Remoting Work? |
| | | Section 1.3. Benefits |
| | | Section 1.4. Flash Remoting Requirements |
| | | Section 1.5. Supported Platforms |
| | | Section 1.6. Hello World |
| | | Section 1.7. Workflow Example |
| | | Section 1.8. Architecture for Flash Remoting Applications |
| | | Section 1.9. Wrapping Up |
|
| | | Chapter 2. Installing, Configuring, and Using Flash Remoting |
| | | Section 2.1. Installing Flash Remoting |
| | | Section 2.2. Naming Your Services |
| | | Section 2.3. The Authoring Environment |
| | | Section 2.4. Sequence of Events in Flash |
| | | Section 2.5. Making a Remote Call |
| | | Section 2.6. Wrapping Up |
|
| | | Chapter 3. Client/Server Interaction, UI Components, and RecordSets |
| | | Section 3.1. User Interface Components |
| | | Section 3.2. Flash UI Components Set 2 and Flash Charting Controls |
| | | Section 3.3. Macromedia's DRK |
| | | Section 3.4. Text Objects |
| | | Section 3.5. Building Forms in Flash MX |
| | | Section 3.6. The RecordSet Class |
| | | Section 3.7. DataGlue |
| | | Section 3.8. Wrapping Up |
|
| | | Chapter 4. Flash Remoting Internals |
| | | Section 4.1. The NetConnection Class |
| | | Section 4.2. Using NetServices |
| | | Section 4.3. Creating Responder Functions |
| | | Section 4.4. RecordSet Object |
| | | Section 4.5. The Timeline |
| | | Section 4.6. Catching Errors |
| | | Section 4.7. Registering Objects |
| | | Section 4.8. Wrapping Up |
|
|
| | Part II: The Server-Side Languages |
| | | Chapter 5. Flash Remoting and ColdFusion MX |
| | | Section 5.1. Introduction to ColdFusion MX |
| | | Section 5.2. How ColdFusion Fits into Flash Applications |
| | | Section 5.3. Service Name Mappings |
| | | Section 5.4. ColdFusion Pages Versus ColdFusion Components |
| | | Section 5.5. Loading Query Data Incrementally |
| | | Section 5.6. ColdFusion Security: Authenticating Users |
| | | Section 5.7. Updating Data on the Server |
| | | Section 5.8. Wrapping Up |
|
| | | Chapter 6. Server-Side ActionScript |
| | | Section 6.1. What Is Server-Side ActionScript? |
| | | Section 6.2. The CF Object |
| | | Section 6.3. When to Use Server-Side ActionScript |
| | | Section 6.4. Datatype Conversions |
| | | Section 6.5. Handling Errors with try/catch |
| | | Section 6.6. Extending Server-Side ActionScript with Java |
| | | Section 6.7. Wrapping Up |
|
| | | Chapter 7. Flash Remoting and Java |
| | | Section 7.1. The Flash Remoting Gateway |
| | | Section 7.2. Supported Platforms |
| | | Section 7.3. Setting Up Flash Remoting for J2EE |
| | | Section 7.4. Service Types |
| | | Section 7.5. Datatype Conversions |
| | | Section 7.6. Service Lookup |
| | | Section 7.7. Invoking Service Methods |
| | | Section 7.8. Architecture and Design |
| | | Section 7.9. Referencing the Request and Session |
| | | Section 7.10. Saving and Sharing State |
| | | Section 7.11. Databinding |
| | | Section 7.12. Security |
| | | Section 7.13. OpenAMF |
| | | Section 7.14. Wrapping Up |
|
| | | Chapter 8. Flash Remoting and .NET |
| | | Section 8.1. Overview of .NET |
| | | Section 8.2. Connecting to .NET |
| | | Section 8.3. Datatype Conversions |
| | | Section 8.4. Database Access with ADO.NET |
| | | Section 8.5. State Management |
| | | Section 8.6. Error Handling in Flash Remoting with .NET |
| | | Section 8.7. Wrapping Up |
|
| | | Chapter 9. Flash Remoting and PHP |
| | | Section 9.1. Introduction to PHP |
| | | Section 9.2. Installing AMFPHP |
| | | Section 9.3. Datatype Conversions |
| | | Section 9.4. Using AMFPHP with Web Services |
| | | Section 9.5. Using AMFPHP with PHP Classes |
| | | Section 9.6. Working with a Database |
| | | Section 9.7. Wrapping Up |
|
|
| | Part III: Advanced Flash Remoting |
| | | Chapter 10. Calling Web Services from Flash Remoting |
| | | Section 10.1. What Is a Web Service? |
| | | Section 10.2. Why Use Flash Remoting? |
| | | Section 10.3. Web Services from a ColdFusion Server |
| | | Section 10.4. Web Services from an ASP.NET Server |
| | | Section 10.5. Wrapping J2EE and JRun Web Services |
| | | Section 10.6. Web Services from PHP |
| | | Section 10.7. BabelFish Web Service |
| | | Section 10.8. Datatype Conversions |
| | | Section 10.9. Creating a Flash MX Web Service Extension |
| | | Section 10.10. Wrapping Up |
|
| | | Chapter 11. Extending Objects and UI Controls |
| | | Section 11.1. Principles Behind UI Components |
| | | Section 11.2. DataProviderClass and DataGlue |
| | | Section 11.3. Enhancing a Standard Control |
| | | Section 11.4. Enhancing the RecordSet Class for Interactivity |
| | | Section 11.5. Adding Validation to a TextField |
| | | Section 11.6. Wrapping Up |
|
| | | Chapter 12. Flash Remoting Best Practices |
| | | Section 12.1. Separation of Tasks |
| | | Section 12.2. Separation of Functionality |
| | | Section 12.3. Server-Proofing the Application |
| | | Section 12.4. Component Use |
| | | Section 12.5. Clean API |
| | | Section 12.6. Loops and Repeated Operations |
| | | Section 12.7. OOP or Not OOP |
| | | Section 12.8. ColdFusion RecordSets |
| | | Section 12.9. Implementing Caching |
| | | Section 12.10. What to Walk Away With |
| | | Section 12.11. Wrapping Up |
|
| | | Chapter 13. Testing and Debugging |
| | | Section 13.1. Debugging Flash Remoting Applications |
| | | Section 13.2. Trapping Errors |
| | | Section 13.3. The Flash ActionScript Debugger |
| | | Section 13.4. NetConnection Debugger |
| | | Section 13.5. NetDebug.as |
| | | Section 13.6. Trace Debugging |
| | | Section 13.7. Testing Server-Side Code |
| | | Section 13.8. Using a TCP Trace Utility |
| | | Section 13.9. Debugging SQL Code |
| | | Section 13.10. Wrapping Up |
|
| | | Chapter 14. Real-World Application |
| | | Section 14.1. General Considerations |
| | | Section 14.2. Requirements |
| | | Section 14.3. Specifications |
| | | Section 14.4. The Modules |
| | | Section 14.5. Flash Remoting Code |
| | | Section 14.6. Testing and Debugging |
| | | Section 14.7. Completed Application |
| | | Section 14.8. Future Expansion |
| | | Section 14.9. Wrapping Up |
|
| | | Chapter 15. Flash Remoting API |
| | | Section 15.1. Entry Headings |
| | | DataGlue Object |
| | | DataGlue.bindFormatFunction( ) Method |
| | | DataGlue.bindFormatStrings( ) Method |
| | | NetConnection Class |
| | | NetConnection.addHeader( ) Method |
| | | NetConnection.call( ) Method |
| | | NetConnection.clone( ) Method |
| | | NetConnection.close( ) Method |
| | | NetConnection.connect( ) Method |
| | | NetConnection.getDebugConfig( ) Method |
| | | NetConnection.getDebugId( ) Method |
| | | NetConnection.getService( ) Method |
| | | NetConnection.ReplaceGatewayUrl( ) Method |
| | | NetConnection.RequestPersistentHeader( ) Method |
| | | NetConnection.setCredentials( ) Method |
| | | NetConnection.setDebugId( ) Method |
| | | NetConnection.trace( ) Method |
| | | NetDebug Object |
| | | NetDebug.trace( ) Method |
| | | NetDebugConfig Class |
| | | NetDebugConfig.getDebug( ) Method |
| | | NetDebugConfig.setDebug( ) Method |
| | | NetServices Object |
| | | NetServices.createGatewayConnection( ) Method |
| | | NetServices.getVersion( ) Method |
| | | NetServices.setDefaultGateway( ) Method |
| | | RecordSet Class |
| | | RecordSet.addItem( ) Method |
| | | RecordSet.addItemAt( ) Method |
| | | RecordSet.addView( ) Method |
| | | RecordSet.filter( ) Method |
| | | RecordSet.getColumnNames( ) Method |
| | | RecordSet.getItemAt( ) Method |
| | | RecordSet.getItemID( ) Method |
| | | RecordSet.getLength( ) Method |
| | | RecordSet.getNumberAvailable( ) Method |
| | | RecordSet.isFullyPopulated( ) Method |
| | | RecordSet.isLocal( ) Method |
| | | RecordSet.removeAll( ) Method |
| | | RecordSet.removeItemAt( ) Method |
| | | RecordSet.replaceItemAt( ) Method |
| | | RecordSet.setDeliveryMode( ) Method |
| | | RecordSet.setField( ) Method |
| | | RecordSet. sort ( ) Method |
| | | RecordSet.sortItemsBy( ) Method |
|
|
| | Part IV: Appendixes |
| | | Appendix A. ActionScript Datatype Conversion |
| | | Section A.1. ColdFusion Datatype Conversion |
| | | Section A.2. Java Datatype Conversion |
| | | Section A.3. C# Datatype Conversion |
| | | Section A.4. Visual Basic Datatype Conversion |
| | | Section A.5. PHP Datatype Conversion |
| | | Section A.6. SOAP Datatype Conversion |
|
| | | Appendix B. Books and Online Resources |
| | | Section B.1. Flash Remoting Resources |
| | | Section B.2. Flash and ActionScript Resources |
| | | Section B.3. Other Books of Interest |
| | | Section B.4. Other Links of Interest |
|
| | | Appendix C. Specification and Implementation for a Real-World Application |
| | | Section C.1. Notes from the Designer |
|
|
| | Colophon |
| | Index |