ColdFusion MX Overview – XML, Java, and Flash in CFMX
Page 10 — XML, Java, and Flash in CFMX
If you’ve ever had to create, parse, or transform XML documents other than WDDX in ColdFusion 5, kudos to you for figuring it out! The way I used to do it was with Microsoft’s XML Services COM object. If you haven’t ever used it from within ColdFusion before, I’ll ruin the surprise — it sucked. It got the job done, but it was nasty from within CF5. ColdFusion MX now has native XML support for your XML documents. Once you start working with XML in CFMX, you’ll want to lean back and sip on a Piña Colada!
There’s a new XMLPARSE() function that takes a string of valid XML and turns it into something like a ColdFusion structure. You also get an XMLSEARCH() function that allows you to query an XML file with XPATH. Finally, there’s the new <CFXML>tag for creating new XML documents. Check out this Macromedia tutorial on native XML handling in CFMX.
Since CFML is getting converted to Java in CFMX, there are suddenly tons of interesting ways to use Java in your applications. For example, you can now use JSP custom tags just like you would use ColdFusion tags in your CFML code. Now that’s interesting, very interesting. Moouahaha! Java folk will drool at the ways in which you can use Java APIs, JavaBeans, EJBs, Servlets and even gain access to your CFML page’s underlying PageContext object. Check out Macromedia’s article on Using Java and J2EE elements in ColdFusion MX Applications for more information.
In ColdFusion 5, Flash wasn’t really “integrated” with ColdFusion Server very much at all. There were some limited things you could do to make a dynamic Flash movie, but anybody could do it with or without ColdFusion Server. In CFMX, Flash clients can actually dial in to your ColdFusion Components on your server as if they were part of the Flash movie itself. Even if the component in question happens to be on the other end of the Internet, it doesn’t matter.
This is quite a cool concept. It provides a way for a Flash movie to talk to the server without the page reloading. They call this a “rich client” system, meaning the Flash movie isn’t just a novelty object with a finite amount of tricks up its sleeve. Old school Flash movies would simply sit on your Web page and were basically limited to what was there when the page loaded. Now, you can create a full-blown application with no real need of the concept of going to a different Web page. For example, you can have a Flash movie that runs queries and pulls up the details of different products in a store on a single page.
Hey, if you don’t need to reload, then what do you need a browser for in the first place? Wouldn’t Macromedia love to own a market where developers create ColdFusion-powered Flash applications that don’t use Web browsers? After all, Flash is a better looking front end for the user and it doesn’t require a Web browser.
Nevertheless, I doubt this concept will ever fly seeing how the Flash authoring environment is not entirely text based and is still hard for coders to get used to. If Macromedia creates a new version of the Flash authoring environment that is text-oriented, I think coders will really start to take notice and Flash will get a lot of traction as an approachable rich client Internet application platform. I think ActionScript is a step in the right direction, but not the leap it needs to be in order to hook the masses. Until then, I’m anticipating that there will only be a trickle of rich Flash applications at big brand name product sites, seeing how there aren’t very many stellar Flash designers who wield code like the pros. Of course, as Dennis Miller always says, “That’s my opinion and I could be wrong.”