This is a new, heavily modified fork of aconran's DirectCFM (http://extjs.com/forum/showthread.php?t=67983) that I am calling ExtDirectCF.
Link to original details about this project and it's evolution:
Register exposed cfcs as in a stateful bean in application scope.
Fine grain which cfcs and methods to register.
Limit method registration to specific access scopes (remote, public, package, private).
Preserve ColdFusion Role based access enforcement.
Better error handling and reporting similar to java Exceptions.
Re-written in efficient cfscript.
Full scoping of access permission and variables.
Managment Console style application to manage registered cfcs.
Saving and loading of Registry.
Finish mass recursive directory scan
Un-Registering individual methods from registered components via Management Console
* Added new Editable Paging Grid example (with Ext.ux.RowEditor) that drives
off a query object loaded into it's cfc's stateful bean in application scope.
Demonstrates a full CRUD api implentation. (thanks Ben Nadel for the info on
deleting rows from a query object)
* Added an index.cfm page in the ExtDirect directory with links to:
- ExtDirectCF Management Console
- the API.cfm page for debugging
- a link to force the framework to refresh
- a new readme file and release notes(taken from the forum)
- a link to the forum itself
- and a link to the above mentioned paging grid example.
* Added support for the Ext.Direct 1.0.1 spec.
* Fixed paths to extjs in console.cfm and example.cfm (you will still need to modify these for your own environment)
* Fixed dialogue size issue for add button in IE
* Fixed nasty bug killing directFn. directFn now works. See example.cfm.
* Added ability to load and save the Registry to disk.
* Init() attempts to load Registry from disk. New arguments for Init() to specify path and file for saving Registry.
* Added onApplicationEnd() to application.cfc to ensure Registry is backed up to disk when application scope expires.
* ExtDirect.cfc Self Registers.
* Added support for 'Stateful Namespaces'. Example: You have a stateful cfc loaded into application or server scope. If you try to invoke it from previous versions, you'll have a new instance of that cfc. Now, you can tell it to use the existing stateful cfc instance. Components.Ext.ExtDirect has a 'Stateful Namespace' of 'application.ExtDirect'
* Some major internal registry structure changes.
* Added Management Console (console.cfm) for managing registered components. It does not yet have the ability to unregister individual methods, but it will register and unregister full components.
* Moved the Component Registry into a private member to prevent abuse (accessible via getExtDirectRegistry()).
* Moved generateAPI() into the private scope and replaced with getAPIScript() in the public scope.
* The script API is now cached internally to the bean's private scope (accessed via getAPIScript()) and is updated whenever a component/method is added or removed. This eliminates json reserializing every time the api is loaded into a page, thus saving cpu cycles.
* Init() method now takes ns and desc as arguments to store internally and be used when generating the API script.
* Added unRegisterComponent() and unregisterMethod to remove entries from the registry. These will be useful for the Management Console.
* ExtDirect.cfc now registers itself upon initialization. This is to support the upcomming Management Console.
* Fixed bug for cffunctions that do not use the 'access' attribute (shame on you! you really should be using it!) and defaults to 'public' scope
* API.cfm changed to reflect new call to get API script
* Fixed bug in Example.cfm
* Expanded Example.cfm to better show off features and usage.
* Initial Release
p.s. If the zip file is giving anyone problems, let me know. Try to download with firefox or chrome. IE seems to corrupt it somehow.