A Flash Based Coldfusion Debugger
For better or for worse I'm a mac user. One of things I thought was kind of neat while using a PC at work was the dockable debug pane for debugging Coldfusion. Unfortunately it doesn't work in Safari or Firefox, so when I switched (back) over to a Mac at work I was stuck with "Classic" debugging.
I rarely seem to use the Coldfusion debugger anymore, and I didn't really use it that much to begin with. Mainly because it gets in the way and disrupts the formatting of the HTML. When I do need some additional debugging info I can usually get it faster by inserting a cfdump or someother temporary output right in my code, rather than opening Coldfusion Administrator, logging in, turning on debugging, and rerequesting my page.
I was thinking about how the "dockable" debugger doesn't work on my mac, and how disruptive to the page the classic debugger is when it occured to me I should write my own. The debug layout code used by Coldfusion is unencrypted, and pretty well commented so it isn't that difficult to make a change or extend. I had previously made a modified version of the classic debugger, to solve a problem with the display of arguments passed to cfc functions when the arguments contain a html string.
So I made one. It works, but is by no means complete. It's more of a proof of concept, a code sketch. I made it using Flash, I needed some more AS 2.0 component experience anyway. It uses two flash movies, one on the page being debugged and one that opens in a pop-up window. The two flash movies communicate between each other using LocalConnection. As for the data I am reusing the xml data that Coldfusion generates for debugging in Dreamweaver, and passing that into the flash movie on the page being debugged as a FlashVar.
The result is a Flash based Coldfusion Debugger, capable of holding the debug data from multiple pages. Unfortunately, at this point it is a bit too slow to be useful (on my mac at least) and it runs into trouble with same sort of problem I previously had to revise the "Classic" debugger for. But it is a start.
I suspect that the speed issues are due to my over reliance on DataGrid rather than designing a proper layout, and the fact I'm reparsing and repopulating the DataGrids' dataProviders everytime I load coldfusion page. I also think that the format of the XML could be different, or at a minimum less work for Flash to consume. So there are improvements to be made.
Feel free to have a look at where I am so far with it. Let me know what you think, and if it's worth developing further.
You can download it here: http://blog.onepixeloff.com/files/cfdebug/flash-CFDebugger-01.zip
http://blog.onepixeloff.com/trackback.cfm?A3D5EDED-F2C7-FD81-F94E16C3D83F394C
Thanks,
Keith
http://blog.onepixeloff.com/files/cfdebug/flash-CF...
I wouldn't recommend using my flash based debugger though (unless you are just interested in seeing how I did it), it was really just a proof of concept. There is a lot of functionality missing.
Instead I strongly recommend using coldfire: http://coldfire.riaforge.org/
Coldfire accomplishes the same things I set out to do, but better :).