I have a dream that one day I, who have truly immersed my whole mind in the spirit of the universality of the internet, will be able to rise up and leverage the true beauty of its creed: "All things for All people All the time." I have a dream that one day in the black pleather swivel chairs of innumerable boardrooms the sons of former Webservice Atheists and the sons of former SOAP evangelists will be able to sit down together at a table of universal data connectivity. I have a dream that one day even the state of hard coded spaghetti, a desert state, sweltering with the heat of inflexibility and lack of scalability, will be transformed into an oasis of tight encapsulation and loose coupling. I have a dream that my seven children will one day live in a world where their web applications will not be judged by the location of their hosts but by their data connectivity methodology. I have a dream today.
Okay, a somewhat dramatic preamble for the scenario I'm about to pose and solicit feedback on, but my coding is my art and passion, so it's only natural that my vision would move me. :D This is the name of my vision: Universal DataSource. If so inclined, please take a moment to view the very brief nutshell of my vision (http://www.universaldatasource.com/uds.ppt <http://www.universaldatasource.com/uds.ppt> - 5 slides) so that the remainder of this post will have some semblance of sense. If you like, you may also preview a somewhat more detailed description of my vision (http://www.universaldatasource.com/universaldatasource.doc <http://www.universaldatasource.com/universaldatasource.doc> - 4 pages) before reading onward, too, but that one isn't required. Let me begin by saying that I have been using CF from version 4 through 7, and fusebox 2 and 3 for a few years. I know how to create CFCs and utilize them locally and as web services. I have been programming in VB for several years, have read two books on OO (headfirst patterns and OO for Management), and so fancy myself to have a solid comprehension of the subject matter. The extent of my Webservice usage of CFCs is to do nothing more than return a data set based on incoming attributes; no methods, properties, etc. being returned by the service beyond the single data set and whatever default methods come with it. This is my foundation. As a proof of concept of my vision (proving to myself that I COULD create an abstract object using CFCs AND proving that I COULD return that object either locally OR via a webservice), I created a test abstract CFC which was composed of several underlying subclass CFCs. I was able to successfully instantiate the object when calling the CFC locally. However, when calling the same abstract CFC as a webservice...well, suddenly we weren't in Kansas anymore, Toto. I saw CF complaints that were totally unexpected, errors, learned all about the need to refresh my webservice cache after modifying the CFCs, etc. Bottom line is I wrestled with it so much and so long that I finally had to face the possibility that perhaps what I'm trying to do just is not possible. I turned to Google as usual, knowing that within that plethora of knowledge exists every question that could ever be asked and its answer. But alas I could find nothing to substantiate or refute my vision. And so I turn to my fellow CF and OO people to show me the light. The question then: Is it possible to create a Webservice using a CFC that is composed of underlying CFCs, and return that composite object to the caller, who in turn can execute methods, set properties, etc.? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| Discover CFTicket - The leading ColdFusion Help Desk and Trouble Ticket application http://www.houseoffusion.com/banners/view.cfm?bannerid=48 Message: http://www.houseoffusion.com/lists.cfm/link=i:4:223885 Archives: http://www.houseoffusion.com/cf_lists/threads.cfm/4 Subscription: http://www.houseoffusion.com/lists.cfm/link=s:4 Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4 Donations & Support: http://www.houseoffusion.com/tiny.cfm/54

