CFUNITED 2008

Viewing By Month : March 2004 / Main
March 31, 2004
Eric Jansson (of ACS Technology Center) has written a great introductory article about Mach II on DevX. Really good to see coverage like this, especially with comments like "The Mach-II framework has only been around a short time, but it is shaping up to be the most important Web architecture around that supports ColdFusion".
My only (very minor) criticism would be recommending the use of the CFCInvoker_EventArgs style listener invocation (passing all the event arguments as separate ColdFusion arguments) instead of the CFCInvoker_Event style (passing a single event object argument) which has become the de facto preferred way because it provides more control, more flexibility and better maintainability.


Rey Muradaz asked about experiences with Flex on the San Diego CFUG mailing list and I responded - but then figured my response might have a broader audience so I'm posting it here:
Rey asked:
Seriosuly, if anyone out there has any experience with Flex (especially now that the NDA is over), I'm sure we'd all love to hear about it--how does it compare to developing a UI natively in Flash?
I've built a few applications with it - I actually rewrote a couple of CF apps that processed and manipulated XML as Flex apps to provide a better user experience.
First off, a little background (for those who don't know me):
My background is "enterprise programming" - COBOL, FORTRAN, C, C++, Java using (mostly) simple text editors rather than any visual development tools (except CASE tools which I've used in various forms for over a decade now). I've built system software products (compilers, code analyzers), bespoke desktop applications for insurance and actuarial companies and embedded systems for telecoms. In '97 I started developing bespoke web applications (using BroadVision initially and, hence, C++). I've been doing OO design and development for just over twelve years in structured teams that use version control, various degrees of formal QA and so on. In other words, I'm squarely in the target audience for Flex according to the information on the website.
Second, having never used visual development tools (actually I tried them but just couldn't deal with the generated code and the visual idiom - I'm too code-centric), I've never really managed to get the Flash authoring environment to do anything useful for me. I tried (and failed) to get Flash 5 to do *anything*. I managed a feeble interactive animation with Flash MX. I've built a couple of butt ugly and somewhat pathetic little forms-based applications with Flash MX 2004 Pro (where I didn't have to deal with the timeline).
So, how did I find Flex? Well, I love it. It totally fits the way I work - the underlying Model-View-Controller architecture feels very natural to me and the declarative style of programming the views with XML is clean and simple (especially if you have any background with AWT or Swing or similar OO GUI frameworks - I used to build X11 and Motif applications a decade ago and I've dabbled with Swing more recently). ActionScript 2.0 is "just another OO language" so that's been fairly easy for me to pick up. Being able to write view components directly in MXML is very elegant - just like custom tags in ColdFusion - although the way you declare 'parameters' for those components seems a bit funky to me.
Rey also asked:
Seems like learning one's way around the API might be a bit of effort, but the programmer interface appears much more familiar than what one gets from Flash. Or am I way off?
You're definitely in the ball park - the API is extremely well documented and pretty consistent. Flex uses a lot of HTML idioms in its markup so it's fairly approachable. The approach to building apps is going to be very familiar to Java and C++ programmers.
Finally, I'll note that the CASE tool my team use today for OO design (for Flash and CFMX) and full OO lifecycle (Java) has a sticker price of $6k for a node-locked developer license and $12k for a floating single-user server license (we have $90k in deployed licenses). That isn't unusual for enterprise development tools...


There are often questions about how to configure the CFMX / JRun web server connector that focus on the ignoreSuffixMap option and the AddHandler directive (Apache) / extension mappings (IIS). Tom Link (of Macromedia) posted the following information from the product team to the CFGURU mailing list and gave me permission to post it here on this blog as well.
Here's [...] some detailed explanations from engineering of the JRun connector, ignoreSuffixMap, and addHandler (Apache) / extension mappings (IIS).
Short answers:
If you want IIS to do NT authentication ignoreSuffixMap must be "true". Otherwise, it doesn't really make much difference, as long as the web server has extension mappings (IIS) or AddHandler (Apache) set. These settings guarantees that .cfm or .jsp files always get to JRun.
"true" is always OK for CFMX - but if you don't use IIS authentication, "false" shouldn't be considered a catastrophic malconfiguration requiring immediate correction.
DETAILS: Normally - the JRun connector is called by a web server at two points during request processing:
1. The connector is called early in the process as a filter.
This looks up the request URL in the JRun mappings. If a match is found, the URL may be changed. In IIS (but not in IIS6), the URL is changed to include the connector shareable library. For example, in IIS the URL is changed from /test.cfm to /scripts/jrun.dll/test.cfm. This insures that the request is to sent to step 2. The (potentially changed) URL is shown in the verbose log as JRun Filter mapped url to: '{new_URL}'."
2. The connector is called a second time as an Extension in IIS, as a Handler in Apache. This call passes the request to JRun to be processed.
When ignoreSuffixMap is set to "true" - step 1 ignores any mapping which starts with "*."
For files which are recognized by extension (like /test.cfm) rather than by a regular mapping (like /flashgateway) - this means that the URL is not changed by step 1, but is from the original request. The extension mappings in IIS or the AddHandler directives in Apache are relied on to get these requests to step 2.
With CFMX - ignoreSuffixMap should always be 'true" and extension mappings should be set for in IIS or AddHandler should be set in Apache. It is necessary for ignoreSuffixMap to be "true" if IIS is set to [Check File Exists]. If not, IIS will always check that jrun.dll exists - not the requested file.
The only apparent use for ignoreSuffixMap="false" is when JRun has a mapping for a certain file extension (e.g. *.txt) - but if JRun is down, you want the web server to process .txt files as normal. To do this, you would not create an extension mapping for *.txt in IIS, or an AddHandler for *.txt in Apache.
This is never the case for .cfm ( or for .jsp either!). If JRun is down, you never want the web server to send .cfm files or .jsp files directly to the browser. If you do set up extension mappings or AddHandlers, these will protect against sending the files directly to the user.


March 29, 2004
I keep getting asked about this so I figured I'd spell it out: you cannot download Mach II for PHP yet! It is still in development and will be available for public beta shortly. Keep an eye on the Mach II website for an announcement.


I've been using my cell phone as an alarm clock for quite some time and it has the annoying habit of going off at random times in the middle of the night! So I finally caved and bought a proper alarm clock. Not just any clock tho'... I wanted an "atomic" clock (sets itself using a radio signal from the atomic clock) and I wanted something a bit unusual. After a bit of Google research I settled on this purple Glo-worm (it's actually a lovely shade of dark purple!). The tail is actually a night-light :) A bit of a bargain too at only $20 instead of the usual $40!


Anticlue has posted a useful one-page summary of some design patterns giving an indication of what each is / might be used for. This sort of high-level information makes design patterns more digestible and helps developers remember them - there's always so much to learn in this area!


As an OpenOffice.org user, I find it interesting and somewhat gratifying that Microsoft considers OpenOffice.org enough of a threat that it is expending time and effort explaining why you should use MS Office instead (PDF - created not with Microsoft products but with QuarkXPress and Acrobat Distiller on a Mac!). For a very reasonable and balanced rebuttal, read Taran Rampersad's article on NewsForge.


"Old" news by now of course - the joys of living on the West Coast! - Flex is available and that press release has links to all of the juicy details which were posted to the site overnight.


March 27, 2004
After quite a long break, I'm now back in the land of UML pretty much full-time. My initial role at Macromedia was that of Senior Architect for the IT group and, after two and a half years on the Web Technology Group, I'm back in that role so I'm mostly working with the back office enterprise application teams. A key tool in my role as an architect is UML because it provides a consistent notation for describing all aspects of the IT systems, from the smallest interaction within the applications to the overall data flows and system interactions of the enterprise as a whole. UML can even describe the people processes and interactions.
For a long time, my UML tool of choice has been TogetherSoft's Control Center CASE tool. I started using it back in '97 (or early '98) when it was called Together/J. I've introduced it into every company I've worked at since then and for Java developers, it really is an impressive productivity tool - combining full visual (UML) software design with full EJB development and deployment, as well as software metrics and code auditing functionality. I introduced it to Macromedia back when I was part of the original Architecture Team and then the Web Technology Group picked it up to design and develop their applications. In fact, both Flash and ColdFusion developers use it, every day, to help them visualize their OO design.
And now I'm using it again. On a Mac. Even tho' we're still using version 5.5 (we weren't doing enough Java development to make it worthwhile upgrading) which was Windows-only. But it's a Java application and so, likely many pure Java apps, it can be persuaded to run on pretty much anything. I installed it on Windows 2000 using Virtual PC and simply copied the installation back to my Mac file system and tweaked the startup script to match the OS X Java install (the Windows install comes with both .bat and .sh startup scripts).
I'd forgotten how much I enjoyed using UML! I love how consistent the notation is and how you can describe systems at so many different levels, no matter how complex they are. And I love Together Control Center - I've tried a lot of different UML design tools but I keep coming back to this one as the most intuitive and most useful. I particularly like the integration of design patterns and refactoring tools and, when I'm using Java, the code audits and metrics.
TogetherSoft was bought by Borland a while back. You can find out more about the product on Borland's Together Control Center website.


March 26, 2004
After Ben Forta's recent rant about AT&T Wireless, Ted Neward also has a tale to tell where, this time, Archos are the villains (and ThinkGeek come out on top). I've resisted telling the story of my battles with various totally incompetent mortgage companies - I bought a house three years ago and refinanced twice since so I've had the misfortune to deal with several lenders in the intervening time. Customer "disservice" and financial institutions seem to go somewhat hand-in-hand over here :(


I was very pleased to read about Connexion's plans to roll out wireless Internet in planes this year with some European airlines. The ability to stay connected and get work done on long flights would allow business travelers to choose more convenient flight times without worrying about breaking up their work days so much. When visiting the East Coast right now I tend to take the overnight flight out and the morning flight back to minimize the loss of work time - with wireless inflight, I could fly during the day without losing prime time work hours. I hope it makes it to US airlines in the near future!


Information is starting to become available about the fifth annual Fusebox conference which will be in mid-September this year. It looks like repeating last year's format of Fusebox all day Saturday and Mach II on Sunday morning. It'll be in Rockville, MD on TeraTech's home turf (as opposed to the 2003 location of Las Vegas). Confirmed speakers so far include Hal Helms and Michael Smith. Keep an eye on the site!


In an attempt to reduce some of the confusion over DAO / Gateway and the Memento design patterns, I've updated the "Designing Models" section of the Mach II Development Guide and (temporarily) removed the code examples. People were following the examples too literally even tho' the guide said a more realistic example would use a bean to transfer data between the business object and the data access object (assuming the business object didn't expose all of its state through public getters anyway). The application from which the example code was drawn is no longer in use so it may be a while before I have a suitable 'real' example to put back up as part of the dev guide - most of the Mach II applications on macromedia.com are far too complex to use as examples. I've also removed the comments that applied to the (now non-existent) code examples.


March 25, 2004
For some reason I forgot to blog this ages ago when I added the page (and I didn't link it anywhere on my site): my travels. What jogged my memory was seeing the site (World 66) mentioned in a few blogs recently.


March 19, 2004
Pete Freitag just pointed me at Linode.com which offers user-mode Linux virtual hosting. It looks very interesting and they are actually using rack space at my current ISP, Hurricane Electric. I wonder if anyone has any comments about this service, good or bad, to help me decide whether I should switch to them so that I could run ColdFusion to power my website?


New Atlanta have recently clarified some more details about their forthcoming BlueDragon for .NET edition. In the same way that the existing BlueDragon/J2EE edition is a 'native' J2EE application that runs on top of any J2EE application server (or, indeed, any Servlet container) and provides deep integration with the J2EE layer, the BlueDragon for .NET edition will be a native .NET application that runs on top of the .NET Framework and provides deep integration with .NET.
Technically speaking, BlueDragon for .NET will be a ".NET Framework assembly" (much like BlueDragon/J2EE is available as a J2EE WAR/EAR) and will therefore have full native access to everything .NET provides.
This will give New Atlanta four different editions of BlueDragon:
  • Server - standalone, free, for Windows, Mac OS X, Linux.
  • Server JX - standalone, $999, for Windows, Mac OS X, Solaris, Linux.
  • J2EE - from $2499 (1-CPU) for any J2EE application server.
  • .NET - from $2499 (1-CPU) for any .NET Framework server.
For more details, see New Atlanta's BlueDragon product information pages.


Tim Blair was recently wrestling with the problem of trying to create a Java array of int within ColdFusion. Sounds easy enough, right? An array in ColdFusion is effectively implemented as a Vector in Java - with untyped elements (i.e., they are all generic Object types). In order to get a low-level Java array instead, you need to use Java's reflection capabilities. It's not as bad as it sounds tho', as you can see from Tim's blog entry that shows the solution ColdFusion code.
Christian Cantrell tackled a similar problem a while back, creating a Java byte array from ColdFusion.


March 18, 2004
Along with nearly five hundred other people, I recently part in a student's survey about bloggers' attitudes and behavior. The survey results are now available and make interesting reading, especially in regard to the issue of persistence of material (and, by association, long-term searchability).


March 17, 2004
That online tool I mentioned has been recreated as a set of VTMs for ColdFusion Studio / HomeSite+ and an extension for Dreamweaver MX. You can read the thread about this on the Mach II forum. The extensions are still being finalized but they are extremely useful already!


If you're thinking about using version control (and you should be!) then you're probably a bit confused by the vast area of tools out there. Ben Bishop of Daemon posted this great link on the cfaussie mailing list that does a fairly thorough feature comparison of all the major version control systems out there. The discussion that preceded and followed this post on the mailing list suggests that CVS is the preferred choice for many with Subversion being one to watch...


March 15, 2004
A nice article on CIO.com looks at several companies that have made the move to Open Source and tells their stories to dispel six myths of open source. In particular, I think it's interesting to read about companies switching their desktops to open source - whilst I'm an advocate of OpenOffice.org, I would never claim it to be as sophisticated or easy to use as Microsoft Office, nor would I claim any Linux GUI to be easier to use than Windows (for general users). Clearly some companies are finding it easy enough - which is an important landmark, in my opinion.


March 14, 2004
W3C has published the draft WCAG 2.0 document. You can see how the organization of the guidelines has changed in this mapping document. This will evolve over time as the draft is polished. I'll try to post updated URLs as that happens.


Writing beans is tiresome - all those getters and setters... just so much repetition! Here's a handy online tool to automate writing beans for the Mach II framework. In fact, the beans themselves aren't tied to the framework really so this could be useful even if you don't use Mach II! Kudos to Jon Block for this!


March 12, 2004
Much reported and discussed in the MS / .NET blogging world, it's interesting to read the story behind the recently announced slippage of Whidbey to mid-2005. I think Microsoft are taking quite a gamble by tying their tools upgrade to their server product upgrade. The server product market is very different to the tools market - people buying server products need to plan much further ahead because upgrades are often a strategic decision and have complex roll-out plans. On the other hand, people buying tools have much more latitude in how they handle upgrades and so the uptake of tools upgrades is general higher / faster than for server upgrades.
The commentary on a number of blogs echoes the same sentiment about this news: developers don't want to wait that long to get a better tools environment. Interestingly, those blogs don't seem to focus on the flipside which is the plan to upgrade from SQL Server 2000 to Yukon aka SQL Server 2005. That's going to be a major strategic upgrade for a large number of MS customers, yet MS is only supporting SQL Server 2000 (and SQL Server 7) until the end of 2005. That's a very short upgrade window considering the likely work involved.
Compare this with Macromedia's approach to product releases: the tools tend to get released together but on a different schedule to the server products and old versions of the server products tend to stay available (e.g., you can still buy CF5 from Macromedia - even tho' CFMX6.0 came out nearly 20 months ago and CFMX6.1 has been available for nearly eight months). This reflects the reality that many users can't upgrade server products for quite some time after launch - but they can upgrade tools much more easily.
Microsoft clearly have a very ambitious agenda with Whidbey, Yukon, Longhorn and .NET in general and I think this is an unfortunate turn of events for their developers but with such a vast undertaking there are bound to be some missteps along the way... but they probably need to heed calls for an updated Microsoft roadmap.


Steven Erat has published some cautionary notes about client variables. Useful to know that even if you switch from registry to database, CF will still continue to clean out the registry for the next 90 days which can cause ongoing performance issues.
My team's policy is to disable client variables and use session variables instead, setting an explicit cookie if you really need to remember a user (using an encrypted token than identifies the user). Session variables are held in memory so they are more efficient than client variables, you can chose when and what to persist to a database if you need to (e.g., the macromedia.com European online stores persist your shopping cart for three days but other session data is not persisted), you can still work with clustered instances (using sticky session or using session replication, depending on your needs). The best reason, in my opinion, to use session variables instead is that you can choose to leverage the underlying J2EE session variable mechanism and that means your users are no longer force-fed the permanent CFID / CFTOKEN cookies - instead they get an in-memory browser session cookie (jsessionid) that goes away automatically when the browser is closed. This is a better user experience since you're not cluttering up the user's hard drive and you're not transferring as much data with each request.


An updater for Dreamweaver is now available. This updater provides major performance and stability boosts according to the press release. I updated my Mac version and can confirm that this new updater is awesome - download it today and you'll love what it does for your productivity!


March 11, 2004
Already blogged elsewhere but worth repeating: you can get a hot fix for duplicate() (and GetHTTPRequestData()). And just a reminder that you can always see all the latest hot fixes for all versions of ColdFusion in Tech Note 17883.


Some fall out from the recent Lockergnome redesign (which from XHTML / CSS back to tables etc) - code is food draws an analogy between quick'n'dirty HTML and junk food... and draws some interesting comments. In particular, the folks defending poor HTML don't seem to have read much material from the likes of Russ Weakley - "Web Standards benefit your users, your clients and yourself".


March 10, 2004
Everyone should read this great little article on naming classes! Lots of solid advice here about choosing sensible, self-descriptive names for your classes (although, I agree with the reader comment that questions prefixing abstract class names with "Abstract" - in the same way I don't like to see interface names prefixed with "I" - those are implementation details that your users don't really need to know about in a lot of situations).


Guy Watson has put his MXDU and FlashForward presentations online. I missed his talk in Sydney and didn't get to FlashForward in the end so it's great see his slides on JSFL and read his notes (both online as FlashPaper - nice touch!). He talks about how you can automate tasks in Flash and how you can script access to the timeline and the panels and so on. It really opens your eyes to the power of the new extensibility API. He's also started publishing things to the new JSFL Extensions category on the Macromedia Flash Exchange.


March 9, 2004
If you're having problems with JDBC connections, you should read this Tech Note which provides a JAR file that lets you get more information error messages when a database connection fails for whatever reason.
Debbie Dickerson pointed out that "The fix from this JAR is included in CFMX U3 and 6.1, so it's not necessary to install it when using those versions."
My advice if you're still on CFMX 6.0 is to upgrade to CFMX 6.1 - it's a lot faster and it fixes a lot of issues!


Everyone is talking about Rich Internet Applications - even in the Java world! TheServerSide.COM has an interesting article about building Rich Internet Applications with Naked Object (a Java framework for empowering domain models). Their user interface is not exactly what I'd call an RIA: it has some powerful features - the visual clues for types of entities and the relatively free-form drag'n'drop aspect - but in terms of usability and user flow (and appearance) it's a little... well... "naked"... So, overall it's clearly a powerful framework and it's nice to see RIAs recognized as a powerful concept that delivers real ROI but the execution seems a little strange to me...


Having said there are exceptions to what you can and can't learn from a "Teach Yourself X in Y days / hours / minutes" style books, here is one of them: Ben Forta's "Sams Teach Yourself Regular Expressions in 10 Minutes". 150 pages of short (ten minute) lessons on regular expressions covering a variety of languages. Regular expressions are immensely powerful and yet can be very daunting for many people. Ben's book lets you take them on in bite-size pieces, learning at your own pace, and providing a good reference work for your shelf.


March 8, 2004
Quite a few folks have commented that accessing request scope in a view seems clumsy, in particular accessing request.event to get at the current event and its data. I've never really thought about it too closely. request.event seemed just fine to me.

Then Paul Kenney made an innocent observation on the Mach II forums and the lightbulb went on: views are executed as the body of a ViewContext object and so they have access to the arguments of the displayView() method! Duh! That means that we don't need to use request scope inside a view to access the event object - and we probably shouldn't (coupling of code to scopes etc) - we can use arguments.event instead. Or just simply event although I prefer the explicit scoping myself.
It also means that a view can find out its name (arguments.viewName) which may or may not be useful (for example if you define two views with different names but the same physical view file). You can also tell whether a view will render straight to the screen or whether it is going to be saved in a variable - by testing arguments.contentKey (which will be "" if no contentKey= attribute was specified in the <view-page> command).


I've used the self-checkout system at Home Depot and it's usually an exercise in frustration (but marginally less so than waiting in the endless lines because they never have enough clerks on duty!). I was therefore heartened to find this very critical article on Design by Fire - which was brought to my attention on David Bisset's flex-mx blog. At least I'm not alone in my frustration!


As part of a major security overhaul for Windows XP, Microsoft are planning to enhance browsing security by adding a pop-up manager as well as locking down scripting and local file access. The official details can be found in this MSDN article about the IE update.
The XP Service Pack looks to be a huge step forward in terms of security but also looks like it will cause quite a bit of disruption as it is expected to break some applications. Microsoft seem to be taking this very seriously and have gone to the unusual lengths of creating an online training course to explain the changes and how to prepare for them!


March 7, 2004
Dean Edwards has created an add-on for Internet Explorer that dynamically rewrites CSS2 so that IE can understand it (and therefore render it correctly). He's at great pains to point out that this is purely alpha software and very much a work-in-progress. His site explains it all - including showing the current source code (fascinating how he's implemented it!).


March 6, 2004
Christophe Coenraets shows how easy it is to write custom components for Flex using MXML. This will be familiar to ColdFusion developers who can writing custom tags for CFML using CFML itself. The process is very, very similar in Flex:
<MyComponent arg="value" />
will invoke a component in the file MyComponent.mxml. To be able to accept arguments in the component, you simply need to declare them in ActionScript:
<mx:Script>
var arg:String;
</mx:Script>
The type name in the declaration is optional.


March 5, 2004
Since I get asked questions about CF5 - particularly in terms of comparison to CFMX for specific tags - I figured I really ought to have a copy installed locally to experiment with. As most of you know by know, I run everything on a PowerBook G4 so, in order to run CF5, I have to install it on Virtual PC (where I already have HomeSite+ installed to try out various HomeSite / ColdFusion Studio extensions that folks have written).
I discovered I don't have IIS installed on my VPC copy of Windows 2000 so that was a good excuse to download and install Apache 1.3.29. That went very smoothly and took only a few minutes. The CF5 install took a bit longer but was still fairly straightforward. It complained that it couldn't find IIS but it didn't detect Apache so I was in for a manual install.
That manual install consists of copying
ApacheModuleColdFusion.dll
from
cfusion\bin
to
apache_root\modules
and adding two lines to the
httpd.conf
file:
LoadModule coldfusion_module modules/ApacheModuleColdFusion.dll
AddModule mod_coldfusion.c
Then I just restarted Apache and all was well. Almost. CF pages wouldn't process - they just came up as source code. Hmm. Well, it's Windows so I just rebooted and then restarted Apache again and it was fine. Great, so now I have CF5 locally and can try out code on that as well as CFMX6.1!


Nice to see IBM providing information for Windows developers on migrating to Java. They provide three roadmaps: for .NET, for Windows client/server and for ASP. Lots of reading for folks on the 'inside' looking out at the world of open standards...


March 3, 2004
Seen on MetaLogic, this wonderful little rant called Teach Yourself Programming In Ten Years. I've always been very concerned by the "Teach Yourself X In 10 Days" kind of titles - you just can't learn enough on your own in that time to be worthwhile! For example, I've been doing OO for 12 years now and I'm still learning. Don't expect to understand it all in a few days or even a few weeks. Sure, you can get into ColdFusion fairly quickly because it has an easy learning curve (deliberately) but it takes a while to master it.
So don't get frustrated that it takes you a while to learn OO. Don't expect to master it in weeks or months. Patience and perseverance will get you there in the end!


The South East Ohio Macromedia User Group are host to the Spring <br> 2004 Info Tech Conference featuring both a keynote and a "lunch'n'learn" session by Ben Forta, as well as sessions by John Cummings and Michael Hamilton (both of Macromedia). Four tracks cover a broad range of topics so it'll be an information-packed one day conference! Only three weeks away so register now to ensure your place - and it's only $15!
(But shouldn't it be Spring <br /> 2004...?)


March 2, 2004
Somehow I'd missed this blog before... Steven Erat, one of Macromedia's stalwart crew of ColdFusion support folks, has a blog called Talking Tree where he covers a lot of useful ColdFusion information in addition to a variety of other topics. Another great blog added to my daily blend of feeds in NetNewsWire!


A new ColdFusion Tech Note has just been published that explains how to use <cfproperty> to specify data type information for Web Services when you are returning ColdFusion Components from Web Service method calls. Since there's been quite a bit of confusion around <cfproperty>, it's really good to see this Tech Note online!
Update (3/8/2004): The author has updated the Tech Note in response to feedback from the community about the code examples.


March 1, 2004
Macromedia is offering free trials of Breeze Live (to the first 500 customers who sign up in North America). If you haven't used Breeze Live yet, you don't know what you're missing - it really is a great, hassle-free system!
According to that page, a new version of Breeze is coming in the Spring which adds a lot of new features, including interactive whiteboarding, file transfers, polls and custom application pods!




Hosting provided by