Flex 2.0 with CFMX 7.0.2 - SUCCESS!!

Hurray! I finally was able to make Flex 2 work tonight with CFMX 7.0.2 on a remotely hosted, shared server. No more Unknown destination 'ColdFusion' errors!! Here's how I did it:

1. On the local machine without CFMX 7.0.2, put the default services-config.xml file (from CFMX 7.0.2) into: C:\CFusionMX7\wwwroot\WEB-INF\flex (create the folder, if you don't have it already).

2. When you create your flex app, specify the following by right-clicking on the application name (from within the Navigator in the top-left box) and choosing properties:

a. Flex Compiler tab -> Additional compiler arguments ->

-services "C:\CFusionMX7\wwwroot\WEB-INF\flex\services-config.xml" -locale en_US
b. Flex Server tab -> Flex root folder: c. Flex Server tab -> Flex server URL:

3. Now, FTP up your cfc into the folderofyourapp folder.

4. In your flex app, reference your RemoteObject's source as folderofyourapp.cfcname (without the .cfc at the end)

5. When you Save and Run your app in flex, you'll need for FTP up the .html and .swf files into your folderofyourapp/projectname/bin/filename (.html and .swf) and then Run again to actually see them.

This requires NO editing of the services-config.xml file.

Notes:

1. By using Web Services (mx:WebService tag) you don't need to do anything at all with this. Just point to the wsdl file and you're all set. However, this uses bloated XML for moving the data.

2. You can try to set your endpoint in the mx:RemoteObject, but this will use regular old flash remoting (the old one prior to Flex 2) which is better than XML, but aparently not compacted binary.

3. Using the method I described above uses AMF the new flash binary compressed format, which should be much faster and allow for future integtraion of Flex Data Services.

Thanks to Jeff Houser for his great article at: http://coldfusion.sys-con.com/read/256202.htm

Thanks also to everyone who tried to help me figure this out at: http://www.forta.com/blog/index.cfm/2006/2/1/ColdFusion-Flex-2-Sample-Application and http://www.adobe.com/cfusion/webforums/forum/messageview.cfm?catid=585&threadid=1169105&highlight_key=y&keyword1=7%2E0%2E2

Please comment on this entry, if you found this a useful way to run Flex 2 and Cold Fusion MX 7 together.

Time to "PUSH" the limits on the Internet

I'm truly excited about a new product produced by Adobe/Macromedia called Flex 2.0. This amazing product should be available by Summer 06 and will completely revolutionize the Internet.

I know you've heard this before, but I've been involed in telecommuncations since 1982 and have watched the Internet become main-stream and eveolve. Here's why I think Flex 2.0 will change the world:

Everyone (developers and users) currently have accepted and live inside a client-server paradigm. We expect to send a page request to a server, then get a reply. We understand that sometimes we have to 'refresh' the page. We never expect the page to actually change itself.

With Flex 2.0 sockets remain open and a server can acually push data to the end-user. Take a moment to think about what this means. Effectively, this is equivalent to having your keyboard and monitor directly connected to another computer.

Here are a few examples of ways we can use this new PUSH technolgoy that I've heard recently:

  • Auctions: No need for special java or ajax to try to poll data periodically. Just let the data flow (push) to the end-user.
  • Stock data/trades
  • Customer support: Suppose someone is in the middle of placing an order and requsts online help. The rep could actually see their order and work with the end-user real-time in a simultaneous shopping cart

    With Flex 2.0 a 'shared object' is created and the Flex Data Server handles distributing any changes to that object out to all who are sharing it!

    I truly beleive that not only will Adobe become the next Microsoft, but that the Internet will completely change. I think the past 10 years have been the Internet just warming up. With univeral broadband and push technology, its a whole new world!

    Please comment on this article with your ideas for Push technology. What could it possibly do, that our minds are not open to because we're trapped in the client-server transaction-request paradigm.