Dinowitz | Adobe ColdFusion Anthology | E-Book | www.sack.de
E-Book

E-Book, Englisch, 528 Seiten

Dinowitz Adobe ColdFusion Anthology

The Best of The Fusion Authority
1. ed
ISBN: 978-1-4302-7214-4
Verlag: Apress
Format: PDF
Kopierschutz: 1 - PDF Watermark

The Best of The Fusion Authority

E-Book, Englisch, 528 Seiten

ISBN: 978-1-4302-7214-4
Verlag: Apress
Format: PDF
Kopierschutz: 1 - PDF Watermark



Adobe ColdFusion remains one of today's significant Web services tools and frameworks, and stands to become even more important as a possible primary tool for cloud development as well. As important as ColdFusion is and continues to become, we thought it would be a good idea to tap the leading authority on ColdFusion, the Fusion Authority. We asked this community to compile the most important issues in their developer and user experiences into one single volume-an anthology of the most current technical articles published in the Fusion Authority Quarterly Update. In it, you'll get the following: The best and brightest ColdFusion expertise available today, from inside and outside of Adobe The most up-to-date content with the latest releases of ColdFusion Case studies and instances where ColdFusion is used in cloud-based development Rather than take a soup-to-nuts approach that covers every single topic, including those that most people have learned already, this book takes specific items of interest and explains them so that you can hit the ground running, rather than having to wait until you've read the entire book.

Michael Dinowitz is the primary author and has been using ColdFusion since the original beta. He's well known for taking complex topics and explaining them in simple terms without losing their full power. Other authors are also selected from the top tier of the ColdFusion development world.

Dinowitz Adobe ColdFusion Anthology jetzt bestellen!

Weitere Infos & Material


1;Title Page;1
2;Copyright Page;2
3;Contents at a Glance;3
4;Table of Contents;6
5;Foreword;25
6;About the Authors;26
7;About the Technical Reviewers;37
8;Acknowledgments;38
9;Introduction;39
10;PART 1 ColdFusion Fundamentals;41
10.1;CHAPTER 1 Working with Application.cfc;42
10.1.1;What Is an Application?;42
10.1.2;Adding Application Variables;44
10.1.2.1;The onApplicationStart Method;44
10.1.2.2;The onSessionStart Method;45
10.1.2.3;The onRequestStart Method;46
10.1.2.4;The onError Method;47
10.1.2.5;The onApplicationEnd Method;49
10.1.2.6;The onSessionEnd Method;49
10.1.2.7;The onRequestEnd Method;50
10.1.2.8;The onRequest Method;50
10.1.3;A New Application Structure;52
10.2;CHAPTER 2 Application.cfc Reference;53
10.3;CHAPTER 3 From User-Defined Functions to ColdFusion Components;55
10.3.1;User-Defined Functions;55
10.3.1.1;Creating UDFs;56
10.3.1.1.1;Naming a UDF;56
10.3.1.1.2;Assigning UDFs to Other Scopes;57
10.3.1.1.3;Placing the UDF Definition;57
10.3.1.1.4;The cffunction Tag;58
10.3.1.1.5;The cfargument Tag;60
10.3.1.1.6;The Arguments Scope;61
10.3.1.1.7;Local Variables;63
10.3.1.1.8;The cfreturn Tag;64
10.3.1.1.9;UDF Variable Protection;64
10.3.1.2;Executing UDFs and Passing Parameters;65
10.3.1.2.1;The cfinvoke Tag;66
10.3.1.2.2;Passing by Reference Versus Passing by Value;68
10.3.1.3;Error Handling;68
10.3.1.4;A Full UDF Example;69
10.3.2;ColdFusion Components;70
10.3.2.1;Creating CFCs;71
10.3.2.1.1;Instantiation and Constructors;72
10.3.2.1.1.1;The cfobject Tag;73
10.3.2.1.1.2;The cfinvoke Tag;73
10.3.2.1.1.3;The createobject() Function;74
10.3.2.1.1.4;Method Chaining;74
10.3.2.1.1.5;The new Keyword;75
10.3.2.2;The CFC Container: The cfcomponent Tag;77
10.3.2.3;Implementing Security;77
10.3.2.4;Defining Properties: Variables and This;78
10.3.2.4.1;Variables Scope;78
10.3.2.4.2;This Scope;78
10.3.2.5;Understanding Encapsulation;79
10.3.2.6;Caching Components;79
10.3.2.7;Using Inheritance;81
10.3.2.7.1;Overriding and Super;81
10.3.2.7.2;Two Different Views;81
10.3.2.7.3;Type Checking Parents and Children;83
10.3.3;Parting Words;84
10.4;CHAPTER 4 onMissingTemplate()—Error Handler and So Much More;85
10.4.1;404 Missing Template Handling: Step-by-Step Basics;85
10.4.2;Setting Global Handlers;86
10.4.3;What Is the onMissingTemplate() Method, and When Is It Called?;87
10.4.4;Method Invocation within onMissingTemplate();89
10.4.5;When Errors Occur;90
10.4.6;Reasons for Calling onMissingTemplate();91
10.4.6.1;Request Errors and Corrected Requests;91
10.4.6.2;Content Redirects;92
10.4.6.3;Dynamic Page Generation;93
10.4.6.3.1;Examining Template Requests;94
10.4.6.3.2;Attractive URLs for Frameworks;96
10.4.6.4;Fusebox URL;96
10.4.6.5;Model-Glue URL;97
10.4.6.6;Mach-II URL;97
10.4.7;We’re Not Done Yet, but ...;97
10.5;CHAPTER 5 “Say What?” Handling Unknown Messages with onMissingMethod();98
10.5.1;Get the Message?;98
10.5.2;Message Received;100
10.5.3;Defining onMissingMethod();101
10.5.4;Using onMissingMethod();102
10.5.4.1;Automatic get/set Methods;103
10.5.4.2;Method Injection;105
10.5.4.3;Aspect-Oriented Programming;107
10.5.5;Summary;109
10.5.6;Further Reading;109
11;PART 2 Document Creation in ColdFusion;110
11.1;CHAPTER 6 PDF Support in ColdFusion;111
11.1.1;PDF Support in ColdFusion MX 7 (and Earlier);111
11.1.2;PDF Support in ColdFusion 8.0.1 and beyond;112
11.1.3;The isPDFFile and isPDFObject Functions;113
11.1.4;What Exactly Can We Do with the cfpdf Tag?;115
11.1.4.1;Getting and Setting Information;116
11.1.4.2;Adding a Watermark;120
11.1.4.3;Using DDX;122
11.1.5;Where to Go Next;124
11.2;CHAPTER 7 Image Processing in ColdFusion;125
11.2.1;The cfimage Tag;125
11.2.1.1;Getting Image Dimensions with cfimage;125
11.2.1.2;Resizing an Image with cfimage;126
11.2.1.3;Multiple Operations with cfimage;127
11.2.1.4;Creating a CAPTCHA Image with cfimage;127
11.2.2;The New Image Processing Functions;128
11.2.2.1;Image Drawing Functions;128
11.2.2.1.1;Drawing an Image from Scratch;128
11.2.2.1.2;Using a Custom Drawing Stroke;129
11.2.2.1.3;Drawing Text on an Image;130
11.2.2.1.4;Text Drawing Options;131
11.2.2.1.5;Additional Image Drawing Functions;131
11.2.2.2;Image Manipulation Functions;132
11.2.2.2.1;ImageScaleToFit;132
11.2.2.2.2;Additional Image Manipulation Functions;133
11.2.2.3;Image Information Functions;133
11.2.2.3.1;Displaying the Digital Camera Model and EXIF data;133
11.2.2.4;Image I/O Functions;135
11.2.3;Summary;135
12;PART 3 Essentials to Server Productivity;136
12.1;CHAPTER 8 Tuning Your Java Virtual Machine:Finding Your Ideal JVM Settings Through Metrics Log Analysis;137
12.1.1;How the JVM Fits into ColdFusion;137
12.1.2;Enabling Metrics Logging;138
12.1.2.1;Editing the jrun.xml File;139
12.1.2.2;Splitting Up the JRun Logs;140
12.1.2.3;Examining the Metrics Logging Output;141
12.1.2.4;Finding the Proper Start and Maximum Heap Memory Size;142
12.1.2.5;The New Metrics;143
12.1.3;Summary;144
12.2;CHAPTER 9 The Shoemaker and the Asynchronous Process Elves;145
12.2.1;The Experiment;146
12.2.2;Before Employing Those Elves;149
12.2.3;The Moral of the Story;149
12.2.4;Further Reading on Asynchronous Gateways;150
12.3;CHAPTER 10 Asynchronous Gateways Step-by-Step;151
12.4;CHAPTER 11 You Might Have a Performance Bottleneck If…;154
12.4.1;If You Can't Tell a Manager from an Employee, You Might Have a Performance Bottleneck;154
12.4.2;If Your Foreign Key Values Are Not Defined in the Database . . .;156
12.4.3;If You Relate Data Between Tables, but Neglect to Inform the Database . . .;158
12.4.4;If You Store a Comma-Delimited List of Foreign Keys in a Single Column . . .;159
12.4.5;If You Use SELECT MAX( ID ) to Get the Primary Key of a Newly Inserted Record . . .;162
12.4.6;If Your Only Transactions Are Between You and a Cashier . . .;163
12.4.7;If You Think the Difference Between Char and Varchar Is Typing Three More Letters . . .;165
12.4.8;If You Think UTF-8 Is One of Those TV Channels You Used to Get with Rabbit Ears . . .;167
12.4.9;If You Use More Than One Query to Read Data from Multiple Tables . . .;168
12.4.10;If the Only Index Your Database Knows Is Next to Your Middle Finger . . .;170
12.4.11;If You Run Calculations on Data Using Your Application Code . . .;172
12.4.12;If the Contents of a Table Depend on the Phase of the Moon . . .;175
12.4.13;Build It Correctly from the Beginning;175
13;PART 4 Communication and Integrating with Other Technologies;176
13.1;CHAPTER 12 An Introduction to Consuming and Deploying Web Services in ColdFusion;177
13.1.1;Deploying a Web Service from a CFC;178
13.1.2;Using a Remote Proxy Object;179
13.1.3;Deploying a Web Service from a Standard ColdFusion Page;180
13.1.4;Invoking Web Services in ColdFusion;183
13.1.4.1;Using the cfinvoke Tag;183
13.1.4.2;Using the CreateObject() Function;184
13.1.4.3;Using the cfhttp Tag;185
13.1.4.4;Invoking a CFM-Based Web Service;186
13.1.5;Error Handling;187
13.1.6;And Finally...;188
13.2;CHAPTER 13 Web Services and Complex Types;189
13.2.1;Consuming Web Services;189
13.2.2;Passing Complex Types as Input Parameters;189
13.2.2.1;Nested Complex Types;191
13.2.2.2;Arrays;192
13.2.2.3;Attributes;194
13.2.3;Going to the Source;196
13.2.3.1;When Structures Are Not Enough;201
13.2.3.2;WSDL2Java;203
13.2.4;Working with Complex Return Values;204
13.2.5;Publishing Web Services;205
13.2.6;Other Resources;209
13.3;CHAPTER 14 Type Validation When Returning an Array of Components;210
13.3.1;Validating a Component;210
13.3.2;Validating an Array of Components;211
13.4;CHAPTER 15 Sending E-mail the Right Way;212
13.4.1;The From Conundrum;213
13.4.2;Checking E-mail Origins;215
13.4.2.1;Sender Policy Framework (SPF);215
13.4.2.2;DomainKeys Identified Mail (DKIM);216
13.4.2.3;Real-Time Blacklists (RBLs);216
13.4.3;Checking Sender Behavior;216
13.4.3.1;Checking the Content;217
13.4.4;Miscellaneous Commandments;218
13.5;CHAPTER 16 ColdFusion and Microsoft Exchange;219
13.5.1;ColdFusion and Exchange Integration Requirements;219
13.5.2;ColdFusion Exchange Tags;220
13.5.2.1;Using cfexchangeconnection;220
13.5.2.2;Using cfexchangecalendar, cfexchangecontact, and cfexchangetask;221
13.5.2.2.1;Creating an Item Structure;221
13.5.2.2.2;Creating and Getting Items;222
13.5.2.2.3;Getting a UID;222
13.5.2.2.4;Updating and Deleting Items;223
13.5.2.2.5;Working with Attachments;223
13.5.2.3;Using cfexchangemail;224
13.5.2.3.1;Dealing with Meeting Requests;224
13.5.2.3.2;Moving Mail Items;225
13.5.2.3.3;Setting Attributes on Mail Items;225
13.5.2.4;Using cfexchangefilter;225
13.5.3;ColdFusion and Exchange Interaction Best Practices;226
13.5.3.1;Connections;226
13.5.3.2;Service Accounts;227
13.5.3.3;SSL;227
13.5.4;Conclusion;227
13.6;CHAPTER 17 BlazeDS ;228
13.6.1;Messaging Patterns;228
13.6.1.1;BlazeDS vs. LCDS;229
13.6.1.2;What’s in a Name?;229
13.6.1.2.1;Enterprise Service Bus (ESB);229
13.6.1.3;Installing BlazeDS with ColdFusion;231
13.6.2;Messaging Framework;231
13.6.2.1;Running BlazeDS with a ColdFusion Event Gateway;233
13.6.3;Concluding Thoughts;238
14;PART 5 Object-Oriented Programming (OOP);240
14.1;CHAPTER 18 Object-Oriented Programming: Why Bother?;241
14.1.1;OOP Fundamentals;241
14.1.1.1;Inheritance;242
14.1.1.2;Polymorphism;242
14.1.1.3;Encapsulation;242
14.1.2;So What?;243
14.1.3;Where Do I Start?;243
14.2;CHAPTER 19 The Object-Oriented Lexicon;245
14.3;CHAPTER 20 Design Patterns: Exposing the Service Layer;253
14.3.1;Model-View-Controller (MVC);253
14.3.1.1;Handling Sessions;254
14.3.1.2;Returning Data;256
14.3.1.3;Accessing the Application;257
14.3.2;Conclusion;257
14.4;CHAPTER 21 Beans and DAOs and Gateways, Oh My!;258
14.4.1;A Four-Layer Cake;258
14.4.2;A Review of Recipes;260
14.4.3;What Are Those Ingredients?;263
14.4.4;Eating Well or Poor Diet?;264
14.4.5;Real-World Web Applications;265
14.5;CHAPTER 22 SOA for the Rest of Us;266
14.5.1;SOA Components;266
14.5.2;SOA vs. OOP;266
14.5.3;SOA Code Organization;268
14.5.4;Web Services;268
14.5.4.1;Data Formats;269
14.5.4.2;Security;270
14.5.4.3;Error Handling;272
14.5.4.4;Discoverability;273
14.5.4.5;Service Interfaces;274
14.6;CHAPTER 23 How Base Classes Can Help You Generate Your Applications;275
14.6.1;Base Class Basics;275
14.6.2;It’s All About the API;277
14.6.2.1;A Simple Example;278
14.6.2.2;The Variables Define the API;278
14.6.3;Types of Methods;280
14.6.4;Metaprogramming;280
14.6.5;Summary;281
14.6.6;Resources;281
15;PART 6 ColdFusion Frameworks;282
15.1;CHAPTER 24 An Introduction to Frameworks;283
15.1.1;Can Someone Just Tell Me What They ARE Already?;283
15.1.2;Frameworks that Focus on HTML and the User Interface;284
15.1.2.1;Fusebox;284
15.1.2.2;Model-Glue;285
15.1.2.3;Mach-II;286
15.1.2.4;ColdBox;286
15.1.3;Back-End and Service Frameworks;287
15.1.3.1;ColdSpring;287
15.1.3.2;Reactor;287
15.1.3.3;Transfer;288
15.1.4;Summary;288
15.2;CHAPTER 25 Fusebox 5 Fundamentals;289
15.2.1;Fusebox—What and Why;289
15.2.1.1;Fusebox Concepts;290
15.2.1.2;Fusebox Benefits;292
15.2.2;What’s New in Fusebox 5 and 5.5;294
15.2.2.1;Compatibility;294
15.2.2.2;Coding Styles;294
15.2.2.2.1;XML for Circuits and Fuseactions;294
15.2.2.2.2;CFCs As Circuits, Methods for Fuseactions;295
15.2.2.2.3;Implied Circuits, CFCs for Fuseactions;295
15.2.2.2.4;Implied Circuits, CFMs for Fuseactions;296
15.2.2.2.5;Implied Circuits, XML for Fuseactions;296
15.2.2.3;Multiple Applications;296
15.2.2.4;Application Initialization;297
15.2.2.5;Custom Lexicons;297
15.2.2.6;XML Grammar;300
15.2.2.7;Dynamic Do;302
15.2.2.8;Application.cfc Support;302
15.2.2.9;The event Object;302
15.2.2.10;The myFusebox Object;303
15.2.2.11;Search-Engine-Safe URLs;303
15.2.2.12;Runtime Control;303
15.2.3;Why Upgrade?;304
15.3;CHAPTER 26 Mach-II Fundamentals;305
15.3.1;Introducing the Mach-II Framework;305
15.3.2;Installing Mach-II;307
15.3.3;The Mach-II Application Skeleton;310
15.3.4;Mach-II’s XML Configuration File;310
15.3.4.1;Properties;314
15.3.4.2;Listeners;315
15.3.4.3;Event Filters;315
15.3.4.4;Plugins;316
15.3.4.5;Event Handlers;316
15.3.4.6;Page Views;316
15.3.5;Hello Mach-II;316
15.3.6;Let’s Get Personal;318
15.3.7;Conclusion;321
15.4;CHAPTER 27 Model-Glue Fundamentals;322
15.4.1;A Recipe for Spaghetti;323
15.4.2;Fun with Front Controller;324
15.4.3;Installing Model-Glue;324
15.4.4;Starting a New Model-Glue Application;325
15.4.4.1;Creating the Application Manually;325
15.4.4.2;Automating Application Creation;326
15.4.5;Model-Glue XML Files in a Nutshell;327
15.4.5.1;ColdSpring XML Configuration File;327
15.4.5.2;The Model-Glue XML Configuration File;328
15.4.5.2.1;The controllers Block;330
15.4.5.2.2;The event-handlers Block;331
15.4.5.2.3;The event-types Block;331
15.4.6;Your First Model-Glue Application;332
15.4.6.1;Setting Up the Form;332
15.4.6.2;Adding Functionality;333
15.4.6.3;Finishing Up;335
15.4.7;Conclusion;336
15.5;CHAPTER 28 ColdSpring Fundamentals;338
15.5.1;The Problem of Dependency in System Design;338
15.5.2;ColdSpring and Component Management;339
15.5.3;Some Development Concepts;341
15.5.3.1;Unit Testing;341
15.5.3.2;Test-Driven Development;341
15.5.3.3;Too Many Dependencies Can Spoil the Model;341
15.5.3.4;Back to ColdSpring;342
15.5.4;Using ColdSpring to Architect Your Application in Logical Tiers;342
15.6;CHAPTER 29 Reactor Fundamentals;344
15.6.1;The Origin of Reactor;344
15.6.2;A Look at Reactor;345
15.6.3;Installing Reactor;346
15.6.4;Some Simple Reactor Examples;347
15.6.5;How Does Reactor Work?;348
15.6.6;Slightly More Interesting Reactor Examples;349
15.6.7;Using Iterators;351
15.6.8;Learning More About Reactor;352
15.7;CHAPTER 30 Developing Applications with Transfer;353
15.7.1;Transfer—An ORM for ColdFusion;354
15.7.2;Installing and Configuring Transfer;354
15.7.2.1;The Transfer Data Source Configuration File;354
15.7.2.2;The Transfer Object Configuration File;355
15.7.2.3;Mapping Objects to Tables;357
15.7.2.3.1;Object Composition;357
15.7.2.3.1.1;Many-to-One Composition;358
15.7.2.3.1.2;One-to-Many Composition;358
15.7.2.3.1.3;Many-to-Many Composition;358
15.7.2.3.2;Lazy Loading;358
15.7.2.3.3;Decorators;359
15.7.3;Using Transfer;360
15.7.3.1;Creating the TransferFactory;360
15.7.3.2;Creating a New Object;361
15.7.3.3;Saving an Object;361
15.7.3.4;Retrieving an Object;363
15.7.3.5;Deleting an Object;364
15.7.3.6;Using List Queries;365
15.7.4;Other Transfer Functionality;366
15.7.5;Conclusion;367
15.8;CHAPTER 31 FW/1: The Invisible Framework;368
15.8.1;What Happened to ColdFusion’s Simplicity?;369
15.8.1.1;Initialization with Application.cfc;369
15.8.1.2;Convention over Configuration;369
15.8.2;Getting Started with FW/1;370
15.8.3;A Real Application;372
15.8.4;Beyond the Basics;376
15.8.5;Summary;378
16;PART 7 Designing the User Interface;379
16.1;CHAPTER 32 Separating Layout from Logic;380
16.1.1;Why Does Separation Matter?;380
16.1.1.1;More Maintainable Business Calculations;380
16.1.1.2;Less Formatting Duplication;381
16.1.1.3;Template Simplification;381
16.1.1.4;Better Support for Specialization;381
16.1.2;Three Helpful Techniques;381
16.1.2.1;Business Objects;381
16.1.2.2;Custom Data Types;382
16.1.2.3;View CFCs;384
16.1.3;Conclusion;387
16.2;CHAPTER 33 Creating Dynamic Presentations in ColdFusion;388
16.2.1;Overview;388
16.2.2;cfpresentation - The Shell;389
16.2.3;cfpresenter - The People;390
16.2.4;cfpresentationslide - The Message;390
16.2.5;Putting It All Together;392
16.2.6;The Amazing Potential;392
16.3;CHAPTER 34 Working with JSON and cfajaxproxy;394
16.3.1;Working with JSON;394
16.3.2;Special Considerations with JSON Serialization;398
16.3.3;Working with cfajaxproxy;398
16.3.4;A More Complex Example;401
16.3.5;Conclusion;403
16.4;CHAPTER 35 Prototyping for Interface Driven Architecture: Easing the Transition from Prototype to Application;404
16.4.1;Introduction;404
16.4.2;The Challenges;404
16.4.3;Suggestions;405
16.4.3.1;CSS;405
16.4.3.2;Tables;405
16.4.3.3;Complete Your Prototype;406
16.4.3.4;AJAX;406
16.4.4;Conclusion;406
17;PART 8 Development Tools;407
17.1;CHAPTER 36 Turbo Charging Eclipse;408
17.1.1;The Right Eclipse Package;409
17.1.2;Preparing for Turbo Charging;409
17.1.2.1;Getting a Fresh Instance of Eclipse;410
17.1.2.2;Setting Eclipse Preferences;410
17.1.2.3;Installing Core Tools;412
17.1.2.4;Refresh Eclipse Data;413
17.1.3;Initial Benchmark;414
17.1.3.1;Diagnosing Plug-in Issues;414
17.1.3.2;eclipse.ini;415
17.1.4;Switching Eclipse from the Default JVM;417
17.1.5;Conclusion;418
17.1.6;References;418
17.1.6.1;More Learning;418
17.1.6.2;SUN JVM Information;419
17.1.6.3;BEA JRockit Information;419
17.1.6.4;Products/Downloads;419
17.1.7;Eclipse Runtime Commands and Various JVM Options;419
17.1.7.1;Eclipse Runtime Commands;420
17.1.7.2;JVM Options;420
17.1.7.3;Sun JVM OPTIONS;421
17.1.7.4;JRockit JVM Options;422
17.2;CHAPTER 37 An Introduction to ColdFusion Builder;424
17.2.1;Why Eclipse?;424
17.2.2;Installation;425
17.2.3;Learning Eclipse;425
17.2.3.1;Projects;425
17.2.3.2;Rearranging Your Workspace;426
17.2.3.3;Ask for help;426
17.2.4;ColdFusion Server Integration;426
17.2.4.1;Configuring Your Server;427
17.2.4.2;RDS Dataview;428
17.2.4.3;Services Browser;428
17.2.4.4;CF Admin and Server Monitor;428
17.2.5;CFC Wizard;429
17.2.6;CF Builder Extensions;429
17.2.6.1;Building an Extension;430
17.2.7;Debugging Applications;434
17.2.7.1;Configuring Your Application for Debugging;434
17.2.8;Conclusion;436
17.3;CHAPTER 38 The ColdFusion Debugger Explained: Interactive Step Debugging for ColdFusion 8 and 9;437
17.3.1;What Is Interactive Step Debugging?;437
17.3.2;Getting Started with the CF8 Debugger;440
17.3.2.1;First Stop: Setting a Breakpoint;441
17.3.2.2;Observing Program State Information (Variables);442
17.3.2.3;Stepping Through Lines of Code;443
17.3.2.3.1;Understanding the Stack Trace;444
17.3.2.3.2;Stepping into Other Files;445
17.3.2.3.3;Stopping on an Error;445
17.3.3;Configuration and Security;446
17.3.3.1;Configuring RDS in both Eclipse and ColdFusion’s Administrator Page;446
17.3.3.2;Configuring the Multiserver or J2EE Configuration;447
17.3.4;Differences Between the Debugger and FusionDebug;447
17.3.5;Summary;448
17.4;CHAPTER 39 Getting Started with Subversion;449
17.4.1;Introducing Subversion;449
17.4.2;Setting Up Subversion on a Windows Server;450
17.4.2.1;Creating Your First Repository;452
17.4.2.2;Importing a Web Site Project into a Repository;454
17.4.2.3;Setting Up the Client Machine;457
17.4.3;Updating, Committing, and Resolving with Subversion;458
17.4.4;Always More to Learn;460
17.5;CHAPTER 40 Subversion in the Workflow;461
17.5.1;The Advantages of Subversion;461
17.5.2;Terminology;462
17.5.3;Using Subversion;462
17.5.3.1;Creating Your First Repository;463
17.5.3.2;Setting Up Your Project;463
17.5.3.2.1;Starting with a Blank Project;463
17.5.3.2.2;Importing Existing Code;463
17.5.3.3;Creating Your First Revision;464
17.5.3.3.1;Committing Your Code and Updating from the Repository: Some Tips;464
17.5.3.4;Branching and Tags;464
17.5.3.4.1;Creating Branches and Tags;464
17.5.3.5;Synchronizing Changes Between Branches and the Trunk;465
17.5.3.5.1;Resolving Conflicts;465
17.5.3.5.2;Creating Patches;465
17.5.4;Taking Advantage of Advanced SVN Features in Your Workflow;466
17.5.4.1;Reverting to a Previous Version;466
17.5.4.2;Working with Locks;466
17.5.4.3;Exporting from SVN;466
17.5.5;Conclusion;466
17.6;CHAPTER 41 Advanced Subversion;467
17.6.1;Branching;467
17.6.1.1;Creating a Branch;468
17.6.1.2;Successful Branching;469
17.6.2;Tagging;470
17.6.3;Switching;471
17.6.4;Merging;471
17.6.5;Blame Game;474
17.6.6;Properties;474
17.6.7;Where to Go From Here;476
17.7;CHAPTER 42 Automating Your Development with Ant;477
17.7.1;Ant Installation;478
17.7.2;Eclipse Integration;479
17.7.3;The Ant Buildfile;480
17.7.3.1;Buildfile Components;480
17.7.3.1.1;Projects;480
17.7.3.1.2;Targets;480
17.7.3.1.3;Tasks;481
17.7.3.2;A Hello World Buildfile;482
17.7.3.3;Ant Properties;484
17.7.3.4;Dynamic Data in Ant;485
17.7.4;Copying and Zipping Files;486
17.7.5;Interacting with Subversion;489
17.7.6;Sending E-mail;490
17.7.7;Some Ant Guidelines;491
17.7.8;Conclusion;491
18;Index;493



Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.