-- MySQL dump 10.11
--
-- Host: localhost    Database: jr_modelglue
-- ------------------------------------------------------
-- Server version	5.0.45-community-nt

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;

--
-- Table structure for table `galleon_conferences`
--

DROP TABLE IF EXISTS `galleon_conferences`;
CREATE TABLE `galleon_conferences` (
  `Id` varchar(35) NOT NULL default '',
  `name` varchar(255) NOT NULL default '',
  `description` varchar(255) NOT NULL default '',
  `active` tinyint(1) default NULL,
  PRIMARY KEY  (`Id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `galleon_conferences`
--

LOCK TABLES `galleon_conferences` WRITE;
/*!40000 ALTER TABLE `galleon_conferences` DISABLE KEYS */;
INSERT INTO `galleon_conferences` VALUES ('4BE3CF40-3048-55C9-43A13458187E38A3','Model-Glue: ColdFusion','Discussion of the Model-Glue Framework for ColdFusion',1),('4BE41784-3048-55C9-437DD4A7B98E265D','Model-Glue: Flex','Discussion of the Model-Glue Framework for Flex',1);
/*!40000 ALTER TABLE `galleon_conferences` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `galleon_forums`
--

DROP TABLE IF EXISTS `galleon_forums`;
CREATE TABLE `galleon_forums` (
  `id` varchar(35) NOT NULL default '',
  `name` varchar(255) NOT NULL default '',
  `description` varchar(255) NOT NULL default '',
  `readonly` tinyint(1) NOT NULL default '0',
  `active` tinyint(1) NOT NULL default '0',
  `attachments` tinyint(1) NOT NULL default '0',
  `conferenceidfk` varchar(35) NOT NULL default '',
  PRIMARY KEY  (`id`),
  KEY `galleon_forums_conferenceidfk` (`conferenceidfk`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `galleon_forums`
--

LOCK TABLES `galleon_forums` WRITE;
/*!40000 ALTER TABLE `galleon_forums` DISABLE KEYS */;
INSERT INTO `galleon_forums` VALUES ('4BE494E1-3048-55C9-436D009795462EC5','General Discussion','A wildcard forum for posts that don\'t fit in anywhere else!',0,1,0,'4BE3CF40-3048-55C9-43A13458187E38A3'),('4BE4C2D7-3048-55C9-43B9CDFDC1304463','General Discussion','A wildcard forum for posts that don\'t fit in anywhere else!',0,1,0,'4BE41784-3048-55C9-437DD4A7B98E265D');
/*!40000 ALTER TABLE `galleon_forums` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `galleon_groups`
--

DROP TABLE IF EXISTS `galleon_groups`;
CREATE TABLE `galleon_groups` (
  `Id` varchar(35) NOT NULL default '',
  `group` varchar(50) NOT NULL default '',
  PRIMARY KEY  (`Id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `galleon_groups`
--

LOCK TABLES `galleon_groups` WRITE;
/*!40000 ALTER TABLE `galleon_groups` DISABLE KEYS */;
INSERT INTO `galleon_groups` VALUES ('AD0F29B5-BEED-B8BD-CAA9379711EBF168','forumsmember'),('AD0F717C-AFE5-FD0E-77EB8FF5BDD858A2','forumsmoderator'),('C18B1118-7E9B-AEC8-14E8DB3C21EFCA1D','forumsadmin');
/*!40000 ALTER TABLE `galleon_groups` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `galleon_messages`
--

DROP TABLE IF EXISTS `galleon_messages`;
CREATE TABLE `galleon_messages` (
  `Id` varchar(35) NOT NULL default '',
  `title` varchar(255) NOT NULL default '',
  `body` text NOT NULL,
  `posted` datetime NOT NULL default '0000-00-00 00:00:00',
  `useridfk` varchar(35) NOT NULL default '',
  `threadidfk` varchar(35) NOT NULL default '',
  `attachment` varchar(255) NOT NULL default '',
  `filename` varchar(255) NOT NULL default '',
  PRIMARY KEY  (`Id`),
  KEY `galleon_messages_useridfk` (`useridfk`),
  KEY `galleon_messages_threadidfk` (`threadidfk`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `galleon_messages`
--

LOCK TABLES `galleon_messages` WRITE;
/*!40000 ALTER TABLE `galleon_messages` DISABLE KEYS */;
/*!40000 ALTER TABLE `galleon_messages` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `galleon_ranks`
--

DROP TABLE IF EXISTS `galleon_ranks`;
CREATE TABLE `galleon_ranks` (
  `Id` varchar(35) NOT NULL default '',
  `name` varchar(50) NOT NULL default '',
  `minposts` int(11) NOT NULL default '0',
  PRIMARY KEY  (`Id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `galleon_ranks`
--

LOCK TABLES `galleon_ranks` WRITE;
/*!40000 ALTER TABLE `galleon_ranks` DISABLE KEYS */;
/*!40000 ALTER TABLE `galleon_ranks` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `galleon_search_log`
--

DROP TABLE IF EXISTS `galleon_search_log`;
CREATE TABLE `galleon_search_log` (
  `searchterms` varchar(255) NOT NULL default '',
  `datesearched` datetime NOT NULL default '0000-00-00 00:00:00'
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `galleon_search_log`
--

LOCK TABLES `galleon_search_log` WRITE;
/*!40000 ALTER TABLE `galleon_search_log` DISABLE KEYS */;
/*!40000 ALTER TABLE `galleon_search_log` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `galleon_subscriptions`
--

DROP TABLE IF EXISTS `galleon_subscriptions`;
CREATE TABLE `galleon_subscriptions` (
  `Id` varchar(35) NOT NULL default '',
  `useridfk` varchar(35) default NULL,
  `threadidfk` varchar(35) default NULL,
  `forumidfk` varchar(35) default NULL,
  `conferenceidfk` varchar(35) default NULL,
  PRIMARY KEY  (`Id`),
  KEY `galleon_subscriptions_useridfk` (`useridfk`),
  KEY `galleon_subscriptions_threadidfk` (`threadidfk`),
  KEY `galleon_subscriptions_forumidfk` (`forumidfk`),
  KEY `galleon_subscriptions_conferenceidfk` (`conferenceidfk`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `galleon_subscriptions`
--

LOCK TABLES `galleon_subscriptions` WRITE;
/*!40000 ALTER TABLE `galleon_subscriptions` DISABLE KEYS */;
/*!40000 ALTER TABLE `galleon_subscriptions` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `galleon_threads`
--

DROP TABLE IF EXISTS `galleon_threads`;
CREATE TABLE `galleon_threads` (
  `Id` varchar(35) NOT NULL default '',
  `name` varchar(255) NOT NULL default '',
  `active` tinyint(1) NOT NULL default '0',
  `readonly` tinyint(1) NOT NULL default '0',
  `useridfk` varchar(35) NOT NULL default '',
  `forumidfk` varchar(35) NOT NULL default '',
  `datecreated` datetime NOT NULL default '0000-00-00 00:00:00',
  `sticky` tinyint(1) NOT NULL default '0',
  PRIMARY KEY  (`Id`),
  KEY `galleon_threads_useridfk` (`useridfk`),
  KEY `galleon_threads_forumidfk` (`forumidfk`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `galleon_threads`
--

LOCK TABLES `galleon_threads` WRITE;
/*!40000 ALTER TABLE `galleon_threads` DISABLE KEYS */;
/*!40000 ALTER TABLE `galleon_threads` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `galleon_users`
--

DROP TABLE IF EXISTS `galleon_users`;
CREATE TABLE `galleon_users` (
  `Id` varchar(35) NOT NULL default '',
  `username` varchar(50) NOT NULL default '',
  `password` varchar(50) NOT NULL default '',
  `emailaddress` varchar(255) NOT NULL default '',
  `signature` text NOT NULL,
  `datecreated` datetime NOT NULL default '0000-00-00 00:00:00',
  `confirmed` tinyint(1) NOT NULL default '0',
  `name` varchar(50) default NULL,
  PRIMARY KEY  (`Id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `galleon_users`
--

LOCK TABLES `galleon_users` WRITE;
/*!40000 ALTER TABLE `galleon_users` DISABLE KEYS */;
INSERT INTO `galleon_users` VALUES ('C189C5AC-7E9B-AEC8-1DAEEEA03A562CF0','joe','v4nh4l3n','contact@firemoss.com','','2005-01-29 12:00:00',1,'Joe Rinehart');
/*!40000 ALTER TABLE `galleon_users` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `galleon_users_groups`
--

DROP TABLE IF EXISTS `galleon_users_groups`;
CREATE TABLE `galleon_users_groups` (
  `useridfk` varchar(35) NOT NULL default '',
  `groupidfk` varchar(35) NOT NULL default ''
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data for table `galleon_users_groups`
--

LOCK TABLES `galleon_users_groups` WRITE;
/*!40000 ALTER TABLE `galleon_users_groups` DISABLE KEYS */;
INSERT INTO `galleon_users_groups` VALUES ('C189C5AC-7E9B-AEC8-1DAEEEA03A562CF0','C18B1118-7E9B-AEC8-14E8DB3C21EFCA1D');
/*!40000 ALTER TABLE `galleon_users_groups` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `tblblogcategories`
--

DROP TABLE IF EXISTS `tblblogcategories`;
CREATE TABLE `tblblogcategories` (
  `categoryid` varchar(35) character set latin1 NOT NULL default '',
  `categoryname` varchar(50) character set latin1 NOT NULL default '',
  `categoryalias` varchar(50) default NULL,
  `blog` varchar(50) character set latin1 NOT NULL default '',
  PRIMARY KEY  (`categoryid`),
  KEY `blogCategories_blog` (`blog`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

-- ----------------------------
-- Table structure for tblblogcomments
-- ----------------------------
CREATE TABLE `tblblogcomments` (
  `id` varchar(35) character set latin1 NOT NULL default '',
  `entryidfk` varchar(35) character set latin1 default NULL,
  `name` varchar(50) character set latin1 default NULL,
  `email` varchar(50) character set latin1 default NULL,
  `comment` text character set latin1,
  `posted` datetime default NULL,
  `subscribe` tinyint(1) default NULL,
  `website` varchar(255) default NULL,
  `moderated` tinyint(1) default NULL,
  `killcomment` varchar(35) default NULL,
  `subscribeonly` tinyint(4) default NULL,
  PRIMARY KEY  (`id`),
  KEY `blogComments_entryid` (`entryidfk`),
  KEY `blogComments_posted` (`posted`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `tblblogcomments`
--

LOCK TABLES `tblblogcomments` WRITE;
/*!40000 ALTER TABLE `tblblogcomments` DISABLE KEYS */;
INSERT INTO `tblblogcomments` VALUES ('688514C4-3048-55C9-43D4C1333B05A8B8','684337ED-3048-55C9-43DBC348C4552B15','Raymond Camden','ray@camdenfamily.com','Joe, the &quot;Home&quot; link on the site doesn\'t work when you are in a subdirectory.','2007-06-26 10:52:38',0,'http://www.coldfusionjedi.com',1),('6947793B-3048-55C9-4336EBD2C105AD9D','E3D2EDA3-3048-55C9-4320201175E27201','TJ Downes','koldfuzun@gmail.com','Congratulations! A very solid release\n\nAs a side note, a few of us where talking and someone mentioned the new logo looks as if it says MSG. I agree, and it was the first impression I got when seeing the new logo.','2007-06-26 14:24:58',0,'http://www.sanative.net',1),('69DB572D-3048-55C9-437C70551BE59531','684337ED-3048-55C9-43DBC348C4552B15','O?uz Demirkap?','blog@demirkapi.net','Hey this is great!\n\nIs this he latest 2.0 build that you have promised for CFUnited? :)','2007-06-26 17:06:28',1,'http://demirkapi.net',1),('6A0BB4F3-3048-55C9-432695C6EB4237BF','684337ED-3048-55C9-43DBC348C4552B15','Phil Duba','phil@philduba.com','Joe, this looks great! One note, as I started walking through the quickstart, the referenced directories did not exist in the download: model, view, business with all to be in /examples/quickstart/base. I did not have a quickstart folder under the examples in what I downloaded.','2007-06-26 17:59:18',0,'http://www.philduba.com',1),('6A2E27EB-3048-55C9-4379AAF7CCCD1DED','684337ED-3048-55C9-43DBC348C4552B15','Carlos Balacuit','Carlos.Balacuit@gmail.com','The site looks great and I applaud your work, but.... MSG ?','2007-06-26 18:36:56',0,'',1),('6DE552A3-3048-55C9-43E8A674C1D4A5FC','684337ED-3048-55C9-43DBC348C4552B15','John Allen','johnfallen@gmail.com','I am VERY excited about this.\nbut I to am missing the sample code. Opps!\nReally Joe, thanks so much for being sooooo smart.','2007-06-27 11:55:51',1,'http://johnfallen.instantspot.com/blog',1),('6FEEC5BA-3048-55C9-43790765AFAAFD35','684337ED-3048-55C9-43DBC348C4552B15','vience','vience@fayea.com','The version 2.0.304 seem not being tested in BlueDragon_J2EE_v7.0.0.339. \n\nThis a better idea to change ModelGlue.unity.debug.RequestLogRenderer method &quot;Render&quot; to &quot;MGRender&quot;. The &quot;Render&quot; will cause a error in Bluedragon.\n\nAnd other problem is that when using Reactor will cause a &quot;_ModelGlue&quot; undefined error :(\n\nWill ModelGlue team going to test and support Bluedragon J2EE in later release?','2007-06-27 21:25:25',0,'',1),('72198913-3048-55C9-430AD7C4510C23CC','684337ED-3048-55C9-43DBC348C4552B15','Raymond Camden','ray@camdenfamily.com','vience - Can you add a bug to http://trac.model-glue.com. This helps up tracks and respond to bug reports.','2007-06-28 07:31:22',0,'http://www.coldfusionjedi.com',1),('729BBAAA-3048-55C9-434DB6C263E033F2','684337ED-3048-55C9-43DBC348C4552B15','Ed Johnson','ejohnson@facs.org','New to Flex but FYI\n\nI downloaded the model glue flex, copied the application template to new directory, created eclipse project, added reference to the swc to flex-config  - When I compiled it said it could not resolve event:Handler to a component.\n\nI removed reference to ModelGlueFlex.swc and copied the com directory to my eclipse project -- compiled and ran OK','2007-06-28 09:53:34',0,'',1),('793DCC2C-3048-55C9-43F100BC66C2488F','684337ED-3048-55C9-43DBC348C4552B15','Jason','jason_newport@hotmail.com','The Model-Glue Flex sample download is missing the files referenced in the README.  Says login files are in /quickstart/base is missing. The only thing in quickstart/ is &quot;contactmanager&quot; and &quot;flextodolist&quot;.\n\nJ','2007-06-29 16:48:19',0,'http://www.adhder.com',1),('85468E7D-3048-55C9-433EE0C2BAAC9B6E','684337ED-3048-55C9-43DBC348C4552B15','Just Me','none@none.com','Thanks for the great contribution to the community - however everyone is looking for the &quot;quickstart&quot; folder referenced in the documentation - HELP PLEASE!','2007-07-02 00:53:20',0,'',1),('BC3AF857-3048-55C9-434DFEE789A1B553','684337ED-3048-55C9-43DBC348C4552B15','Christopher Keeler','ckeeler@dattoli.com','quickstart/base directories are missing, as referenced in the Quickstart README.','2007-07-12 16:59:47',1,'http://www.dattoli.com',1),('BF4647D2-3048-55C9-43F3A63221E82ADF','BF420D3D-3048-55C9-432FCEB50C80113D','Joe Rinehart','joe@firemoss.com','Jared\'s is too accurate for comfort...','2007-07-13 07:11:00',1,'http://www.firemoss.com',1),('BF4D3FD1-3048-55C9-4345CF7C10CB46D7','BF420D3D-3048-55C9-432FCEB50C80113D','Scott Stroz','scott@boyzoid.com','Yours is pretty accurate as well.','2007-07-13 07:18:37',1,'http://www.boyzoid.com',1),('C023E354-3048-55C9-439B527EFBF2FB56','BF420D3D-3048-55C9-432FCEB50C80113D','Damon Gentry','dgentry@dagen.net','Joe, when can we get those in a t-shirt?  Or a coffee mug?','2007-07-13 11:13:03',0,'http://www.dagen.net',1),('C092824C-3048-55C9-430456F24C0B4E9E','BF420D3D-3048-55C9-432FCEB50C80113D','Chris Scott','asstrochris@comcast.net','Word, Joe and Jared are so spot on it\'s frightening!','2007-07-13 13:13:53',1,'',1),('C7BD126E-3048-55C9-43D4BCF7951B8738','BF420D3D-3048-55C9-432FCEB50C80113D','Phillip Senn','psenn@alexlee.com','Hey Sean!  I got your &quot;Happy birthday&quot; message from my Skype profile.\nThanks!','2007-07-14 22:37:43',0,'http://www.aacr9.com',1),('D4FE4240-3048-55C9-43635D125A7E0E06','CFF76647-3048-55C9-433C32A00F8BD24A','Brian Kotek','brian428@gmail.com','Joe, rather than manually using CreateObject to create the instance of ModelGlue.unity.eventhandler.View, is there a way to get it by calling ColdSpring (using a factory method defined in the ColdSpring XML)?','2007-07-17 12:23:59',1,'http://www.briankotek.com/blog',1),('F0243AB2-3048-55C9-437D06587EFB7A6F','BF420D3D-3048-55C9-432FCEB50C80113D','Jared Rypka-Hauer','jared@web-relevant.com','I like it!\n\nJoe\'s, mine, Sean\'s and Chris\'s are pretty accurate overall... my frightened me when I finished it though. Argh.','2007-07-22 18:55:12',1,'http://www.web-relevant.com/blogs/cfobjective/',1),('24A2CF00-3048-55C9-43606CF4FCFF686E','CFF76647-3048-55C9-433C32A00F8BD24A','sal','salomon84@comcast.net','wait whats going on here?? He is injecting Brian...','2007-08-01 23:33:43',0,'',1),('251A686F-3048-55C9-439B57833D2C5F6C','CFF76647-3048-55C9-433C32A00F8BD24A','Brian Kotek','brian428@gmail.com','He updated the entry after I posted that comment.','2007-08-02 01:44:21',1,'http://www.briankotek.com/blog',1),('634F59D5-3048-55C9-435EE1034E9D62D2','684337ED-3048-55C9-43DBC348C4552B15','Erich Cervantez','flex@noofusion.com','The Model-Glue Flex download does not include the /quickstart folder under &quot;examples&quot;.  Not a big deal...I can probably look at the ToDo list example, but it\'d be nice to follow your quickstart guide ;)','2007-08-14 03:38:38',0,'http://www.noofusion.com',1),('67360F54-3048-55C9-43EC6DF8943EA95C','684337ED-3048-55C9-43DBC348C4552B15','Erich Cervantez','flex@noofusion.com','I had another problem when compiling.  I kept getting &quot;Could not resolve &lt;event:Handler&gt; to a component implementation.&quot; error.\n\nAs someone else did on here, I removed the ModelGlueFlex.swc file from the Library Build Path and instead copied the &quot;com&quot; directory over from the distribution into my application and it finally compiled fine.  FYI.','2007-08-14 21:49:29',0,'http://www.noofusion.com',1),('15B1B954-3048-55C9-4327B1CBFBCC3E68','0FBD76D2-3048-55C9-43D34471520B4215','Matt','spiraldev@gmail.com','I am getting an error in Flex builder 3 beta 2 and it says &quot;unable to load SWC ModelGlueFlexRemoting.swc&quot; any thoughts on this error?','2007-11-06 11:01:17',0,'',1),('15FE1C04-3048-55C9-434E6240413224C6','0FBD76D2-3048-55C9-43D34471520B4215','Matt','spiraldev@gmail.com','I fixed this by deleting the project and recreating the project and not adding the swc file until after the project is created.','2007-11-06 12:24:43',0,'',1),('711F104C-3048-55C9-43CFAB6110BE3583','0FBD76D2-3048-55C9-43D34471520B4215','Danny Jung','djung76@gmail.com','Great stuff Joe. One thing I did notice was that Flex would hang on any result redirects. I got around this by adding some logic to EventContext.cfc to not execute redirects for AMF request types  (I know, I know, the core code is sacrosanct). Anyway, something to keep in mind for the next go around. Thanks again.','2007-11-24 05:06:09',0,'',1),('2F584C9D-FF1D-C52F-5E08DD8E992CED8C','09C7FDF4-FF1D-C52F-5E4119A115F987C9','Wally Kolcz','wkolcz@umich.edu','When will be become available to play with. I want a copy :-D','2008-04-08 14:42:06',1,'http://www.med.umich.edu',1),('3A9F160E-FF1D-C52F-5EDB100EA5186D85','381B346F-FF1D-C52F-5E8E5A3BC10320E9','Pat','pat@heypatty.com','Can you change your URL routing action to work like coldcourse? (eg. www.tourismnoosa.com.au)','2008-04-10 19:15:14',1,'http://www.heypatty.com',1),('3B5AC9AE-FF1D-C52F-5E26C53915BBECDA','381B346F-FF1D-C52F-5E8E5A3BC10320E9','Antony','antonysideropoulos@gmail.com','Love it - what\'s the release date again??','2008-04-10 22:40:15',1,'',1),('4F017DA9-FF1D-C52F-5EFCDC7D4D220935','0FBD76D2-3048-55C9-43D34471520B4215','Hem Talreja','hemkarna@yahoo.com','Dear Joe:\n\nI like the nifty little feature you have added to the run method for ProxyRequest.cfc\n\n\nCan you please verify that the variable exists in the values struct.\n\n&lt;cfloop list=&quot;#desiredValues#&quot; index=&quot;i&quot;&gt;\n	&lt;cfif IsDefined(&quot;values.#i#&quot;)&gt;\n		&lt;cfset this.data[i] = values[i] /&gt;\n	&lt;/cfif&gt;\n&lt;/cfloop&gt;\n\nOR\n\n&lt;cfloop list=&quot;#desiredValues#&quot; index=&quot;i&quot;&gt;\n	&lt;cfif StructKeyExists(values,i)&gt;\n		&lt;cfset this.data[i] = values[i] /&gt;\n	&lt;/cfif&gt;\n&lt;/cfloop&gt;\n\n\nOn another note:\nI though I heard you say that this feature is to enable small flex widgets in a greater ColdFusion application.\n\nIf i were building an entire CF-Flex application what framework (ColdFusion) should I consider?\n\n\n\nThank You\n-Hem','2008-04-14 18:15:07',0,'',1),('4744C750-FF1D-C52F-5EC3D749C4370003','472C014B-FF1D-C52F-5E92C28DFB8C7700','Chris H','3darklight@gmail.com','nice one, thanks!','2008-09-09 09:20:01',0,'',1),('47CF7D41-FF1D-C52F-5E9762A7775CD1AD','472C014B-FF1D-C52F-5E92C28DFB8C7700','Robb','spillsmills@yahoo.com','Nice update, really cuts down on code when you have a lot vars to deal with.','2008-09-09 11:51:32',0,'',1),('43BA39DE-FF1D-C52F-5E8A17705BA0DA96','42D6A106-FF1D-C52F-5EBBDDAC2DCEF862','Fernando Lopez','lopezf@gmail.com','I knew Ray had a clone, here\'s proof.','2009-03-26 13:00:59',1,'http://grtfercho.blogspot.com',1),('64B66AD7-FF1D-C52F-5EAEE67AD6AE3301','472C014B-FF1D-C52F-5E92C28DFB8C7700','salvatore fusto','ing.fusto@gmail.com','hi Joe\n1) what baout copyomg event values in local var scope?\n2) what about finail release date of gesture?\nregards\nsalvatore','2008-09-15 02:33:08',1,'',1),('F820987B-FF1D-C52F-5EFF76274A50859A','F7A61EDF-FF1D-C52F-5E311679747B7AD8','Damon Gentry','gentryd@ohsu.edu','I wouldn\'t say I\'m an expert, but I do manage our Jira/Tomcat installation at work.  Feel free to ping me with your issue and I\'ll do my best to help.','2008-10-13 17:33:17',1,'http://www.ohsu.edu',1),('43800794-FF1D-C52F-5EF8C8C7BF4636D0','42D6A106-FF1D-C52F-5EBBDDAC2DCEF862','O?uz Demirkap?','blog@demirkapi.net','Great news for the community! Thanks guys! :)','2009-03-26 11:57:25',1,'http://blog.demirkapi.net',1),('439B1A7C-FF1D-C52F-5E97AC02BA373AAC','3E6DE3D4-FF1D-C52F-5E816DF8AF08B5BA','Tony Garcia','tony@garcia.net','hey -- the Fusebox site uses the Farcry framework, so it wouldn\'t be the first time something like this has happened.','2009-03-26 12:26:59',0,'http://www.objectivebias.com/blog',1),('84E7984A-FF1D-C52F-5EC36FD445F88AAE','381B346F-FF1D-C52F-5E8E5A3BC10320E9','Dave','daveschmottlacfh@cox.net','Very nice','2008-04-25 05:26:20',0,'',1),('43D880A0-FF1D-C52F-5E1945A49EB5DD0F','3E6DE3D4-FF1D-C52F-5E816DF8AF08B5BA','Jim Priest','priest@thecrumb.com','Amen! Pick the best tool for the job and get on with the important bits - writing documentation, community support and fixing bugs :)','2009-03-26 13:34:03',1,'http://www.thecrumb.com',1),('43E3D83F-FF1D-C52F-5E7305002F7DBE6B','42D6A106-FF1D-C52F-5EBBDDAC2DCEF862','Peter Bell','peter@pbell.com','Very cool! And congrats to Dan - a great choice.','2009-03-26 13:46:26',1,'http://www.pbell.com',1),('441E9BFE-FF1D-C52F-5EA8DF263FF840ED','3E6DE3D4-FF1D-C52F-5E816DF8AF08B5BA','O?uz Demirkap?','blog@demirkapi.net','It is better than using Php based Wiki etc. on Adobe platforms. :)\n\nGood luck!','2009-03-26 14:50:37',1,'http://blog.demirkapi.net',1),('49C5209F-FF1D-C52F-5EB5BD23AF136755','3E6DE3D4-FF1D-C52F-5E816DF8AF08B5BA','Sean Corfield','seancorfield@gmail.com','Team Fusebox took a bit of heat for using the FarCry CMS to power fusebox.org but it really was a case of us picking the best tool for the job (maybe Team Fusebox would pick Sava now since I believe that is Fusebox-based?).\n\nCodexWiki is very impressive. We\'re using it for the CFML Advisory Committee website. It\'s not an endorsement - nor any slight to any other CFML wiki software - it just happened to be what we needed, when we needed it.','2009-03-27 17:10:36',1,'http://corfield.org/',1),('0A00A242-FF1D-C52F-5E8F3C9C21322B4B','09C7FDF4-FF1D-C52F-5E4119A115F987C9','Chris H','3darklight@gmail.com','w00t!\nany sneak peeks?','2008-04-01 08:40:23',0,'',1),('0B950200-FF1D-C52F-5E42526FBCE1FECF','09C7FDF4-FF1D-C52F-5E4119A115F987C9','Richard Davies','Richard@richarddavies.us','I hate April 1st. I never know if I should believe anything I read or not...','2008-04-01 16:02:04',1,'http://www.richarddavies.us',1),('565B19FB-FF1D-C52F-5EC29030705A7137','5090251A-FF1D-C52F-5E873180B1C456F4','john C. Bland II','johncblandii@gmail.com','H-tizzle! WOOT! :-)\n\nI\'d love to see some training come to Houston.','2009-10-15 00:01:01',1,'http://www.johncblandii.com',1),('567405C8-FF1D-C52F-5E56AD4BCF8C8A68','5495D240-FF1D-C52F-5E863B2323246BB2','Byron Raines','byron.raines@gmail.com','How about our very own Triangle area??','2009-10-15 00:28:14',0,'',1),('57ED10B9-FF1D-C52F-5E87E31C5108B622','5495D240-FF1D-C52F-5E863B2323246BB2','Al Everett','everetta@nigms.nih.gov','I second the DC Metro Area.','2009-10-15 07:20:04',1,'',1),('5898814C-FF1D-C52F-5E2BBC4201B6043D','5495D240-FF1D-C52F-5E863B2323246BB2','Brian','brian@masscreations.com','Second Boston area.  Doesn\'t have to be in downtown, some place between Southern NH / Boston may be cheaper.','2009-10-15 10:27:20',0,'',1),('59EC3758-FF1D-C52F-5E26614949897D90','5495D240-FF1D-C52F-5E863B2323246BB2','Sam Singer','singess@auburn.edu','How about training in Atlanta!','2009-10-15 16:38:23',1,'http://media.cla.auburn.edu/cla',1),('55405583-FF1D-C52F-5E7742D695179527','5495D240-FF1D-C52F-5E863B2323246BB2','Mike Henke','henke.mike@gmail.com','DC :-)','2009-10-14 18:52:09',0,'http://www.henke.ws',1),('5547F78B-FF1D-C52F-5E9891444EAC4D57','5495D240-FF1D-C52F-5E863B2323246BB2','Sean Corfield','seancorfield@gmail.com','What would the cost be?','2009-10-14 19:00:30',1,'http://corfield.org/',1),('5563927F-FF1D-C52F-5EC57ED79E601B41','5495D240-FF1D-C52F-5E863B2323246BB2','PRB','none@none.com','Any idea of cost?  I\'d like to train my team but I\'d like more info first so I can go beg management for $.','2009-10-14 19:30:39',0,'',1),('55CD1E40-FF1D-C52F-5E5E49E2C5CAFB8E','5495D240-FF1D-C52F-5E863B2323246BB2','John C Bland II','johncblandii@gmail.com','Houston. WOOT!!','2009-10-14 21:25:56',0,'Http://www.johncblandii.com',1),('5630B614-FF1D-C52F-5E508760E8C3C51D','5495D240-FF1D-C52F-5E863B2323246BB2','Dan Wilson','sipacate@gmail.com','@Sean, Others\n\nThere will certainly be some fee for the training. I\'ve not worked out exactly what I can afford to do it for, but I want to keep it low frills.\n\nAfter I get a reasonable idea of likely locations I\'ll work on organizing more proper numbers. Some cities are more expensive than others and perhaps in some cities, we can defer or avoid costs by using a company room on the weekend or something. Dunno. I just see a need and want to fulfill it if possible.\n\nCommenters, what would you expect to pay for something like this?  What you expect to be included for your price?\n\nDW','2009-10-14 23:14:43',1,'http://www.nodans.com',1),('4FCEDF94-FF1D-C52F-5E6DBEC4C0B9C3CB','3E6DE3D4-FF1D-C52F-5E816DF8AF08B5BA','Jamie Krug','jamie@thekrugs.com','CodexWiki also claims to be &quot;mediawiki compliant,&quot; which should leave the door open to migrating CodexWiki data to a future Model-Glue powered mediawiki compliant app, should resources and desire to build one come to fruition.','2009-03-28 21:18:58',1,'http://jamiekrug.com/blog/',1),('63666820-FF1D-C52F-5E3C29114ACA6154','3E6DE3D4-FF1D-C52F-5E816DF8AF08B5BA','Luis Majano','lmajano@gmail.com','Thanks for your great comments Dan! I really appreciate it and feel the same way vice versa.  Gracias Hermano!\n\nPlease don\'t hesitate to contact me on anything you want added to CodeX so it can meet your needs.','2009-04-01 16:37:16',0,'',1),('481F965D-FF1D-C52F-5E4BC58E3FDEC047','3E6DE3D4-FF1D-C52F-5E816DF8AF08B5BA','Lola LB','lola@his.com','Yeah . . . pick the right tools and move on with the show.  No need to nitpick when there\'s a lot of work to be done.','2009-03-27 09:30:10',1,'',1),('498AF796-FF1D-C52F-5E52E60CC86CD438','42D6A106-FF1D-C52F-5EBBDDAC2DCEF862','Richard Davies','Richard@richarddavies.us','Joe, thanks for all your hard work on this project!\nDan, I\'m glad you\'re able to continue on where Joe left off. I\'m relieved to know MG isn\'t dying.','2009-03-27 16:07:05',0,'http://www.richarddavies.us',1),('B8219082-FF1D-C52F-5E8D76AFB52E2F34','381B346F-FF1D-C52F-5E8E5A3BC10320E9','Shimju David','shimjudavid@emaxsoftware.com','Pretty sleek Joe.. Event generation feature is really a time saver.. Helpers is really a HELP. Bean Injection is simply WOW!! \n\nThe new &quot;Formats&quot; feature needed more explanation.. It will be really great if you can write an article focusing this special feature on your blog.. We are ANXIOUSLY WAITING to see that with a small AJAX integration example if possible.\n\nI know it is in Alpha and I faced few issues when I played with it\n\n1)built-in SES URL feature not working for me. \n2) event.forward not seems working\n3) When we add a new coldfusion UDF file inside \'/helpers\' folder App needed an init=true to access the new udf functions in \'helper scope\' even though reload mode is turned on.\n\nThanks a lot Joe for your hard work!!\n\nShimju David','2008-05-05 04:10:17',1,'http://www.emaxsoftware.com',1),('3C8ADD98-FF1D-C52F-5EF322DF3F26C896','0FBD76D2-3048-55C9-43D34471520B4215','Bruce','bruce@phillips.name','Joe - anymore documentation available about how to get a Flex application to communcate with the Model-Glue backend.  I watched your video, but I could not following everything.  I think on need the &quot;Dummy\'s Guide&quot; to this technique.\n\nThe KC User Group is building its new website using Model-Glue on the backend and we want to add some Flex widgets also.  Those Flex widgets need to communicate with some CFCs being managed by the ColdSpring container.','2008-01-02 17:06:49',1,'http://www.brucephillips.name/blog',1),('68ED6043-FF1D-C52F-5EFCA1F4A46FCBF0','6727C5E7-FF1D-C52F-5E41B73A3497676F','Eric Roberts','owner@threeravensconsulting.com','Congrats on the upcoming release.  Have fun on the trip...that sounds like a lot of fun except for all the bugs :-D  Congrats/condolences on the upcoming wedding :-D  I am about to make that same mistake(again) myself.  I wish upon you many many happy and prosperous years together!\n\nYou never know with the Dept of Interior/US Forest Service...they can get high tech on you where you least expect it ;-)','2009-04-02 18:22:48',0,'http://www.threeravensconsulting.com',1),('C05B9AC7-FF1D-C52F-5EDCB027BB0532C3','3E6DE3D4-FF1D-C52F-5E816DF8AF08B5BA','Sean Corfield','seancorfield@gmail.com','@Mark, yes, Canvas is built with Model-Glue but it doesn\'t come close to the feature set of CodexWiki and the MG team need a full-featured blog (Ray\'s part of the MG team so he\'s been party to this decision/discussion).','2009-04-19 17:50:10',1,'http://corfield.org/',1),('6BAEAF9C-FF1D-C52F-5E32856F6BF99CC9','6727C5E7-FF1D-C52F-5E41B73A3497676F','Lola LB','lola@his.com','Has there been a change as to the location of the SVN repository?  Still at the same location or has it been moved as part of this transition?','2009-04-03 07:13:11',1,'',1),('7DAECAC2-FF1D-C52F-5E0472F3EF23F55D','843C8072-3048-55C9-43C98421A5A14110','Sam','eikajnabi@hotmail.com','Hi\n\nIts really old post... why its been reposted to weblogs.macromedia.com because only that to show off how model-glue is good. ahhh geee geee, I think rather doing this, put some more good documentation of model-glue.','2008-01-15 08:41:22',1,'',1),('7DE696A2-FF1D-C52F-5EB6BB2B582984B2','7D83B623-FF1D-C52F-5E8C55A8DB3EDDB2','Bob Silverberg','bob.silverberg@gmail.com','Sounds like a great idea, and I have one request.  I\'d prefer to have a getSomeService() available to me, rather than having to explicitly refer to beans.someService.  Could you consider implementing a get() function automatically in addition to making the service available in the beans struct?','2008-01-15 09:42:19',1,'',1),('7DF55DEB-FF1D-C52F-5EEC5FD0490F6DCB','7D83B623-FF1D-C52F-5E8C55A8DB3EDDB2','Mark Drew','mark.drew@gmail.com','Joe, this seems like a great idea and of course, keeps the damned CFC file size down! \n\nMore configuration please! Excellent work!','2008-01-15 09:58:27',1,'http://www.markdrew.co.uk',1),('7E0D1198-FF1D-C52F-5E062AF97D41AE8D','7D83B623-FF1D-C52F-5E8C55A8DB3EDDB2','Joe Rinehart','joe@firemoss.com','@Bob,\n\ngetModelGlue().getBean(&quot;myBean&quot;) is the &quot;classic&quot; pre-autowiring way of doing it, and is available in all public versions of model-glue.\n\nIs that what you\'re after?\n\n@Mark,\n\nGlad you like!  It\'s the first of three or four new features that are in this vein.','2008-01-15 10:24:21',1,'http://firemoss.com',1),('7E1DC4C9-FF1D-C52F-5EEBA042DDE2FAA8','7D83B623-FF1D-C52F-5E8C55A8DB3EDDB2','Bob Silverberg','bob.silverberg@gmail.com','Not exactly.  When I am using Coldspring to inject dependencies into any cfc, whether controller or otherwise, I use a pair of methods.  A setSomeBean() which Coldspring uses to inject the bean, and a getSomeBean() which I use when referring to the bean from within the cfc (rather than beans.SomeBean or getModelGlue().getBean(&quot;SomeBean&quot;)).\n\nI realize now that what I\'m looking for is to have the getSomeBean() method automatically generated in the controller, and I suppose that may not be possible (or worthwhile).  I just figured that if you are removing the requirement to define the setSomeBean() function it would be great to not have to define the getSomeBean() function either, but still have access to it.\n\nWould there be a way of doing that, or is that just pie-in-the-sky?','2008-01-15 10:42:35',1,'',1),('7E331710-FF1D-C52F-5E91598262BC59F1','7D83B623-FF1D-C52F-5E8C55A8DB3EDDB2','Dan Wilson','sipacate@gmail.com','I  like this. It seems like a nice shortcut.\n\nDW','2008-01-15 11:05:53',1,'http://www.nodans.com',1),('7F051EC3-FF1D-C52F-5E8D028716D3EF99','7D83B623-FF1D-C52F-5E8C55A8DB3EDDB2','Peter Bell','pbell@systemsforge.com','Great! Looking forward to seeing how you implemented this!','2008-01-15 14:55:17',1,'http://www.pbell.com',1),('7F456055-FF1D-C52F-5E64F9399E7060E0','7D83B623-FF1D-C52F-5E8C55A8DB3EDDB2','Joe Rinehart','joe@firemoss.com','@Bob,\n\nAh, Ok, I see what you\'re saying now:  generate the getSomeService() method when it\'s first called.\n\nI thought about having a CF8-only feature that used onMissingMethod to do this, but I wanted to:\n\n1.  Keep the functionality consistent across versions\n2.  Not make pre-emptive use of onMissingMethod:  something else may come up in the future where I\'d kick myself for reserving it for autowiring purposes.','2008-01-15 16:05:28',1,'http://firemoss.com',1),('42E856DD-FF1D-C52F-5E4BC44E91D87064','42D6A106-FF1D-C52F-5EBBDDAC2DCEF862','Joe Rinehart','joe@firemoss.com','Whoops :)  I alphabetized the list and you got left in clipboard limbo.','2009-03-26 09:11:44',1,'http://www.firemoss.com',1),('42EBF5F1-FF1D-C52F-5E4588BD5BDAF602','42D6A106-FF1D-C52F-5EBBDDAC2DCEF862','Raymond Camden','ray@camdenfamily.com','I get listed twice? Is that because I\'m 2X the coolness?','2009-03-26 09:15:41',1,'http://www.coldfusionjedi.com',1),('F5EB9E39-FF1D-C52F-5EBAC3B3E042D449','BF420D3D-3048-55C9-432FCEB50C80113D','Web','web@gmail.com','is it possible to put a movie instead of a picture in the white board area and pause it then make notes.... then resume play and continue.... http://gangbang.superexploration.net  http://bigboob.superexploration.net http://naughty.superexploration.net','2008-02-07 17:02:14',0,'',1),('42F01F45-FF1D-C52F-5E77E1D8F9A1742E','42D6A106-FF1D-C52F-5EBBDDAC2DCEF862','Adam','adrocknaphobia@gmail.com','Congrats to Dan Wilson. I don\'t think you could have found anyone as capable and passionate as Dan. The MG community is in good hands and I look forward to the future.\n\nMany thanks to Alagad as well. A framework is only as good as it\'s documentation. Their contributions are critical to the long term success of the project.','2009-03-26 09:20:14',0,'http://www.adrocknaphobia.com',1),('4230EC3E-FF1D-C52F-5EA80674EE68DE4B','7144FCD1-FF1D-C52F-5EBDD7B13A0DA7AB','Raul Riera','soporte@hipervinculo.net','Is this project still active? Its been a really long while since the beta and the &quot;comming soon&quot; for the documentation on MG3, I am a ColdFusion developer with Ruby on Rails experience and was looking forward for this framework, but I dont see much activity here.','2008-07-20 16:37:27',0,'',1),('43182E88-FF1D-C52F-5EED1C6D7C9E57FF','42D6A106-FF1D-C52F-5EBBDDAC2DCEF862','RyanTJ','ryan.thompsonjewell@gmail.com','Joe, thank you so much for bringing MG to where its at. Its a kick butt framework. I look forward to Dan\'s contributions.','2009-03-26 10:03:59',0,'http://mayoclinic.com',1),('435B0882-FF1D-C52F-5ECD0253D2C4D98C','42D6A106-FF1D-C52F-5EBBDDAC2DCEF862','Charlie Griefer','charlie@griefer.com','Ray contributed twice!  Where -does- he find the time? :)','2009-03-26 11:17:00',0,'http://charlie.griefer.com',1),('4361AC40-FF1D-C52F-5E08351685763F94','42D6A106-FF1D-C52F-5EBBDDAC2DCEF862','Jamie Krug','jamie@thekrugs.com','@Joe,\n\nThanks a ton for your many CF community contributions and getting Model-Glue introduced and where it is today.\n\nI\'m just curious: will your time be on the extreme Flex/Java side of things, or will there still be some CFML integration? Namely, do you plan to continue the &quot;Hiberailooving&quot; series?\n\nAlso, looks like Ray got Doug\'s initial copyright slot, as he\'s in there twice :)\n\nBest,\nJamie','2009-03-26 11:24:15',1,'http://jamiekrug.com/blog/',1),('F205DCC2-FF1D-C52F-5E0CE2C7F1219A99','F1FD54D1-FF1D-C52F-5EF93DA93A7CC19B','Jim Priest','priest@thecrumb.com','Nice to see everyone stepping up and pitching in to help!','2009-04-29 09:17:31',1,'http://www.thecrumb.com',1),('38F4F6D7-FF1D-C52F-5E62314CC0600A9F','36373DFC-FF1D-C52F-5E526707EBD3533B','Chris H','3darklight@gmail.com','thanks to the whole team, going to try this one out right away ;D','2009-05-13 03:52:06',0,'',1),('3B8425ED-FF1D-C52F-5E8FCA594D4F448A','36373DFC-FF1D-C52F-5E526707EBD3533B','Phillip Senn','PhillipSenn@gmail.com','The requested URL /downloads/ModelGlue_3Beta.zip was not found on this server.','2009-05-13 15:47:44',1,'http://www.phillipsenn.com',1),('3B848061-FF1D-C52F-5E4E180551E293C6','36373DFC-FF1D-C52F-5E526707EBD3533B','Phillip Senn','PhillipSenn@gmail.com','appologies is spelled wrong.','2009-05-13 15:48:07',1,'http://www.phillipsenn.com',1),('D04C0D51-FF1D-C52F-5EDFE08B121FE97F','CF739411-FF1D-C52F-5E2D100C34A40BE4','Ryan TJ','thompsonjewell.ryan@mayo.edu','I don\'t have time to try the special build but reading this post and the docs/wiki it seems like a great implementation of Event types feature.  Seems like we need a t-shirt however: &quot;Got line-potency? Get Model-Glue!&quot; or &quot;Model-Glue: increasing line-potency one event at a time.&quot;','2009-06-11 13:09:53',0,'http://mayoclinic.com',1),('0D44BEC0-FF1D-C52F-5E75788A2063C90F','B9829385-3048-55C9-430D3F873479C35B','John Farrar','johnfarrar@sosensible.com','OK... is this technology still possible with 3.0? It seems like modules would be a good thing to me and you can include me in the group of developers who want to build modules. :)','2009-06-23 09:18:44',1,'',1),('736A552E-FF1D-C52F-5E1251830F5DF614','71C2CC25-FF1D-C52F-5E5BED4FB410035F','Chris H','3darklight@gmail.com','thanks for the update! any other changes in this version or just CF9 compatibility?','2009-07-13 05:21:04',0,'',1),('044355C8-FF1D-C52F-5EC0796D671FCA76','042E6C21-FF1D-C52F-5ED53154BD2AB363','Robert Rawlins','robert.rawlins@thinkbluemedia.co.uk','haha you know, I think splashed in this and wearing nothing but a pair of Think Blue marketing underpants a man could quite possibly become irresistible to any woman.','2009-08-10 08:23:24',1,'http://www.thinkbluemedia.co.uk',1),('04843D62-FF1D-C52F-5E7BDA27F96B45F9','042E6C21-FF1D-C52F-5ED53154BD2AB363','Joe Rinehart','joe@firemoss.com','Definitely a must-have for any attendee of CFUnited looking to attract the attentions of the 4.5 female attendees of the conference...','2009-08-10 09:34:18',1,'http://www.firemoss.com',1),('04AC11A5-FF1D-C52F-5EF458BE0296F924','042E6C21-FF1D-C52F-5ED53154BD2AB363','Ryan TJ','ryan.thompsonjewell@gmail.com','LOL! Way cool. I love the smell of glue. Hey that came out wrong. I love the smell of Model-Glue! Nothing like the smell of Model-Glue in the morning. Oh the memories of eating glue. What a great product, I\'ve never smelled this elementary before.','2009-08-10 10:17:48',0,'http://mayoclinic.com',1),('8A7FD25C-FF1D-C52F-5E0F0F08707495B8','CF739411-FF1D-C52F-5E2D100C34A40BE4','Nina Lee','queentorrent@gmail.com','Thanks that helped establish the XML Module Loader.XML Module Loader - helps in the work. Find helpful for you application http://www.queentorrent.com','2009-09-05 09:58:35',0,'http://www.queentorrent.com',1),('06B31A93-FF1D-C52F-5E9FC69DA9488B84','684337ED-3048-55C9-43DBC348C4552B15','Christopher Hayen','chayen@gmail.com','Hey are you guys ever going to work on Model-Glue Flex again?  It\'s a great piece of code, and I know a few companies that are using in in their products.','2008-08-27 20:25:13',1,'http://www.gen-6.com',1),('39393C54-FF1D-C52F-5E831B91356530BF','353F24CE-FF1D-C52F-5EE62F39FACAD4C9','Sean Coyne','sean@n42designs.com','You can also have the &quot;beans&quot; attribute on the XML configuration for the controller in your MG.xml file.  I find that is better from the documentation perspective since all MG config information is in one place, but its nice to have options.','2009-10-09 08:15:02',0,'http://www.n42designs.com/',1),('39CD818A-FF1D-C52F-5E00571884072B0E','353F24CE-FF1D-C52F-5EE62F39FACAD4C9','john C. Bland II','johncblandii@gmail.com','@Sean @Salvatore\nExcellent guys! I like this. It keeps my changes all in the config.\n\nThanks!','2009-10-09 10:56:59',0,'http://www.johncblandii.com',1),('39AAE9A9-FF1D-C52F-5E58AEFD00F97427','353F24CE-FF1D-C52F-5EE62F39FACAD4C9','salvatore fusto','ing.fusto@gmail.com','we can also add the beans to a controller, in its definition in controller section of mg.xml:\n&lt;controller beans=&quot;...&quot; type=&quot;...&quot; beans=&quot;...&gt;\nthis way we don\'t affect any code\nsalvatore','2009-10-09 10:19:12',1,'',1),('354BFA3B-FF1D-C52F-5EA11C4FCC52B665','353F24CE-FF1D-C52F-5EE62F39FACAD4C9','john C. Bland II','johncblandii@gmail.com','And my response on the list:\n\nPIMP!!!!! :-D\n\nI made the change and it is working as advertised. :-D','2009-10-08 13:57:02',0,'http://www.johncblandii.com',1),('54C012D0-FF1D-C52F-5E40868F6F9D2F1E','5495D240-FF1D-C52F-5E863B2323246BB2','Aaron','aaron@alegean.com','I would be. Maybe some other members of the NY ColdFusion Users Group would be too. You could hold it right in NYC.','2009-10-14 16:32:04',1,'http://www.alegean.com',1),('54D06468-FF1D-C52F-5E8004FC6746A8CD','5495D240-FF1D-C52F-5E863B2323246BB2','David Mineer','mineerjr@constructionnmonitor.com','I would be interested in anything along the I-15 corridor between Salt Lake and Las Vegas (I live right smack in the middle between those 2).  But I prefer weekdays over weekends.  Church on Sundays and kids have sports on saturdays so really I guess I can\'t do weekends.','2009-10-14 16:49:53',1,'',1),('5502E564-FF1D-C52F-5E22E499E8C2FA28','5495D240-FF1D-C52F-5E863B2323246BB2','Steven Erat','serat@webapper.com','I would participate in MG training in the Boston area.','2009-10-14 17:45:03',1,'http://www.webapper.com/',1),('552B0571-FF1D-C52F-5E7037AC2306B607','5495D240-FF1D-C52F-5E863B2323246BB2','Jen McVicker','snarkmeister@gmail.com','I\'d be interested.  I\'m in the east bay area.','2009-10-14 18:28:53',0,'http://table-4-two.blogspot.com',1),('E8256985-FF1D-C52F-5EB268899498A2F4','CE42684D-FF1D-C52F-5ECCA303BD199548','Robert Mills','rmills3@r3design.com','I have a dedicated server running IIS and CF 7.01 Enterprise and MS SQL 2000 if you can make it work with that, I most likely would be happy to give you some space.','2008-05-14 11:56:16',0,'',1),('F3354456-FF1D-C52F-5E82D5A80878CF28','381B346F-FF1D-C52F-5E8E5A3BC10320E9','Jeremy Prevost','jerrocks@gmail.com','Can events be generated into different xml files by convention or is it currently just configurable to go to one specific xml file? Our app is pretty big and we tend to have one config file for each controller to keep us sane and include each one into the main ModelGlue.xml. I\'m thinking an event named user.dance could be added to /config/ModelGlue_user.xml whereas an even named product.view would be added to /config/ModelGlue_product.xml.','2008-05-16 15:29:24',1,'',1),('7E6ADCAF-FF1D-C52F-5E125F8E6E3E6368','3E6DE3D4-FF1D-C52F-5E816DF8AF08B5BA','Mark Mazelin','blogger@mkville.com','Isn\'t Canvas wiki written in Model-Glue?\nhttp://canvas.riaforge.org/','2009-04-06 22:31:53',1,'http://www.mkville.com',1),('C396A78C-FF1D-C52F-5EE6F1BE5E8A20E4','C0397C2C-FF1D-C52F-5E30638692FC591A','Stephen Moretti','stephen.moretti@gmail.com','Any chance of some form of conference mechanism that\'s a bit more international?\neg. Collar a friendly ACE and get a Connect session set up or maybe Skype?','2009-04-20 08:53:31',1,'http://nil.checksite.co.uk',1),('91BB907D-FF1D-C52F-5E5D90DC35AB3B12','684337ED-3048-55C9-43DBC348C4552B15','Brett Adam','bpjadam@gmail.com','I\'ve had the same problem trying to consume MG:Flex as a library. I\'ve copied the code into my FlexBuilder project for now.\n\nPlease consider distributing a FlexBuilder-ready library in future!','2008-06-16 10:16:06',0,'',1),('91BD0319-FF1D-C52F-5EF919F46243504C','684337ED-3048-55C9-43DBC348C4552B15','Brett Adam','bpjadam@gmail.com','Forums don\'t work?','2008-06-16 10:17:40',0,'',1),('C4B18788-FF1D-C52F-5E637533179C71AE','C0397C2C-FF1D-C52F-5E30638692FC591A','John Mason','mason@fusionlink.com','Count me in :)','2009-04-20 14:02:30',1,'http://www.codfusion.com',1),('42E4EE1A-FF1D-C52F-5E460E5A22CA38C1','42D6A106-FF1D-C52F-5EBBDDAC2DCEF862','Doug Hughes','dhughes@alagad.com','Hey! I\'ve contributed code too! ;)','2009-03-26 09:08:00',1,'http://www.alagad.com',1),('5E04F99A-FF1D-C52F-5E9B9DB26B7A5179','5495D240-FF1D-C52F-5E863B2323246BB2','Ruben','ramirezaruben@gmail.com','I second atlanta.','2009-10-16 11:43:54',0,'',1);
/*!40000 ALTER TABLE `tblblogcomments` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `tblblogentries`
--

DROP TABLE IF EXISTS `tblblogentries`;
CREATE TABLE `tblblogentries` (
  `id` varchar(35) character set latin1 NOT NULL default '',
  `title` varchar(100) character set latin1 NOT NULL default '',
  `body` text character set latin1 NOT NULL,
  `posted` datetime NOT NULL default '0000-00-00 00:00:00',
  `morebody` text character set latin1,
  `alias` varchar(100) character set latin1 default NULL,
  `username` varchar(50) character set latin1 default NULL,
  `blog` varchar(50) character set latin1 NOT NULL default '',
  `allowcomments` tinyint(1) NOT NULL default '0',
  `enclosure` varchar(255) character set latin1 default NULL,
  `filesize` int(11) default NULL,
  `mimetype` varchar(255) character set latin1 default NULL,
  `views` int(11) default NULL,
  `released` tinyint(1) default '0',
  `mailed` tinyint(1) default '0',
  `summary` varchar(255) default NULL,
  `subtitle` varchar(100) default NULL,
  `keywords` varchar(100) default NULL,
  `duration` varchar(10) default NULL,
  PRIMARY KEY  (`id`),
  KEY `blogEntries_blog` (`blog`),
  KEY `blogEntries_released` (`released`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `tblblogentries`
--

LOCK TABLES `tblblogentries` WRITE;
/*!40000 ALTER TABLE `tblblogentries` DISABLE KEYS */;
INSERT INTO `tblblogentries` VALUES ('EC7BC686-E081-2BAC-698A3825444067CC','Model-Glue and Ajax: Anyone Interested?','It\'s pretty easy to use Model-Glue as the backend for Ajax controls.  Would anyone be interested in a tutorial/article that shows how?  If so, I\'ll write one up...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=EC7BC686-E081-2BAC-698A3825444067CC\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-12-02 12:17:00',NULL,'ModelGlue-and-Ajax-Anyone-Interested','Joe','modelglue',1,NULL,0,NULL,119,1,1),('90ADA076-E081-2BAC-69972DAC3E55170C','Frameworks:  Making security auditing easy','I was tasked recently with auditing an application\'s security, which is always a tedious process.  Luckily, I was only reviewing the application code, not the platform or infrastructure running the app.\r\n\r\nThe application was not written using an MVC framework, so I began by crawling through source code.  It took a while, as each .cfm file contained business logic, data access, and display code.  ...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=90ADA076-E081-2BAC-69972DAC3E55170C\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-01-03 09:19:00',NULL,'Frameworks--Making-security-auditing-easy','Joe','modelglue',1,NULL,0,NULL,112,1,1),('91C70719-E081-2BAC-69F3ADAFD3CF6FCA','Model-Glue Goes Java!!','Chris Scott has be pseudo-quietly working on a Java port of the Model-Glue framework for the past month or so, and he\'s got an early source release ready to go!  For the moment, it\'s only available via Subversion (not an official release) from the same repository as the Model-Glue BER.\r\n\r\nSVN url = svn://clearsoftware.net/clearsoftware.net/ModelGlueJava\r\n\r\nOk, enough typing, I gotta go check this ...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=91C70719-E081-2BAC-69F3ADAFD3CF6FCA\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-01-04 06:00:00',NULL,'ModelGlue-Goes-Java','Joe','modelglue',1,NULL,0,NULL,117,1,1),('955F4D01-E081-2BAC-6991EFC5ADE4A84D','Model-Glue 1.1 Preview','Model-Glue 1.1 is nearing a test release.  There only new \"feature\" is ColdSpring integreation;  the framework is about as robust as it can be while still obeying the KISS principle.\r\n\r\nThere are a few things coming, however, that can help you with Model-Glue apps:\r\n\r\n<strong>A really, really nice application \"starter kit\".</strong>\r\n\r\nI\'ve kept one around at work for a little while now, and I\'m r...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=955F4D01-E081-2BAC-6991EFC5ADE4A84D\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-01-04 07:11:00',NULL,'ModelGlue-11-Preview','Joe','modelglue',1,NULL,0,NULL,118,1,1),('BAC5368B-E081-2BAC-69D87E2D595AA324','To My Dear ColdFusion Troll','Dear ColdFusion Troll,\r\n\r\nI\'m sorry that, recently, you haven\'t agreed with some things I\'ve said on my blog.  I regret that I cause your lack of self-confidence to surface, and that you feel that continually leaving anonymous comments on my blog is a beneficial form of therapy.  \r\n\r\nIf you felt what you had to say was valid, and had confidence in your abilities as a writer, you\'d probabably sign ...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=BAC5368B-E081-2BAC-69D87E2D595AA324\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-01-11 13:36:00',NULL,'To-My-Dear-ColdFusion-Troll','Joe','modelglue',1,NULL,0,NULL,126,1,1),('BC62A7BA-E081-2BAC-690DA2E20D609568','Model-Glue, \"Mixins,\" and Headstart','When Model-Glue 1.1 hits, you might notice something weird in the \"Headstart\" application template:  a &lt;cfinclude&gt; tag in the middle of a CFC file.  There\'s a story behind that, and it\'s a practical example of what people are calling a \"Mixin.\"<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=BC62A7BA-E081-2BAC-690DA2E20D609568\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-01-12 05:30:00','From what I can tell, the formal name \"Mixin\" is coming from the Ruby camp, and it\'s catching on:  it\'s supposed to be supported in C# 3.0.  Well, we\'ve had them since...the dawn of CFCs, to my knowledge.\r\n\r\nI have...umm...\"mixed\" feelings over Mixins.  In the world of \"is-a\" and \"has-a,\" mixins are sort of a \"can-do,\" which is why I name mine the way I do.  They\'re likely to be used and abused, and I can see where overuse may make life hellish - but I think that\'s true for most programming tools.\r\n\r\nOk, hubbub aside, here\'s a practical use and example of a Mixin:\r\n\r\nIn the Model-Glue \"Headstart\" template I\'m working on, I\'ve got five controllers.  They all use at least one CFC that gets autowired to the controller via ColdSpring.  Some of them, like EmailController and ErrorController, use an EmailService CFC.  So, I wind up with code like this duplicated in both Controllers:  \r\n\r\n<div class=\"code\"><FONT COLOR=MAROON>&lt;cffunction name=<FONT COLOR=BLUE>\"SetEmailService\"</FONT> access=<FONT COLOR=BLUE>\"public\"</FONT> returntype=<FONT COLOR=BLUE>\"void\"</FONT> output=<FONT COLOR=BLUE>\"false\"</FONT>&gt;</FONT><br>\r\n&nbsp;&nbsp;&nbsp;<FONT COLOR=MAROON>&lt;cfargument name=<FONT COLOR=BLUE>\"EmailService\"</FONT> required=<FONT COLOR=BLUE>\"true\"</FONT> type=<FONT COLOR=BLUE>\"any\"</FONT> /&gt;</FONT><br>\r\n&nbsp;&nbsp;&nbsp;<FONT COLOR=MAROON>&lt;cfset variables._emailService = arguments.EmailService /&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;/cffunction&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;cffunction name=<FONT COLOR=BLUE>\"GetEmailService\"</FONT> access=<FONT COLOR=BLUE>\"private\"</FONT> returntype=<FONT COLOR=BLUE>\"any\"</FONT> output=<FONT COLOR=BLUE>\"false\"</FONT>&gt;</FONT><br>\r\n&nbsp;&nbsp;&nbsp;<FONT COLOR=MAROON>&lt;cfreturn variables._emailService /&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;/cffunction&gt;</FONT></div>\r\n\r\nWell, that\'s nice and redundant.  In fact, there are three such services and a configuration management CFC that get used by the various Controllers;  some use just one, some use more than one.  However, they all have something in common:  they\'re using application-level services to get something done.\r\n\r\nLet\'s say each controller \"can-do\" use of application services.  Wouldn\'t it be nice if there was a way I could just have all of repeated code in one place?\r\n\r\nOne approach is inheritance.  ColdFusion (thankfully!) doesn\'t have multiple inheritance, so that\'s out.  All of the controllers currently inherit from modelglue.core.Controller, so I could create a different subclass of modelglue.core.Controller, and point the actual controllers to that new subclass, but that gives me a code smell:  I\'m inheriting to share functionality, not represent an is-a relationship.\r\n\r\nInstead of using inheritance, I\'ll just \"mix in\" that functionality.  \r\n\r\nIt\'s, uh, really simple.\r\n\r\nFirst, I take all of that redundant code, and put it in my mixin file.  I\'ll call it UseApplicationServices.cfm, and put it under model/mixin.\r\n\r\nSecond, I\'ll copy all of those redundant UDFs into UseApplicationServices.cfm.\r\n\r\nThird (and last), I\'ll replace all of that redundant code with the tag that started it all, &lt;cfinclude>&gt;:\r\n\r\n<div class=\"code\"><FONT COLOR=MAROON>&lt;cfinclude template=<FONT COLOR=BLUE>\"/headstart/mixin/UseApplicationServices.cfm\"</FONT> /&gt;</FONT></div>\r\n\r\n<strong>What we\'ve done</strong>\r\n\r\nWe\'ve used a Mixin to say that each Controller \"can-do\" functionality related to public setting and private getting of application-wide services.  If I need to add a new service, I can just define it in my ColdSpring XML, add a SetNewService method to my UseApplicationServices.cfm Mixin, and all of my \"Mixed\" Controllers now have access to it.  Pretty trick, eh?\r\n\r\n<strong>Conclusion</strong>\r\n\r\nMixins are powerful, but they can be somewhat dangerous.  You\'re adding methods to your CFC on the fly, and it could become a fun jungle of figuring out just where a specific method came from:  imagine multiple mixins with identically named methods!','ModelGlue-Mixins-and-Headstart','Joe','modelglue',1,NULL,0,NULL,126,1,1),('207096B8-E081-2BAC-697F878438AD8E6A','What are \"Beans,\" anyhow?','Beans are a hot topic amongst the Object-Oriented ColdFusion crowd. For a while, the ColdFusion-scoped definition seemed to be changing every few months, but it looks like we\'re settling down a bit now that tools like ColdSpring are showing us just how abstract the concept of a ColdFusion \"Bean\" is.<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=207096B8-E081-2BAC-697F878438AD8E6A\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-01-31 07:27:00','In short, my humble opinion is that any CFC is a \"Bean\" as long as it follows two simple rules:\r\n\r\n<ol>\r\n  <li>All member variables are kept private, living in the variables scope.</li>\r\n  <li>Members are accessed only through methods named \"get[MemberName]\" and \"set[MemberName].\"</li>  \r\n</ol>\r\n\r\nThat\'s it.  \r\n\r\nWhat\'s nice about this loose of a definition is that it doesn\'t mean that only CFCs like Contact with Get/SetFirstname() and Get/SetLastname() are beans.  Many things can be beans:  service facades, Model-Glue Controllers, Mach-II Listeners, and even DAOs can act as beans.  \r\n\r\n<strong>A Simple Example</strong>\r\n\r\n\"How\'s this,\" you say?  \"Isn\'t a Bean just like a structure on steroids, good for representing a database table?\"\r\n\r\n\"No,\" I say, \"a Bean is any CFC that implements the two rules:  private member variables accessed through Get/Set pairs.\"\r\n\r\n\"Why\'s this cool,\" you ask?  \r\n\r\nIt provides a convention through which things like frameworks can rely upon to make your life easier.\r\n\r\nFor one, it lets Mach-II and Model-Glue developers utilize \"Event Beans\" to collect user-entered data.  If you used something that didn\'t act like a bean, and instead used the Set/GetValue() style to collect a Contact\'s information, you\'d have code in a Model-Glue Controller looking a lot like this:\r\n\r\n<div class=\"code\"><FONT COLOR=MAROON>&lt;cfset contact = createObject(<FONT COLOR=BLUE>\"component\"</FONT>, <FONT COLOR=BLUE>\"myapp.model.Contact\"</FONT>).init() /&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfset contact.setValue(<FONT COLOR=BLUE>\"firstname\"</FONT>, arguments.event.getValue(<FONT COLOR=BLUE>\"firstname\"</FONT>)) /&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfset contact.setValue(<FONT COLOR=BLUE>\"lastname\"</FONT>, arguments.event.getValue(<FONT COLOR=BLUE>\"lastname\"</FONT>)) /&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfset contact.setValue(<FONT COLOR=BLUE>\"address\"</FONT>, arguments.event.getValue(<FONT COLOR=BLUE>\"address\"</FONT>)) /&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfset contact.setValue(<FONT COLOR=BLUE>\"city\"</FONT>, arguments.event.getValue(<FONT COLOR=BLUE>\"city\"</FONT>)) /&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfset contact.setValue(<FONT COLOR=BLUE>\"state\"</FONT>, arguments.event.getValue(<FONT COLOR=BLUE>\"state\"</FONT>)) /&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfset contact.setValue(<FONT COLOR=BLUE>\"zip\"</FONT>, arguments.event.getValue(<FONT COLOR=BLUE>\"zip\"</FONT>)) /&gt;</FONT></div>\r\n\r\nThat gets ugly if you\'ve got a lot of data.\r\n\r\nInstead, if we force Contact to conform to the Bean pattern, Model-Glue/Mach-II can predict the names of specific Get/Set methods, see if those methods exist, and try to automatically populate your bean.  In Model-Glue, we\'d replace the above code with this:\r\n\r\n<div class=\"code\"><FONT COLOR=MAROON>&lt;cfset contact = arguments.event.makeEventBean(<FONT COLOR=BLUE>\"myapp.model.Contact\"</FONT>) /&gt;</FONT></div>\r\n\r\nA lot easier!\r\n\r\n<strong>Getting More Complex:  Beans, Model-Glue, ColdSpring, and \"Autowiring\"</strong>\r\n\r\nFor something more complex, let\'s examine the typical Model-Glue constructor for managing a table called SomeTable.  It\'d probably have a constructor a lot like this:\r\n\r\n<div class=\"code\"><FONT COLOR=GRAY><I>&lt;!--- Some attributes omitted for clarity ---&gt;</I></FONT><br>\r\n<FONT COLOR=MAROON>&lt;cffunction name=<FONT COLOR=BLUE>\"Init\"</FONT>&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfargument name=<FONT COLOR=BLUE>\"ModelGlue\"</FONT> /&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfargument name=<FONT COLOR=BLUE>\"InstanceName\"</FONT> /&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfset var datasource = <FONT COLOR=BLUE>\"\"</FONT> /&gt;</FONT><br>\r\n<br>\r\n  <FONT COLOR=GRAY><I>&lt;!--- Init the base ModelGlue.Core.Controller we extend ---&gt;</I></FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfset super.Init(arguments.ModelGlue) /&gt;</FONT><br>\r\n<br>\r\n  <FONT COLOR=GRAY><I>&lt;!--- Set up DAO and Gateway Factories ---&gt;</I></FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfset <br>\r\ndatasource = getModelGlue().getConfigBean(<FONT COLOR=BLUE>\"datasource\"</FONT>) /&gt;</FONT><br>\r\n<br>\r\n  <FONT COLOR=MAROON>&lt;cfset variables._daoFactory = createObject(<FONT COLOR=BLUE>\"component\"</FONT>, <FONT COLOR=BLUE>\"myapp.model.data.daoFactory\"</FONT>).init(datasource) /&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfset variables._gatewayFactory = createObject(<FONT COLOR=BLUE>\"component\"</FONT>, <FONT COLOR=BLUE>\"myapp.model.data.gatewayFactory\"</FONT>).init(datasource) /&gt;</FONT><br>\r\n<br>\r\n  <FONT COLOR=MAROON>&lt;cfreturn this /&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;/cffunction&gt;</FONT></div>\r\n\r\nThat\'s some ugly, repetitive code that you have to add to each controller.\r\n\r\nIf we decide that, instead of building the DAO and Gateway factories manually in the controller, we\'ll allow them to be set Bean-style (through methods named setDAOFactory() and setGatewayFactory() ), we have an understood contract through which something else can do the work for us.\r\n\r\nIn Model-Glue, that something else is ColdSpring;  Model-Glue\'s ColdSpring adapter knows to look for methods on your Controller named set[BeanId/Type] and then to \"autowire\" appropriately named/typed beans it knows about in the ColdSpring.xml file.\r\n\r\nAgain, by relying on the Get/Set convention that\'s the heart of the ColdFusion \"Bean\" pattern, a framework can do a lot of legwork for us.\r\n\r\nSo, we can ditch the constructor altogether, and simply add two methods:\r\n\r\n<div class=\"code\"><FONT COLOR=MAROON>&lt;cffunction name=<FONT COLOR=BLUE>\"setDAOFactory\"</FONT>&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfargument name=<FONT COLOR=BLUE>\"DAOFactory\"</FONT> /&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfset variables._daoFactory = arguments.daoFactory /&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;/cffunction&gt;</FONT><br>\r\n<br>\r\n<FONT COLOR=MAROON>&lt;cffunction name=<FONT COLOR=BLUE>\"setGatewayFactory\"</FONT>&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfargument name=<FONT COLOR=BLUE>\"GatewayFactory\"</FONT> /&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfset variables._gatewayFactory = arguments.gatewayFactory/&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;/cffunction&gt;</FONT></div>\r\n\r\nNow, when Model-Glue loads your controller, it\'ll hand the Controller instance to ColdSpring, and ColdSpring will collect all methods named set[something], and if it contains a definition for a bean (see, there it is again!) called [something], it\'ll call the set[something] method.\r\n\r\nIn English, I\'d set up the DAOFactory in the Coldspring XML file, then Model-Glue would automagically \"autowire\" the DAOFactory to the Controller the moment Model-Glue starts.\r\n\r\n<strong>Conclusion</strong>\r\n\r\nFollowing the convention of get/set pairs means some extra typing up front, but with tools like Model-Glue, Mach-II, and ColdSpring all providing utilities that leverage this convention, the time saved writing and maintaining application code is well worth it!','What-are-Beans-anyhow','Joe','modelglue',1,NULL,0,NULL,144,1,1),('31730F00-E081-2BAC-699C2027E7CC02EB','Frameworks:  Simpler?','I\'m writing a quick To-Do list application.  \r\n\r\nI created the tables (List and Task), fire up my Object-Relational Mapping (ORM) framework, open its XML configuration, and tell it that the List HasMany Tasks.\r\n\r\nThen, I open up my Inversion of Control (IoC) framework\'s XML file, and tell it about the concrete implementation of the abstract adapter I wrote to abstract the interface of the ORM fram...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=31730F00-E081-2BAC-699C2027E7CC02EB\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-02-03 14:28:00',NULL,'Frameworks--Simpler','Joe','modelglue',1,NULL,0,NULL,112,1,1),('445ECA4D-E081-2BAC-691FD365ADF2245B','Doug Hughes and Model-Glue on TV!  (Sort of.)','It looks like Doug Hughes\' newest site, <a href=\"FloridaVacationAuction.com\" target=\"_blank\">FloridaVacationAuction.com</a>, made the news last night up in Boston.  You can check out the video clip at <a href=\"http://www.thebostonchannel.com/theclick/6791045/detail.html\" target=\"_blank\">The Boston Channel\'s site</a>.  FloridaVacationAuction.com is the largest e-commerce site I know of that\'s 100% ...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=445ECA4D-E081-2BAC-691FD365ADF2245B\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-02-07 06:50:00',NULL,'Doug-Hughes-and-ModelGlue-on-TV--Sort-of','Joe','modelglue',1,NULL,0,NULL,127,1,1),('4A09E05F-E081-2BAC-698C0D1F8CBD8D35','Real-World Event Gateways:  Verity via Concurrency','A little while ago, there was a thread on Ben Forta\'s blog (I can\'t quite remember it) where someone was looking for practical examples of using Event Gateways.  They just saved the day in my neck of the woods, and here\'s why:\r\n\r\nI\'ve got an application where a common user interaction updates records in Verity.  You never know how many Verity records may get updated:  maybe one, maybe ten thousand...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=4A09E05F-E081-2BAC-698C0D1F8CBD8D35\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-02-08 09:10:00',NULL,'RealWorld-Event-Gateways--Verity-via-Concurrency','Joe','modelglue',1,NULL,0,NULL,125,1,1),('4EBD0869-E081-2BAC-6900B23F7FEAD1E7','Model-Glue hits 6,000 downloads!','I\'ve been keeping an eye on Model-Glue downloads, watching them slowly approach 5,000 overall downloads, and got distracted.  In the past month, Model-Glue has gone from ~4,800 downloads to 6,293.  Thanks to everyone who\'s downloaded it for making it the most downloaded thing I\'ve ever written!<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=4EBD0869-E081-2BAC-6900B23F7FEAD1E7\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-02-09 07:12:00',NULL,'ModelGlue-hits-6000-downloads','Joe','modelglue',1,NULL,0,NULL,129,1,1),('53E97CDF-E081-2BAC-696744608764CD81','ASP.NET:  Bringing bad VB to the Web','I heard this yesterday, and it made me chuckle:  \r\n\r\n\"<em>Sure, there are people doing good ASP.NET applications, but those are usually C# people who really \'get it\' building a model and attaching an ASP.NET presentation layer to it.  That\'s rare, though.  For the most part, ASP.NET is simply the most efficient way to turn a bad Visual Basic \'developer\' into a worse Web \'developer.\'</em>\"\r\n\r\nI hav...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=53E97CDF-E081-2BAC-696744608764CD81\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-02-10 07:16:00',NULL,'ASPNET--Bringing-bad-VB-to-the-Web','Joe','modelglue',1,NULL,0,NULL,134,1,1),('54237B7E-E081-2BAC-69C799B289B51E96','Model-Glue:Unity (2.0) and ColdSpring','Some people guessed it immediately, but one-half of the \"Unity\" nickname is that Model-Glue 2.0 is dependent on ColdSpring.  I\'ve split my outside-of-work development time between finishing 1.1 and starting 2.0 (2.0 is actually guiding 1.1 a bit, so it\'s worth the delay), and I\'d like to ask for some community input.<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=54237B7E-E081-2BAC-69C799B289B51E96\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-02-10 08:25:00','I\'m going to outline five things, and would really appreciate comments:\r\n\r\n<ol>\r\n<li>Why I\'ve decided to make the change to ColdSpring dependency</li>\r\n<li>What it means on a technical level</li>\r\n<li>What benefits it brings</li>\r\n<li>What the tradeoffs are</li>\r\n<li>Backwards-compatibility issues</li>\r\n</ol>\r\n\r\n<strong>1.  Why I\'ve decided to make the change to ColdSpring dependency</strong>\r\n\r\nAs Model-Glue grew, the framework became more and more focused on being a simple way to connect and control HTML views and their interaction with a CFC based business model.  Managing configuration isn\'t something it\'s good at, but it\'s something that ColdSpring is very good at.  In short, it separates configuration of your application from the Model-Glue system of &lt;controllers&gt; and &lt;event-handlers&gt;.\r\n\r\n<strong>2.  What it means on a technical level</strong>\r\n\r\nA \"pure\" Model-Glue 2.0 application (one that wasn\'t upgraded from 1.x), will have no &lt;config&gt; block in its ModelGlue.xml file.  Instead, there will be two .xml files:  \r\n\r\n<dl>\r\n  <dt>ModelGlue.xml</dt>\r\n  <dd>Contains &lt;controllers&gt; and &lt;event-handlers&gt; blocks</dd>\r\n  <dt>Configuration.xml</dt>\r\n  <dd>A ColdSpring file containing what used to be in the &lt;config&gt; block, configuration of the framework itself (such as whether to use ColdSpring or ChiliBeans in your application or a custom statebuilder for SES purposes), and any other services you\'d like to make available to your application or autowire to your controllers</dd>\r\n</dl>\r\n\r\n<strong>3.  What benefits it brings</strong>\r\n\r\nI wouldn\'t implement another layer of complexity unless I felt there were some very strong benefits.\r\n\r\n<ol>\r\n<li>One ModelGlue.xml can be used by many application instances.  I\'ve talked with people who are Application Service Providers using Model-Glue, and one need that sector has is the ability to re-deploy the same application to multiple clients.  Separating configuration from ModelGlue.xml means that all they need to do are maintain which client\'s Configuration.xml file is being loaded, and upgrades/modifications involve changing one ModelGlue.xml file.</li>\r\n<li>A single point of application configuration.  Application services / \"Configured Beans\" (configBeans)  can simply be defined in the Configuration.xml file instead of in many separate files.</li>\r\n<li>Begrudgingly, your ModelGlue.xml file can be split up thanks to a new root-level &lt;include&gt; tag.  Too many people have asked for this for me to ignore it.  You can now have a structure that looks like this:\r\n\r\n<div class=\"code\"><FONT COLOR=GRAY><I>&lt;!-- ModelGlue.xml --&gt;</I></FONT><br>\n<FONT COLOR=NAVY>&lt;modelglue&gt;</FONT><br>\n  <FONT COLOR=NAVY><FONT COLOR=FF8000>&lt;include template=<FONT COLOR=BLUE>\"ContactManagerModule.xml\"</FONT> /&gt;</FONT></FONT><br>\n  <FONT COLOR=NAVY><FONT COLOR=FF8000>&lt;include template=<FONT COLOR=BLUE>\"MessageBoardModule.xml\"</FONT> /&gt;</FONT></FONT><br>\n<FONT COLOR=NAVY>&lt;/modelglue&gt;</FONT><br>\n<br>\n<FONT COLOR=GRAY><I>&lt;!-- ContactManagerModule.xml --&gt;</I></FONT><br>\n<FONT COLOR=NAVY>&lt;modelglue&gt;</FONT><br>\n  &lt;controllers&gt;<br>\n    <FONT COLOR=GRAY><I>&lt;!-- ContactManager Controllers --&gt;</I></FONT><br>\n  &lt;/controller&gt;<br>\n  <FONT COLOR=NAVY>&lt;event-handlers&gt;</FONT><br>\n    <FONT COLOR=GRAY><I>&lt;!-- ContactManager Event Handlers --&gt;</I></FONT><br>\n  <FONT COLOR=NAVY>&lt;/event-handlers&gt;</FONT><br>\n<FONT COLOR=NAVY>&lt;/modelglue&gt;</FONT><br>\n<br>\n<FONT COLOR=GRAY><I>&lt;!-- MessageBoardModule.xml --&gt;</I></FONT><br>\n<FONT COLOR=NAVY>&lt;modelglue&gt;</FONT><br>\n  &lt;controllers&gt;<br>\n    <FONT COLOR=GRAY><I>&lt;!-- MessageBoard Controllers --&gt;</I></FONT><br>\n  &lt;/controller&gt;<br>\n  <FONT COLOR=NAVY>&lt;event-handlers&gt;</FONT><br>\n    <FONT COLOR=GRAY><I>&lt;!-- MessageBoard Event Handlers --&gt;</I></FONT><br>\n  <FONT COLOR=NAVY>&lt;/event-handlers&gt;</FONT><br>\n<FONT COLOR=NAVY>&lt;/modelglue&gt;</FONT></div>\r\n</ol>\r\n\r\n<strong>4.  What the tradeoffs are</strong>\r\n\r\nIt\'s more complicated.  Not much, but you\'ve got to edit two files that use two different XML schemas (ModelGlue and ColdSpring).  The ColdSpring piece is easy, though.  Instead of editing this in ModelGlue.xml:\r\n\r\n<div class=\"code\">&lt;config&gt;<br>\n  <FONT COLOR=NAVY><FONT COLOR=FF8000>&lt;setting name=<FONT COLOR=BLUE>\"viewMappings\"</FONT> value=<FONT COLOR=BLUE>\"/unitysamples/contactmanager/views\"</FONT> /&gt;</FONT></FONT><br>\n&lt;/config&gt;</div>\r\n\r\nYou edit this in Configuration.xml:\r\n\r\n<div class=\"code\"><FONT COLOR=NAVY>&lt;bean id=<FONT COLOR=BLUE>\"modelGlueConfiguration\"</FONT> class=<FONT COLOR=BLUE>\"modelglue.unity.framework.ModelGlueConfiguration\"</FONT>&gt;</FONT><br>\n    <FONT COLOR=NAVY>&lt;property name=<FONT COLOR=BLUE>\"viewMappings\"</FONT>&gt;</FONT><FONT COLOR=NAVY>&lt;value&gt;</FONT>/unityapplicationtemplate/views<FONT COLOR=NAVY>&lt;/value&gt;</FONT><FONT COLOR=NAVY>&lt;/property&gt;</FONT><br>\n<FONT COLOR=NAVY>&lt;/bean&gt;</FONT></div>\r\n\r\nI figured this was a fair trade for the additional power it brings.\r\n\r\n<strong>5.  Backwards-compatibility issues</strong>\r\n\r\nTo maintain backwards compatibility, I\'ve left support for the &lt;config&gt; block in ModelGlue.xml intact (as of an early alpha of the Model-Glue 2.0 core).  \r\nBasically, it overrides settings in Configuration.xml, so that you can literally drop a ModelGlue 1.x ModelGlue.xml file into a copy of the ModelGlue 2.0 application template and you\'ll be up and running.\r\n\r\nI debated adding this;  I\'m not sure it\'s necessary, and I\'d really like to encourage people to use ColdSpring instead of continuing to use the &lt;config&gt; block.\r\n\r\n\r\n\r\nThoughts, opinions?','ModelGlueUnity-20-and-ColdSpring','Joe','modelglue',1,NULL,0,NULL,135,1,1),('783DDD61-E081-2BAC-69B189EF8B17AF8A','Mission:  Clayton','My mission, that I\'ve chosen to accept, is to pack all of my belongings in the next six days, load them on to a truck, and to move them approximately 300 miles south of Washington, DC to the town of Clayton, NC.\r\n\r\nFor the next six months, I am to reconnoiter the lot diagonally across from the one I\'ve purchased, observing the construction of the <a href=\"http://www.doughughes.net\">Hughes</a> hous...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=783DDD61-E081-2BAC-69B189EF8B17AF8A\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-02-17 08:35:00',NULL,'Mission--Clayton','Joe','modelglue',1,NULL,0,NULL,139,1,1),('08F96619-E081-2BAC-690CA0897148ACFB','Cairngorm for Model-Glue Developers','I\'m going to be learning the Flex Cairngorm framework over the next few weeks.  It\'s an implementation of Front Controller for Flex developed by iteration::two (now part of Macromedia, soon part of Adobe...).  \r\n\r\nThere\'s a good deal of conceptual similarity between it and Model-Glue, so I\'m thinking of writing a blog entry / article / maybe a preso on how to get up and running with it that\'s targ...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=08F96619-E081-2BAC-690CA0897148ACFB\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-10-19 08:59:00',NULL,'Cairngorm-for-ModelGlue-Developers','Joe','modelglue',1,NULL,0,NULL,94,1,1),('15C8BDE9-E081-2BAC-69B0F1578918A319','Model-Glue\'s Many Names','Model-Glue wasn\'t always called Model-Glue.  It went through a few names, and they all have something to do with how it works.  I thought it might be fun to share them, as it gives some insight into the thought behind the framework:\r\n\r\n1.  Call And Answer\r\n\r\nRipped from a Barenaked Ladies song, \"Call and Answer\" talked about how I wanted a framework that used a message / listener format where even...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=15C8BDE9-E081-2BAC-69B0F1578918A319\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-07-14 10:38:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,87,1,1),('1EA76969-E081-2BAC-695D63CAE46CD2A6','Eat Your Beans:  ConfigBeans in Model-Glue','The Model-Glue Framework has a really nice feature called ConfigBeans, powered by a little tool I wrote called ChiliBeans.  By using ConfigBeans instead of inserting configuration values, like Datasource names, into your ModelGlue.xml file, you can seperate your configuration from your application.  This post gives a quick overview of creating a new ConfigBean and using it in your application.  On...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=1EA76969-E081-2BAC-695D63CAE46CD2A6\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-05-27 10:54:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,87,1,1),('34143FF0-E081-2BAC-690DE70A107AB3BF','Model-Glue 0.9 en route','Sorry for the delay - had the whole marriage, honeymoon, new dog, fried power supply on main workstation thing to deal with.  M-G 0.9 is on its way, a few of the changes include:\r\n\r\n* Revised logging within the EventRequest.  The debugging output will no longer reset when an exception is thrown.\r\n\r\n* A few additional \"Oops!\" exceptions being thrown from Model-Glue.cfc, in the event of things like ...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=34143FF0-E081-2BAC-690DE70A107AB3BF\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-05-31 14:39:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,82,1,1),('3D094697-E081-2BAC-6954375379A8F68A','The Pattern Prerequisite is Pain','There\'s pattern fever going on!  CFCDev list is full of patterns, good Flash development relies on them, and everyone seems to want to know where they can \"learn\" patterns.  From the sound of it, your app isn\'t \"good\" if you\'re not passing TO\'s from your DAO\'s to your BO\'s to pass TO\'s to the V part of the MVC.\r\n\r\nHere\'s the thing, though:  Patterns aren\'t templates.  They\'re not patterns as in \"t...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=3D094697-E081-2BAC-6954375379A8F68A\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-06-02 06:31:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,80,1,1),('42A3AD9F-E081-2BAC-69067DDB45FF51C2','Sean Corfield:  Model-Glue @ Macromedia','I got a nice surprise this morning:  a blog entry entitled \"Mach II Out, Model-Glue In!\" appeared on Sean Corfield\'s blog.  It looks like they\'re (Macromedia) using it to provide UI for some of the manual processes in their new order management system.\r\n\r\nFull post at <a href=\"http://www.corfield.org/blog/index.cfm?do=blog.entry&entry=400C3F00-AC4B-A7F0-3C7AC08CF7947335\" target=\"_blank\">http://www...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=42A3AD9F-E081-2BAC-69067DDB45FF51C2\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-06-03 10:35:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,84,1,1),('49CAFDF4-E081-2BAC-69AD5772ABCF584B','Arf! Rails-Like ActiveRecord for ColdFusion','I\'d like to introduce \"Arf!\" (Active Record Factory!), a Rails-style ActiveRecord implementation in ColdFusion.  I have to disclaim this by saying that I have mixed feelings about ActiveRecord - it\'s at the same time very nice for doing things quickly, but I think it\'s ripe for abuse, as it\'s easy to think it\'s the begin and end all of OO programming.  However, I think it\'s also a great way to sto...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=49CAFDF4-E081-2BAC-69AD5772ABCF584B\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-10-31 22:06:00','Here\'s the basics of what the Arf! provides:\r\n\r\n* JDBC metadata based reflection:  not database specific\r\n\r\n* Creates ActiveRecord API\'d instances out of CFCs that extend a base ActiveRecord component\r\n\r\n* Implements hasMany() and belongsTo() methods for establishing Record properties that point to other tables\r\n\r\n* Allows for overloading any of the automagically generated methods to add custom business logic\r\n\r\n* Automagic methods on Records include GetInstance(), Create(), Read(), Update(), Delete(), Save() [smart create/update], List(orderBy, whereClause), Validate() [does type and length checking], and SetNNN()/GetNNN() methods for each DB column\r\n\r\n\r\n<strong>Code Demo: Arf! in Ten Steps</strong>\r\n\r\nSo, here\'s Arf! It\'s not ready for release yet, but I\'d like to introduce it by showing how it\'d be used to manipulate a two-table database in ten steps.  If you like what you see, please let me know if you\'d like to be on the alpha tester list.\r\n\r\n<strong>Step 1:  Create a database, tables, and datasource</strong>\r\n\r\nI start by creating a database called \"arfblog\" (in any JDBC-compliant database, I\'ve tested MySQL and MS SQL Server).  I give it two tables:  blogEntry (blogEntryId, title, body) and comment (commentId, blogEntryId, and message).  The primary keys (blogEntryId and commentId) can be auto-incrementing numeric or VARCHAR(35) - if you go the VARCHAR route, Arf! will automagically use UUIDs for the key values.  I then create a ColdFusion datasource pointing to the database and call it \"arfblog\"\r\n\r\n<strong>Step 2:  Configure an Arf! datasource bean</strong>\r\n\r\nThis\'d be best done in ColdSpring or ChiliBeans (or your IoC container of choice), but you start by creating an Arf! datasource.  It\'s just a little bean:\r\n\r\n<div class=\"code\"><FONT COLOR=MAROON>&lt;cfset ds = createObject(<FONT COLOR=BLUE>\"component\"</FONT>, <FONT COLOR=BLUE>\"net.clearsoftware.arf.Datasource\"</FONT>).init() /&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;cfset ds.setDSN(<FONT COLOR=BLUE>\"arfblog\"</FONT>) /&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;cfset ds.setDatabase(<FONT COLOR=BLUE>\"arfblog\"</FONT>) /&gt;</FONT></div>\r\n\r\n<strong>Step 3:  Create an Arf! RecordFactory</strong>\r\n\r\nNext, we create an instance of the Arf! RecordFactory itself.  This is the CFC that performs the Arf! magic.\r\n\r\n<div class=\"code\"><FONT COLOR=MAROON>&lt;cfset rf = createObject(<FONT COLOR=BLUE>\"component\"</FONT>, <FONT COLOR=BLUE>\"net.clearsoftware.arf.RecordFactory\"</FONT>).init(ds, true) /&gt;</FONT></div>\r\n\r\n<strong>Step 4: Create an ActiveRecord extension</strong>\r\n\r\nNow, we need to create a CFC that extends the base Arf! ActiveRecord CFC.  It\'s pretty simple.  I create a BlogEntry.cfc and Comment.cfc from the ActiveRecordTemplate.cfc that comes with Arf!.  There\'s a single line of code that *must* be in the CFC, not in the base ActiveRecord:\r\n\r\n<div class=\"code\"><FONT COLOR=GRAY><I>&lt;!--- BlogEntry.cfc ---&gt;</I></FONT><br>\r\n<FONT COLOR=MAROON>&lt;cfcomponent extends=<FONT COLOR=BLUE>\"net.clearsoftware.arf.ActiveRecord\"</FONT> output=<FONT COLOR=BLUE>\"false\"</FONT>&gt;</FONT><br>\r\n<br>\r\n<FONT COLOR=GRAY><I>&lt;!--- Don\'t remove this line of code ---&gt;</I></FONT><br>\r\n<FONT COLOR=MAROON>&lt;cffunction name=<FONT COLOR=BLUE>\"getFinalSuper\"</FONT> access=<FONT COLOR=BLUE>\"private\"</FONT>&gt;</FONT><FONT COLOR=MAROON>&lt;cfreturn super /&gt;</FONT><FONT COLOR=MAROON>&lt;/cffunction&gt;</FONT><br>\r\n<br>\r\n<FONT COLOR=GRAY><I>&lt;!--- Add statements like &lt;cfset hasMany() /&gt; and &lt;cfset belongsTo() /&gt; here ---&gt;</I></FONT><br>\r\n<br>\r\n<FONT COLOR=MAROON>&lt;/cfcomponent&gt;</FONT></div>\r\n\r\n<em>Comment.cfc is identical to BlogEntry.cfc at this point</em>\r\n\r\n<strong>Step 5: Tell the classes about each other</strong>\r\n\r\nA comment belongsTo an entry, and an entry hasMany comments, so we add the appropriate lines to each CFC, telling it what to relate to, and what CFC to use when getting related records.\r\n\r\n<div class=\"code\"><FONT COLOR=GRAY><I>&lt;!--- BlogEntry.cfc ---&gt;</I></FONT><br>\r\n<FONT COLOR=MAROON>&lt;cfcomponent extends=<FONT COLOR=BLUE>\"net.clearsoftware.arf.ActiveRecord\"</FONT> output=<FONT COLOR=BLUE>\"false\"</FONT>&gt;</FONT><br>\r\n<br>\r\n<FONT COLOR=GRAY><I>&lt;!--- Don\'t remove this line of code ---&gt;</I></FONT><br>\r\n<FONT COLOR=MAROON>&lt;cffunction name=<FONT COLOR=BLUE>\"getFinalSuper\"</FONT> access=<FONT COLOR=BLUE>\"private\"</FONT>&gt;</FONT><FONT COLOR=MAROON>&lt;cfreturn super /&gt;</FONT><FONT COLOR=MAROON>&lt;/cffunction&gt;</FONT><br>\r\n<br>\r\n<FONT COLOR=GRAY><I>&lt;!--- Add statements like &lt;cfset hasMany() /&gt; and &lt;cfset belongsTo() /&gt; here ---&gt;</I></FONT><br>\r\n<FONT COLOR=MAROON>&lt;cfset hasMany(<FONT COLOR=BLUE>\"comment\"</FONT>, <FONT COLOR=BLUE>\"net.clearsoftware.arf.test.Comment\"</FONT>) /&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;/cfcomponent&gt;</FONT></div>\r\n\r\nNow, we do the same for the Comment:\r\n\r\n<div class=\"code\"><FONT COLOR=GRAY><I>&lt;!--- Comment.cfc ---&gt;</I></FONT><br>\r\n<FONT COLOR=MAROON>&lt;cfcomponent extends=<FONT COLOR=BLUE>\"net.clearsoftware.arf.ActiveRecord\"</FONT> output=<FONT COLOR=BLUE>\"false\"</FONT>&gt;</FONT><br>\r\n<br>\r\n<FONT COLOR=GRAY><I>&lt;!--- Don\'t remove this line of code ---&gt;</I></FONT><br>\r\n<FONT COLOR=MAROON>&lt;cffunction name=<FONT COLOR=BLUE>\"getFinalSuper\"</FONT> access=<FONT COLOR=BLUE>\"private\"</FONT>&gt;</FONT><FONT COLOR=MAROON>&lt;cfreturn super /&gt;</FONT><FONT COLOR=MAROON>&lt;/cffunction&gt;</FONT><br>\r\n<br>\r\n<FONT COLOR=GRAY><I>&lt;!--- Add statements like &lt;cfset hasMany() /&gt; and &lt;cfset belongsTo() /&gt; here ---&gt;</I></FONT><br>\r\n<FONT COLOR=MAROON>&lt;cfset belongsTo(<FONT COLOR=BLUE>\"blogEntry\"</FONT>, <FONT COLOR=BLUE>\"net.clearsoftware.arf.test.BlogEntry\"</FONT>) /&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;/cfcomponent&gt;</FONT></div>\r\n\r\n<strong>Step 6: Create a new blogEntry</strong>\r\n\r\nOk, I can ask my factory for some classes now.  Let\'s ask for a new blogEntry.\r\n\r\n<div class=\"code\"><FONT COLOR=MAROON>&lt;cfset blogEntry = rf.makeRecord(<FONT COLOR=BLUE>\"net.clearsoftware.arf.test.BlogEntry\"</FONT>) /&gt;</FONT></div>\r\n\r\nThat gives us an ActiveRecord.  It\'s got CRUD/S methods, get/set methods for each column in the blogEntry table, a getComment() method added by the hasMany() statement, a validate() method that\'ll check each property for NULL, length, and type, as well as a list() statement that has optional ORDER BY and WHERE arguments, and a getInstance() method that\'ll show us internal instance data (by value, where type makes it possible).\r\n\r\n<strong>Step 7: Populate and save a blogEntry, showing that it\'s added with list()</strong>\r\n\r\n<div class=\"code\"><FONT COLOR=MAROON>&lt;cfset blogEntry.setTitle(<FONT COLOR=BLUE>\"Some new entry\"</FONT>) /&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;cfset blogEntry.setBody(<FONT COLOR=BLUE>\"A really great blog entry!\"</FONT>) /&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;cfset blogEntry.save() /&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;cfdump var=<FONT COLOR=BLUE>\"#blogEntry.list()#\"</FONT>&gt;</FONT></div>\r\n\r\nNot much to it, eh?\r\n\r\n<strong>Step 8: Create a related comment</strong>\r\n\r\nNow we\'ll create a related comment, and commit it.\r\n\r\n<div class=\"code\"><FONT COLOR=MAROON>&lt;cfset comment = rf.makeRecord(<FONT COLOR=BLUE>\"net.clearsoftware.arf.test.Comment\"</FONT>) /&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;cfset comment.setBlogEntryId(blogEntry.getBlogEntryId()) /&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;cfset comment.setMessage(<FONT COLOR=BLUE>\"I\'m a wiseacre comment.\"</FONT>) /&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;cfset comment.save() /&gt;</FONT></div>\r\n\r\nNotice that we set its BlogEntryId property to the BlogEntryId value of the BlogEntry we made.\r\n\r\n<strong>Step 9: Show our relation properties</strong>\r\n\r\nNow, we\'ll see where those belongsTo() and hasMany() come into play.  Remember saying that the comment belongsTo() a BlogEntry?  Adding the following line of code asks the comment for its entry:\r\n\r\n<div class=\"code\"><FONT COLOR=MAROON>&lt;cfset commentsEntry = comment.getBlogEntry() /&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;cfdump var=<FONT COLOR=BLUE>\"#commentsEntry#\"</FONT> /&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;cfdump var=<FONT COLOR=BLUE>\"#commentsEntry.getInstance()#\"</FONT> /&gt;</FONT></div>\r\n\r\nThe first CFDump shows that getBlogEntry() returns a BlogEntry, and the second shows that its instance data is the data for the BlogEntry.\r\n\r\nNow, hasMany() relationships can return more than one instance, so a simple QueryIterator is returned.  It\'s got a pretty straightforward API, and you can get to its underlying query using QueryIterator.getQuery().  Here it is in action:\r\n\r\n<div class=\"code\"><FONT COLOR=MAROON>&lt;cfset entryComments = blogEntry.getComment() /&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;cfdump var=<FONT COLOR=BLUE>\"#entryComments.getQuery()#\"</FONT>&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;cfset firstComment = entryComments.next() /&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;cfdump var=<FONT COLOR=BLUE>\"#firstComment.getInstance()#\"</FONT> /&gt;</FONT></div>\r\n\r\nThe first CFDump shows the query of related comments coming back, the second shows that that we can get a Comment instance from that query, and ask it for its instance data.  We could also manipulate its data and save() it because its a fully-operational instance of our net.clearsoftware.arf.test.Comment CFC that extends ActiveRecord.\r\n\r\n<strong>Step 10: Overriding methods</strong>\r\n\r\nBecause our \"shell\" CFCs (BlogEntry and Comment) extend ActiveRecord, we can alter the functionality of the default methods that are created for us.  If we wanted to change the getTitle() method of BlogEntry to always come back in upper-case, we\'d change our BlogEntry.cfc to the following:\r\n\r\n<div class=\"code\"><FONT COLOR=GRAY><I>&lt;!--- BlogEntry.cfc ---&gt;</I></FONT><br>\r\n<FONT COLOR=MAROON>&lt;cfcomponent extends=<FONT COLOR=BLUE>\"net.clearsoftware.arf.ActiveRecord\"</FONT> output=<FONT COLOR=BLUE>\"false\"</FONT>&gt;</FONT><br>\r\n<br>\r\n<FONT COLOR=GRAY><I>&lt;!--- Don\'t remove this line of code ---&gt;</I></FONT><br>\r\n<FONT COLOR=MAROON>&lt;cffunction name=<FONT COLOR=BLUE>\"getFinalSuper\"</FONT> access=<FONT COLOR=BLUE>\"private\"</FONT>&gt;</FONT><FONT COLOR=MAROON>&lt;cfreturn super /&gt;</FONT><FONT COLOR=MAROON>&lt;/cffunction&gt;</FONT><br>\r\n<br>\r\n<FONT COLOR=GRAY><I>&lt;!--- Add statements like &lt;cfset hasMany() /&gt; and &lt;cfset belongsTo() /&gt; here ---&gt;</I></FONT><br>\r\n<FONT COLOR=MAROON>&lt;cfset hasMany(<FONT COLOR=BLUE>\"comment\"</FONT>, <FONT COLOR=BLUE>\"net.clearsoftware.arf.test.Comment\"</FONT>) /&gt;</FONT><br>\r\n<br>\r\n<FONT COLOR=MAROON>&lt;cffunction name=<FONT COLOR=BLUE>\"getTitle\"</FONT>&gt;</FONT><br>\r\n&nbsp;&nbsp;&nbsp;<FONT COLOR=MAROON>&lt;cfreturn uCase(super.getTitle()) /&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;/cffunction&gt;</FONT><br>\r\n<br>\r\n<FONT COLOR=MAROON>&lt;/cfcomponent&gt;</FONT></div>\r\n\r\nNow, to show it works:\r\n\r\n<div class=\"code\"><FONT COLOR=MAROON>&lt;cfoutput&gt;</FONT><br>\r\n#blogEntry.getTitle()#<br>\r\n<FONT COLOR=MAROON>&lt;/cfoutput&gt;</FONT></div>\r\n\r\nAh, now that\'s good and annoying!\r\n\r\n<strong>Conclusion</strong>\r\n\r\nSo, we\'ve got a beginning of an ActiveRecord API / Generator working in ColdFusion.  There\'s more to the API than what I\'ve  covered here.  Hopefully, I\'ll get it documented and out the door before too long.  If you\'d like a copy to play with, please leave me a comment and I\'ll put you on the \"alpha\" tester list.  I should have the code (it\'ll be LGPL, like Model-Glue) into the clearsoftware.net SVN repo before too long.','Arf-RailsLike-ActiveRecord-for-ColdFusion','Joe','modelglue',1,NULL,0,NULL,106,1,1),('4C397788-E081-2BAC-69479FD23D006A70','Arf! Video Demo - Write CF faster.  A lot faster.','I had a spare hour this morning (my dog\'s doesn\'t understand the shift back to standard time yet), so I recorded a Camtasia demo of Arf! in action.  This shows the ArfBlog demo I blogged about yesterday in action, and a great unblogged \"Step 11\" that shows where Arf! can really be cool.\r\n\r\nThe video (about 10 minutes) is available at <a href=\"http://clearsoftware.net/demos/arfTenSteps\" target=\"_bl...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=4C397788-E081-2BAC-69479FD23D006A70\">Read more on Joe Rinehart\'s blog</a>]</p>','1999-11-01 09:22:00',NULL,'Arf-Video-Demo--Write-CF-faster--A-lot-faster','Joe','modelglue',1,NULL,0,NULL,72,1,1),('4C39E4C9-E081-2BAC-69498F5455CC717B','Arf! Video Demo - Write CF faster.  A lot faster.','I had a spare hour this morning (my dog\'s doesn\'t understand the shift back to standard time yet), so I recorded a Camtasia demo of Arf! in action.  This shows the ArfBlog demo I blogged about yesterday in action, and a great unblogged \"Step 11\" that shows where Arf! can really be cool.\r\n\r\nThe video (about 10 minutes) is available at <a href=\"http://clearsoftware.net/demos/arfTenSteps\" target=\"_bl...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=4C39E4C9-E081-2BAC-69498F5455CC717B\">Read more on Joe Rinehart\'s blog</a>]</p>','1999-11-01 09:22:00',NULL,'Arf-Video-Demo--Write-CF-faster--A-lot-faster','Joe','modelglue',1,NULL,0,NULL,36,1,1),('4C3A3569-E081-2BAC-69BD8209DCF1BF03','Arf! Video Demo - Write CF faster.  A lot faster.','I had a spare hour this morning (my dog\'s doesn\'t understand the shift back to standard time yet), so I recorded a Camtasia demo of Arf! in action.  This shows the ArfBlog demo I blogged about yesterday in action, and a great unblogged \"Step 11\" that shows where Arf! can really be cool.\r\n\r\nThe video (about 10 minutes) is available at <a href=\"http://clearsoftware.net/demos/arfTenSteps\" target=\"_bl...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=4C3A3569-E081-2BAC-69BD8209DCF1BF03\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-11-01 09:27:00',NULL,'Arf-Video-Demo--Write-CF-faster--A-lot-faster','Joe','modelglue',1,NULL,0,NULL,97,1,1),('4D926BB3-E081-2BAC-6929AA58D80554E0','Arf! Alpha bits - Soon, very soon.','Wow, there\'s a lot of people interested in Arf!  I\'m going to try to get some alpha bits into the public SVN repo this evening.  I want to do a bit of refactoring, some better commenting, and some API documentation before I put this thing in the wild.\r\n\r\nI am a little concerned about this project branching, so I\'d like to ask those who get the bits and make changes to submit your changes back to m...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=4D926BB3-E081-2BAC-6929AA58D80554E0\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-11-01 15:41:00',NULL,'Arf-Alpha-bits--Soon-very-soon','Joe','modelglue',1,NULL,0,NULL,97,1,1),('4EE2904F-E081-2BAC-692C9CBE75675886','Arf! 1.0e-23 (That\'s 0.00...001) bits','Seems like a lot of people want to test this, so, well, here\'s what I\'ve got so far.  It\'s pretty rough at this point, documentation is sparse, and there\'s some missing functionality, but this is an improvement on the version I Camtasia demo\'d.\r\n\r\n<a href=\"http://clearsoftware.net/client/enclosures/net.zip\">http://clearsoftware.net/client/enclosures/net.zip</a>\r\n\r\nThe most notable API change is th...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=4EE2904F-E081-2BAC-692C9CBE75675886\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-11-01 21:50:00',NULL,'Test','Joe','modelglue',1,'C:\\Inetpub\\JoeRinehart\\clearsoftware.net\\client\\enclosures/net.zip',0,'application/zip',116,1,1),('4F639EA7-E081-2BAC-69DAE2E0C00C8329','Model-Glue 0.9 Sneak Peak','I just sent out the test version of 0.9 to the Model-Glue testing crowd.  If you\'d like to be in on future testing, drop me a line.  Here\'s the message I sent, which gives a good idea of what\'s in 0.9, and even hints at 0.95 and 1.0:\r\n\r\n<em>\r\nHi all,\r\n\r\nI\'ve just run the cvs commit for a test version of Model-Glue 0.9.  A zip of the /ModelGlue library is attached to this email.  It\'s a zip of my d...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=4F639EA7-E081-2BAC-69DAE2E0C00C8329\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-06-05 22:02:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,83,1,1),('50BF3AFC-E081-2BAC-69CF3F463A104CB9','Arf! Subversion and Trac','Simeon Bateman has donated Subversion (SVN) and Trac hosting for Arf!, so I\'ll be using that to host the code and keep track of issues.\r\n\r\nFeel free to get the latest code, at any time, from http://svn.simb.net/arf/trunk/net/clearsoftware/arf/ (use your favorite SVN client to hit that URL.  Yes, it starts with http://, not svn://.)\r\n\r\nTrouble tickets and feature requests can be filed at the Trac s...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=50BF3AFC-E081-2BAC-69CF3F463A104CB9\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-11-02 06:29:00',NULL,'Arf-Subversion-and-Trac','Joe','modelglue',1,NULL,0,NULL,113,1,1),('598B2CCE-E081-2BAC-698011AA5C938073','Model-Glue 0.9 is here!  Woohoo!','Model-Glue 0.9 is released!  You can download it at <a href=\"http://www.model-glue.com/downloadmg.cfm\" target=\"_blank\">http://www.model-glue.com/downloadmg.cfm</a>.\r\n\r\nRelease notes:\r\n\r\n\r\n0.9.00 - New Features:\r\n\r\nControllers now have timed cache capabilities - see Quickstart for details.\r\n\r\nSubapplications are supported with the ModelGlue_APP_KEY\r\n\r\nDebugging trace can now be added to with argume...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=598B2CCE-E081-2BAC-698011AA5C938073\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-06-07 21:19:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,89,1,1),('624498CA-E081-2BAC-693F33C7F0C3B44B','Model-Glue Listserv','Just a reminder to new folks downloading:  There is a Model-Glue listserv full of other users and great answers.  You can sign up (or just lurk) at <a href=\"http://lists.topica.com/lists/modelglue/\" target=\"_blank\">http://lists.topica.com/lists/modelglue/</a>.<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=624498CA-E081-2BAC-693F33C7F0C3B44B\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-06-09 14:01:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,86,1,1),('69ECCA66-E081-2BAC-69E0757132F92911','Model-Glue 1.0 News','Yep, I really am working on it!  Things have been crazy busy at work - combining that with some renovations and home and my summer cycling habits, I\'m a little swamped.\r\n\r\nHowever, there are two new things in the bleeding-edge...one permanent, the other is in there for feedback:\r\n\r\n1.  Permanent: \"append\" attribute on the result tag\r\n\r\nOk, so the \"redirect\" attribute is nice.  But imagine this:  y...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=69ECCA66-E081-2BAC-69E0757132F92911\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-07-30 18:36:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,92,1,1),('69F11F97-E081-2BAC-69E9FE0C793E5BA2','Model-Glue DTD','Jared has <a target=\"_blank\" href=\"http://www.web-relevant.com/blogs/cfobjective/index.cfm?mode=entry&entry=67A813F9-BDB9-5320-E8044B128FD07875\">posted</a> a Model-Glue DTD...there are a few M-G DTD\'s floating around, but this is the first I\'ve seen that declared portions of the XML as entities, which can make your life easier.  More on using XML entities with Model-Glue can be found on <a target=...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=69F11F97-E081-2BAC-69E9FE0C793E5BA2\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-07-30 18:46:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,102,1,1),('977D8D0D-E081-2BAC-69CFB4FFF63859E9','The framework argument is silly.','There\'s a strange discussion taking place across a few ColdFusion blogs over whether or not frameworks are a \"good\" thing.  While my opinion is probably pretty obvious, I\'ve avoided getting involved because I think the argument itself is an exercise in the absurd.\r\n\r\nIt\'s impossible to make an argument as to whether or not frameworks are appropriate for the same reason that two frameworks, chosen ...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=977D8D0D-E081-2BAC-69CFB4FFF63859E9\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-09-27 08:00:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,94,1,1),('9793B3F3-E081-2BAC-691EFBAFAF6A9EFD','Business cases for Framework developers','A quick list of five reasons I\'d hire a candidate with framework experience over one without.  This isn\'t to say I\'d avoid candidates without framework experience - if I could find someone with really good anti-framework reasoning, they\'d probably be displaying most of these five!\r\n\r\nLeading up to the Fusebox and Frameworks conference later this week, there\'s been discussion over whether or not \"f...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=9793B3F3-E081-2BAC-691EFBAFAF6A9EFD\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-09-27 08:34:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,94,1,1),('9BCFC8F6-E081-2BAC-6951B6BCB4390B31','Model-Glue 1.0:  Inherit the Quickstart','The current Model-Glue Quickstart is great for what it is:  how to create a really quick application that shows the features of the framework.  However, the framework\'s gone beyond the scope of the original example it builds (a stock quote app).\r\n\r\nBecause of this, I\'m asking for volunteers to help with a new Quickstart.  It\'d be great to both get ideas for a new sample as well as someone who\'d be...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=9BCFC8F6-E081-2BAC-6951B6BCB4390B31\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-08-09 11:11:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,93,1,1),('9C517B8C-E081-2BAC-698DCBFA66161BCD','\"Merrimack\" (7.0.1) is available!','Get it while it\'s hot, get it while it\'s buttered.  Download available at Macromedia\'s site.  It\'s also interesting to note that the U.S.S. Merrimack was a scuttled United States frigate that the Confederacy rebuilt into an iron-clad, leading to a pretty interesting stalemate that could be seen as one of the first events in modern mechanized, armored warfare.\r\n\r\nDownload: <a href=\"http://www.macro...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=9C517B8C-E081-2BAC-698DCBFA66161BCD\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-09-28 06:38:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,92,1,1),('9C794B8E-E081-2BAC-6984D1E4FFD0FAAA','Model-Glue Users Rock','It\'s still a small (but growing) group, but I really like the people getting involved with Model-Glue.  We\'ve got OOP newbies who like the simplicity of the framework, people who know more OOD/OOA than me pointing out places I can tweak things, but most of all, there\'s a lot of great questions being asked on the Model-Glue mailing list (<a href=\"http://lists.topica.com/lists/modelglue\" target=\"_bl...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=9C794B8E-E081-2BAC-6984D1E4FFD0FAAA\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-06-20 21:13:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,84,1,1),('9D495E59-E081-2BAC-693525110654574B','Model-Glue 1.0:  Available for Download','Sometime this AM the current version number at <a href=\"http://www.model-glue.com\">www.model-glue.com</a> began showing 1.0.00.  \r\n\r\nYep, it\'s available.  Should be pretty stable, as a number of people have been using much of the new code under the \"bleeding edge release\" for a while now.  I\'m not 100% sure of stability of Linux and OS X case-sensitivity issues (I lack a testing platform at the mo...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=9D495E59-E081-2BAC-693525110654574B\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-09-28 11:05:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,95,1,1),('9DBCE5E6-E081-2BAC-6960BA8F841C859E','Model-Glue Jobs, Coast to Coast!','<a href=\"http://www.web-relevant.com/blogs/cfobjective/index.cfm\">Jared  Rypka-Hauer</a> and <a href=\"http://www.boyzoid.com\">Scott Stroz</a> sent me three exciting links over the past week!  It looks like Model-Glue is beginning to make it into job descriptions, coast to coast!\r\n\r\nIn California:\r\n\r\n<a href=\"http://jobsearch.monster.com/getjob.asp?JobID=31342962&AVSDM=2005%2D06%2D27+10%3A22%3A04&L...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=9DBCE5E6-E081-2BAC-6960BA8F841C859E\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-08-09 20:10:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,92,1,1),('9FDE946E-E081-2BAC-6920474ABE3C0636','Model-Glue 1.0.01: GetSingleton() lives!','I mis-built the 1.0.01 to ignore the GetSingleton() method on the framework level.  My apologize to the inconvenienced, you should now be up and running.<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=9FDE946E-E081-2BAC-6920474ABE3C0636\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-09-28 23:12:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,97,1,1),('A18201E7-E081-2BAC-6989695D28693F7C','MG 1.0:  Event Forwarding != Event Announcement','I had a feeling this feature may cause a bit of confusion, and I got my first comment on it last night.  \r\n\r\nWhile there *is* a method on the Core.Event object called Forward() that lets you pass the name of an <event-handler> to forward the event request to, this is *not* the equivalent of announcing a new event in Mach-II.\r\n\r\nWhere Model-Glue lies \"between\" Mach-II and Fusebox is that it impleme...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=A18201E7-E081-2BAC-6989695D28693F7C\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-09-29 06:45:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,94,1,1),('AC2976FF-E081-2BAC-69C2389A3DB77FA3','If Frameworks were Airlines','I couldn\'t think of a good way to wrap up my Fusebox and Frameworks 2005 experience, so I\'m taking leeway with the old \"If Operating Systems were Airlines\" jokes.  Overall, the conference was a blast, and I\'d like to thank Teratech for having me come out to say a few words.\r\n\r\nWithout further ado, here\'s what I\'ve learned about the CF frameworks:\r\n\r\n<strong>Fusebox</strong>\r\n\r\nStarted in the days ...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=AC2976FF-E081-2BAC-69C2389A3DB77FA3\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-10-01 08:30:00',NULL,'If-Frameworks-were-Airlines','Joe','modelglue',1,NULL,0,NULL,95,1,1),('B68CC875-E081-2BAC-69C3E87F2B5E565F','Frameworks are Bad, Methodologies are Good.','...is the general message of a presentation entitled \"Developing Applications Without Frameworks,\" given at the Fusebox and Frameworks 2005 conference by Simon Horwith.  There\'s a good amount of stuff in the presentation I disagreed with, but felt that it would be inappropriate (and rude) to interrupt the preso with what would result in an argument.  Instead, I felt it would be better to think abo...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=B68CC875-E081-2BAC-69C3E87F2B5E565F\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-10-03 08:54:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,94,1,1),('BDB9AE90-E081-2BAC-69205A7F442F302D','Mach-II isn\'t \"Dead\"','There\'s buzz going on right now about the demise of Mach-II, and its \"replacement\" by Model-Glue.  I\'m excited to see Model-Glue continue to grow in popularity, but I\'m hoping we can avoid sensationalism and spreading Mach-II FUD.  My conclusion is the same as it usually is:  be pragmatic.\r\n\r\nHere\'s a few thinking points on the topic:\r\n\r\n1.  Use what\'s right for you.\r\n\r\nMach-II\'s author (Ben Edwar...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=BDB9AE90-E081-2BAC-69205A7F442F302D\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-06-27 08:15:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,84,1,1),('BF018821-E081-2BAC-69A8B83FD77B055E','Model-Glue @ CFUnited','Model-Glue will be demo\'d at CFUnited!  There\'s a BOF on Wednesday at 9p in Room 4.  After a half an hour of panel discussion, we\'ll shift to a Breeze presentation going out to the AZCFUG and ColdFusion Live! user groups.\r\n\r\nIt should be interesting presenting this to both an online and live audience simultaneously.\r\n\r\nIf you\'re not going to be at CFUnited, head to http://coldfusion.meetup.com/17/...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=BF018821-E081-2BAC-69A8B83FD77B055E\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-06-27 14:10:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,87,1,1),('D2D1A861-E081-2BAC-691F2582E55234DC','Model-Glue:  My take on the MVC pattern','Model-Glue is an MVC framework for ColdFusion that, similar to Mach-II, takes an II (implicit invocation) approach.  It\'s designed to be a bit less intimidating than Mach-II, but not lose power.\r\n\r\nDownload at <a href=\"http://www.model-glue.com/downloads.cfm\">http://www.model-glue.com/downloads.cfm</a>.\r\n\r\nSome highlights:\r\n\r\n<ul>\r\n<li>Friendly terminology in the configuration XML</li>\r\n<li>Simple...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=D2D1A861-E081-2BAC-691F2582E55234DC\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-03-23 23:20:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,72,1,1),('D2DCF7E3-E081-2BAC-693632310D4FE1BF','Model-Glue, Mach-II, and Fusebox','Is Model-Glue intended to compete with Mach-II or Fusebox?  Well, it could, but only if you want it to.  I wrote it to learn how to implement MVC and II in ColdFusion, and I and a few others started liking it.\r\n\r\n<a href=\"http://www.model-glue.com\">Download and Learn More about Model-Glue</a>.\r\n\r\nI\'ve released it under the LGPL so that others can use it and modify it.  In a few weeks, I\'ll begin a...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=D2DCF7E3-E081-2BAC-693632310D4FE1BF\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-03-23 23:35:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,68,1,1),('D48816E7-E081-2BAC-6930A3D94A342104','Using ConfigBeans / IoC in Model-Glue','Model-Glue makes it very easy to insert configuration information at runtime through XML.  By using the ChiliBeans utility I\'ve written, you can store configuration information for your application outside of the ModelGlue.xml file, which should be reserved for \"glueing\" your Model, View, and Controller together.\r\n\r\n<em>If you\'re reading this at clearsoftware instead of model-glue.com, you can fin...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=D48816E7-E081-2BAC-6930A3D94A342104\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-03-24 07:18:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,68,1,1),('D5E31096-E081-2BAC-69B8242914F18217','Quickstart Docs for Model-Glue Framework Released','I was serious when I said documentation was coming soon!  The Quickstart guide is designed to introduce you to Model-Glue in a hurry, and get you writing productive applications quickly.\r\n\r\nIf you\'re reading this at clearsoftware.net, head on over to <a href=\"http://www.model-glue.com\">http://www.model-glue.com</a> and download the latest version to get the docs (and a bug fix or two).<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=D5E31096-E081-2BAC-69B8242914F18217\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-03-24 13:44:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,83,1,1),('D9FDADAE-E081-2BAC-695CE3F162D125C1','Model-Glue + BlueDragon 6.2','Model-Glue now runs on .NET via BlueDragon 6.2 for the Microsoft .NET framework.  I\'ve gotten all of the examples to run, and taking a few potshots at the framework, without breaking.\r\n\r\n<em>If you\'re reading this at clearsoftware.net, head to <a href=\"http://www.model-glue.com\">http://www.model-glue.com</a> to download Model-Glue.</em>\r\n\r\nThere were only a few tweaks to be made:\r\n\r\n*  In Macromed...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=D9FDADAE-E081-2BAC-695CE3F162D125C1\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-03-25 08:49:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,75,1,1),('DAEA417F-E081-2BAC-69932A80B552E293','Easy ColdSpring in Model-Glue','Dave Ross and Chris Scott are doing an _amazing_ job with the ColdSpring project.  For those of you who aren\'t familiar with Spring, it\'s a Java framework that provides a number of services such as IoC (like ConfigBeans in Model-Glue), Aspect Oriented Programming, and ORM functionality amongst many things.  Right now, ColdSpring is at 0.2.1 and provides IoC and Aspect Oriented functionality.\r\n\r\n<e...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=DAEA417F-E081-2BAC-69932A80B552E293\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-10-10 10:12:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,93,1,1),('E9F8A345-E081-2BAC-690ECCDB489FCAAB','Model-Glue:  Big Update Coming','Debug/framework trace, default exception handling, cross-platform compatibility, and an overhaul of some internals.  \r\n\r\n<em>If you\'re reading this at clearsoftware.net, head to <a href=\"http://www.model-glue.com\">http://www.model-glue.com</a> to download Model-Glue.</em>\r\n\r\nIf there\'s anything you\'d like to see changed about the framework, now\'s a good time to comment.\r\n\r\n\r\nSome details:\r\n\r\n* A n...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=E9F8A345-E081-2BAC-690ECCDB489FCAAB\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-03-28 11:17:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,73,1,1),('EEE69FAB-E081-2BAC-697C9AF268F26FA2','ModelGlue Listserv','I\'ve set up a mailing list for ModelGlue at Topica.  If you\'re looking for information on ModelGlue or for help, it\'d be a good place to post a message - my inbox gets a little cramped ;).\r\n\r\nYou can subscribe at <a href=\"http://lists.topica.com/lists/modelglue/\" target=\"_blank\">http://lists.topica.com/lists/modelglue/</a>.\r\n\r\n<font color=\"red\">Note on subscribing:</font>  When topica locks you in...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=EEE69FAB-E081-2BAC-697C9AF268F26FA2\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-03-29 10:18:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,72,1,1),('EF99C7F7-E081-2BAC-69CF83D8DF0591F0','Coming attraction:  ConfigBeans in depth','Model-Glue\'s ConfigBeans are a great way to seperate your application configuration from both your code and your framework config (ModelGlue.xml).  There\'s been a few questions about how to fully utilize them, so I\'m writing a fair-sized blog entry on the topic over the next day or so.  If you have any questions about them, now\'s a good time to comment!<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=EF99C7F7-E081-2BAC-69CF83D8DF0591F0\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-05-18 07:37:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,75,1,1),('EFE03DC9-E081-2BAC-69CD275B0705E0D0','Model-Glue:  Zero Whitespace','A few people have e-mailed me with whitespace concerns in Model-Glue.  Some of the CFCs in the current distribution didn\'t have output=\"false\" applied, and the framework\'s ModelGlue.cfm file produced some noise.\r\n\r\n<em>If you\'re reading this at clearsoftware.net, head to <a href=\"http://www.model-glue.com\">http://www.model-glue.com</a> to download Model-Glue.</em>\r\n\r\nLike exception handling, white...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=EFE03DC9-E081-2BAC-69CD275B0705E0D0\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-03-29 14:50:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,69,1,1),('F5EC8C50-E081-2BAC-69161D57E9D985F8','Model-Glue @ WikiPedia','I got a fun e-mail this morning from Dave Shuck letting me know that someone\'s added Model-Glue to WikiPedia.  It\'s at <a href=\"http://en.wikipedia.org/wiki/Model-Glue\">http://en.wikipedia.org/wiki/Model-Glue</a>, and is linked to from the main ColdFusion page at <a href=\"http://en.wikipedia.org/wiki/ColdFusion\">http://en.wikipedia.org/wiki/ColdFusion</a>.<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=F5EC8C50-E081-2BAC-69161D57E9D985F8\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-07-08 06:08:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,81,1,1),('F61EC92B-E081-2BAC-69B6C9DEE17C99C1','Model-Glue \"Bleeding Edge\" Available','Over on the Model-Glue listserv (<a href=\"http://lists.topica.com/lists/modelglue\" target=\"_blank\">http://lists.topica.com/lists/modelglue</a>), I\'d talked about setting up a nightly build / bleeding edge site for Model-Glue.  Well, you\'re now free to grab the latest code whenever you want:  I\'ve allowed read-only anonymous access to\r\nthe Subversion (SVN) repository I\'m using for Model-Glue.\r\n\r\n<e...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=F61EC92B-E081-2BAC-69B6C9DEE17C99C1\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-07-08 07:00:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,90,1,1),('FA2A2669-E081-2BAC-6979D3478AEDC219','Model-Glue: 0.8.00 Release','Model-Glue 0.8 is here, with a few feature, a new distribution structure, and random other goodness.  \r\nWe now have public/private event-handlers, Dave Carabetta was kind enough to undo my Pascal Casing throughout the \"application\" code (thanks Dave!), and the samples / application template have moved into their own directories instead of being under /ModelGlue.\r\n\r\n<em>If you\'re reading this at cl...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=FA2A2669-E081-2BAC-6979D3478AEDC219\">Read more on Joe Rinehart\'s blog</a>]</p>','2005-03-31 14:48:00',NULL,NULL,'Joe','modelglue',1,NULL,0,NULL,77,1,1),('1D158585-E081-2BAC-6952C5EF5FD7655E','Model-Glue:  What the hell is autowiring?','Scott Stroz dropped me an IM yesterday asking \"What the hell is autowiring?\"  It\'s a pretty good question, and one that I haven\'t done a good job explaining.  \r\n\r\nSo, here we go:  the evolution of autowiring.<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=1D158585-E081-2BAC-6952C5EF5FD7655E\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-03-21 08:53:00','<strong>In the beginning...</strong>\r\n\r\n\r\n...there was Model-Glue and ChiliBeans.  It was good.  You could ask for a ConfigBean, and use it as configuration.  That was handy, but it didn\'t really get the full point of IoC:  the bean could be a lot more than a representation of a datasource, etc.  \r\n\r\n<strong>So I shifted the branding message...</strong>\r\n\r\nGetConfigBean (\"Get Configuration Bean\") slowly became GetConfigBean (\"Get Configured Bean\").  To use the (overused now!) contact manager example, instead of asking for something like GetConfigBean(\"datasource.xml\"), you could ask for something like GetConfigBean(\"ContactManagerService.xml\"), and ChiliBeans would load a ContactManagerService with methods like saveContact(), loadContact(), and listContacts(). \r\n\r\nThis change was enabled by allowing properties defined in ChiliBeans to refer to other chilibeans xml files.  This means you could define your ContactService as a config\'d bean and tell it to use the bean defined by Datasource.xml as its datasource.\r\n\r\nIn code, this represented a shift from this:\r\n\r\n<div class=\"code\"><FONT COLOR=GRAY><I>&lt;!--- ContactController.cfc ---&gt;</I></FONT><br>\r\n<FONT COLOR=MAROON>&lt;cffunction name=<FONT COLOR=BLUE>\"Init\"</FONT>&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfargument name=<FONT COLOR=BLUE>\"ModelGlue\"</FONT>&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfset super.Init(arguments.ModelGlue) /&gt;</FONT><br>\r\n<br>\r\n  <FONT COLOR=GRAY><I>&lt;!--- Get our datasource ---&gt;</I></FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfset var Datasource= getModelGlue().getConfigBean(<FONT COLOR=BLUE>\"Datasource.xml\"</FONT>) /&gt;</FONT><br>\r\n<br>\r\n  <FONT COLOR=GRAY><I>&lt;!--- Create the service and init it with the datasource ---&gt;</I></FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfset variables.ContactService = createObject(<FONT COLOR=BLUE>\"component\"</FONT>, <FONT COLOR=BLUE>\"contactmanager.model.service.Contactservice\"</FONT>).init(variables.datasource) /&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfreturn this /&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;/cffunction&gt;</FONT></div>\r\n\r\nTo this:\r\n\r\n<div class=\"code\"><FONT COLOR=GRAY><I>&lt;!--- ContactController.cfc ---&gt;</I></FONT><br>\r\n<FONT COLOR=MAROON>&lt;cffunction name=<FONT COLOR=BLUE>\"Init\"</FONT>&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfargument name=<FONT COLOR=BLUE>\"ModelGlue\"</FONT>&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfset super.Init(arguments.ModelGlue) /&gt;</FONT><br>\r\n<br>\r\n  <FONT COLOR=GRAY><I>&lt;!--- Create the service---&gt;</I></FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfset variables.ContactService = getModelGlue().getConfigBean(<FONT COLOR=BLUE>\"ContactService.xml\"</FONT>) /&gt;</FONT><br>\r\n<br>\r\n  <FONT COLOR=MAROON>&lt;cfreturn this /&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;/cffunction&gt;</FONT></div>\r\n\r\n<strong>Then ColdSpring showed up...</strong>\r\n\r\nOne issue I had with Chilibeans was that it was tied directly to the filesystem.  ColdSpring solves this by removing the filesystem nature of its BeanFactory - generally, a file is loaded when the factory is constructed that contains all of the beans the factory can create.  That means I could replace the two files needed for my existing setup (Datasource.xml and ContactService.xml) with a single definition file that shows ContactService needing Datasource in its constructor:\r\n\r\n<div class=\"code\"><FONT COLOR=NAVY>&lt;beans&gt;</FONT><br>\r\n  <FONT COLOR=NAVY>&lt;bean id=<FONT COLOR=BLUE>\"ContactService\"</FONT> class=<FONT COLOR=BLUE>\"contactmanager.model.service.Contactservice\"</FONT>&gt;</FONT><br>\r\n    &lt;constructor-arg name=<FONT COLOR=BLUE>\"Datasource\"</FONT>&gt;<br>\r\n      <FONT COLOR=NAVY>&lt;ref bean=<FONT COLOR=BLUE>\"Datasource\"</FONT> /&gt;</FONT><br>\r\n    &lt;/constructor-arg&gt;<br>\r\n  <FONT COLOR=NAVY>&lt;/bean&gt;</FONT><br>\r\n<br>\r\n  <FONT COLOR=NAVY>&lt;bean id=<FONT COLOR=BLUE>\"Datasource\"</FONT> class=<FONT COLOR=BLUE>\"contactmanager.model.data.Datasource\"</FONT>&gt;</FONT><br>\r\n    <FONT COLOR=NAVY>&lt;property name=<FONT COLOR=BLUE>\"DSN\"</FONT>&gt;</FONT><br>\r\n      <FONT COLOR=NAVY>&lt;value&gt;</FONT>ContactManager<FONT COLOR=NAVY>&lt;/value&gt;</FONT><br>\r\n    <FONT COLOR=NAVY>&lt;/property&gt;</FONT><br>\r\n  <FONT COLOR=NAVY>&lt;/bean&gt;</FONT><br>\r\n<FONT COLOR=NAVY>&lt;/beans&gt;</FONT></div>\r\n\r\nIt\'s a very small change in code:\r\n\r\n<div class=\"code\"><FONT COLOR=GRAY><I>&lt;!--- Create the service---&gt;</I></FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfset variables.ContactService = getModelGlue().getConfigBean(<FONT COLOR=BLUE>\"ContactService.xml\"</FONT>) /&gt;</FONT></div>\r\n\r\nBecomes:\r\n\r\n<div class=\"code\"><FONT COLOR=GRAY><I>&lt;!--- Create the service---&gt;</I></FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfset variables.ContactService = getModelGlue().getConfigBean(<FONT COLOR=BLUE>\"ContactService\"</FONT>) /&gt;</FONT></div>\r\n\r\nHowever, my controller is no longer tied to the filesystem, and it has a much more powerful BeanFactory behind it.\r\n\r\n<strong>Life was good, but repetitive...</strong>\r\n\r\nIf my contact manager grew, I\'d probably start needing things like an EmailService, an AuthenticationService, a LoggingService...and I\'d need to add some constructor code for each of these.  My constructor would start to look like this:\r\n\r\n<div class=\"code\"><FONT COLOR=GRAY><I>&lt;!--- ContactController.cfc ---&gt;</I></FONT><br>\r\n<FONT COLOR=MAROON>&lt;cffunction name=<FONT COLOR=BLUE>\"Init\"</FONT>&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfargument name=<FONT COLOR=BLUE>\"ModelGlue\"</FONT>&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfset super.Init(arguments.ModelGlue) /&gt;</FONT><br>\r\n<br>\r\n  <FONT COLOR=GRAY><I>&lt;!--- Create services ---&gt;</I></FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfset variables.ContactService = getModelGlue().getConfigBean(<FONT COLOR=BLUE>\"ContactService\"</FONT>) /&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfset variables.EmailService= getModelGlue().getConfigBean(<FONT COLOR=BLUE>\"EmailService\"</FONT>) /&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfset variables.AuthenticationService= getModelGlue().getConfigBean(<FONT COLOR=BLUE>\"AuthenticationService\"</FONT>) /&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfset variables.LoggingService= getModelGlue().getConfigBean(<FONT COLOR=BLUE>\"LoggingService\"</FONT>) /&gt;</FONT><br>\r\n<br>\r\n  <FONT COLOR=MAROON>&lt;cfreturn this /&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;/cffunction&gt;</FONT></div>\r\n\r\n<strong>Behold, the autowire...</strong>\r\n\r\nNow, autowiring doesn\'t do much to cut down on this repetitive code.  What it does do, however, is delegate the entire creation of these services to something else.  It serves to <strong>dumb down</strong> your controller - in MVC, a dumb, skinny controller is better than a fat, smart controller.\r\n\r\nTo make my ContactController an \"autowired\" controller, I\'d do the following:\r\n\r\n\r\n<ol>\r\n<li>Make sure I was using the Model-Glue BER, available at svn://clearsoftware.net/clearsoftware.net . (Yes, 1.1 is coming, so this\'ll remove this step.  I just need to finish unpacking and my cfunited presos.)</li>\r\n<li>Write a \"setter\" function for each of these services named Set[BeanIdFromColdSpring]:\r\n\r\n<div class=\"code\"><FONT COLOR=MAROON>&lt;cffunction name=<FONT COLOR=BLUE>\"setContactService\"</FONT>&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfargument name=<FONT COLOR=BLUE>\"contactService\"</FONT>&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfset variables.contactService = arguments.contactService /&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;/cffunction&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;cffunction name=<FONT COLOR=BLUE>\"setEmailService\"</FONT>&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfargument name=<FONT COLOR=BLUE>\"EmailService\"</FONT>&gt;</FONT><br>\r\n  <FONT COLOR=MAROON>&lt;cfset variables.EmailService= arguments.EmailService/&gt;</FONT><br>\r\n<FONT COLOR=MAROON>&lt;/cffunction&gt;</FONT><br>\r\n<FONT COLOR=GRAY><I>&lt;!--- And so on... ---&gt;</I></FONT></div>\r\n</li>\r\n<li>Delete my constructor (\"init\" method) entirely.</li>\r\n</ol>\r\n\r\nNow, when Model-Glue loads your controller, it\'ll look at it for any methods named \"Set[something]\", and see if ColdSpring has a bean named \"something\".  If it does, it\'ll ask ColdSpring for that bean, and call the Set[Something] method, passing it the bean.\r\n\r\n<strong>Wait - autowiring is more code?</strong>\r\n\r\nYep, I did a double-take too.  It *is* more code to autowire.  However, as your app grows, you\'re likely to start to \"mash up\" more services.  I have one application that has about nine different \"NnnnService\" CFCs, and each controller needs its own subset of those (sometimes one, sometimes all nine!).\r\n\r\nWhat I\'ve done there is move all of these \"set[Something\" functions to a file called /model/mixin/applicationServices.cfm that each of my controllers <cfincludes> (becoming a \"static mixin\").  That way, if a new service pops up, I add a setter function to one file, and it\'s available in all services!  Now that\'s much nicer writing init() plumbing code in specific controllers!!','ModelGlue--What-the-hell-is-autowiring','Joe','modelglue',1,NULL,0,NULL,150,1,1),('C16E8B2D-E081-2BAC-69A405B4EBEB1F85','ColdFusion Mixins:  For now, I\'ll CFInclude.','Last night, I blogged a way of doing \"Mixins\" in ColdFusion that involved the &lt;cfinclude&gt; tag.  Mixins in ColdFusion aren\'t new, and I wasn\'t expecting my post to be perceived as an increase in the community\'s interest in their use.  I\'m not sure it\'s any higher now than it was a few days ago.<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=C16E8B2D-E081-2BAC-69A405B4EBEB1F85\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-01-12 20:42:00','However, Simon Horwith seems to think using <cfinclude> is a horrible idea altogether.  That\'s ok with me, but I\'d like to know why.  On Sean\'s blog, he comments:\r\n\r\n\"<em>I think that this is very bad form. I encourage anyone who reads this comment to please not include files inside of your CFCs. It defeats the whole purpose of using components.</em>\"\r\n\r\n<a href=\"http://corfield.org/blog/index.cfm/do/blog.entry/entry/Mixins\" target=\"_blank\">In his post</a>, Sean suggests a Mixin implementation in which a mixin() method is used to copy method from a source CFC instance into the current CFC instance.  While I do think &lt;cfinclude&gt; has an odor to it, I\'ve though about it all evening, and this approach gives me a \"smell\" as well.  Here\'s why:\r\n\r\n<strong>First</strong>, I think this method does more than &lt;cfinclude&gt; to \"defeat the whole purpose of using components.\"  (I don\'t think either actually completely defeats the purpose.)  \r\n\r\nThe purpose of a component is to provide a template from which something (an instance) can be, well, instantiated.  This something is an Object, capable of containing data and functionality that operates on that instance\'s data.\r\n\r\nHowever, a Mixin, by itself, has no instance data.  In fact, a Mixin, in the Ruby-esque, dynamically-typed-language form that I\'ve encountered them, is a collection of functionality that may use existing instance data, but can\'t have any of its own.  \r\n\r\nIf there\'s a way to defeat the purpose of using a component, it\'s by creating a component that can\'t, by definition, be what a component is (a collection of functionality <strong>and</strong> instance data)!\r\n\r\nIn short, I don\'t think a Mixin should be something that can be instantiated;  it has no instance.\r\n\r\n(We could probably argue a bit about Abstract classes and methods a bit here, but that\'s way outside of the scope of ColdFusion, so can we skip it?)\r\n\r\n<strong>Second</strong>, there\'s no clean way to make a mixin() method available to classes at large.  You\'d either need a universal base class (not a good idea), or to take Sean\'s approach of modifying the web-inf version of component.cfc.  That\'s the base of all CFCs, and is created when ColdFusion is installed.  I\'m not a big fan of having to modify it, because its creates a customized version of ColdFusion on your machine.  That\'s OK if you can get away with it, but many, such as those creating COTS software, just can\'t do such things.\r\n\r\n<strong>Third</strong>, the actual implementation of a mixin() method could be problematic.  Sean addresses one in his entry:  what do you do if the method you\'re trying to mix already exists?  It could be optional to overwrite it, controlled by an argument.  (Using &lt;cfinclude&gt; provides a layer of safety, but does limit mixin capability.  If you try to redefine an existing function, ColdFusion won\'t even instantiate the component.)  I\'ve also seen someone suggest that the mixin() method provide \"safe\" namespaces for methods to be copied to (like myMixin_doSomething()).  \r\n\r\nFurther, what about public vs. private Mixins?  There are cases where the mixed functionality may be an internal utility - should it always go to both variables and this scopes?  How do we control this?  With &lt;cfinclude&gt;, there\'s no new caveats;  you can just use the access attribute on the &lt;cffunction&gt; tag.\r\n\r\nWhile &lt;cfinclude&gt; may be more limited in terms of capability, it is existing, stock ColdFusion functionality, not open to multiple implementations, and therefore a standard API that\'s not likely to change.\r\n\r\n<strong>&lt;cfinclude&gt; - not without problems</strong>\r\n\r\nUsing &lt;cfinclude&gt; has its own problems.  I haven\'t seen anyone voice my strongest problem with it: the mixin is explicit, done at instantiation, and is therefore fairly rigid and static.  If you use it, there\'s no (good) way to dynamically control what gets mixed at runtime.  \r\n\r\nHowever, with mixins, do we *want* people to conditionally mix?  That\'s a situation I\'d rather see an IoC container solve (<font color=\"#999\">yes, this is a hint to my real point in this post</font>).\r\n\r\nIt also just \"feels\" weird. Earlier today, while talking about this over instant messenger, I told Sean that it \"feels like kissing your sister.\"  (Please don\'t get any odd, hillbilly ideas about my gene pool. I\'m an only child, and can therefore only use the phrase as a hypothetical simile.)\r\n\r\n<strong>Conclusion</strong>\r\n\r\nI\'m not happy with any of the current ways to mix in ColdFusion.  At the moment, I lean towards &lt;cfinclude&gt; because I feel it\'s safest (no method overwrites, and lack of mixing capability), follows the KISS principle (no implementation debates), and it doesn\'t make me use Components that can\'t be true Objects.\r\n\r\nHowever, I think there\'s a better solution than either &lt;cfinclude&gt; or mixin():  a third party to govern mixing mechanics.  Hi, ColdSpring!\r\n\r\n<strong>ColdSpring and Mixins</strong>\r\n\r\nIf you read the comments on my first post, you\'ll see that both Kurt Wiersma and Chris Scott, both involved in the ColdSpring framework, hint that we\'ll see some sort of Mixin support for ColdSpring.  I\'d really like to see this, as it\'d alleviate some of my concerns:\r\n\r\n<ul>\r\n<li>\r\nCommon Implementation\r\n\r\nThose doing things that use IoC and AOP are the most likely to need a Mixin, and ColdSpring could provide a third-party implementation of mixing mechanics that\'d both set some rules (method overwrites?) and let you have wide mixing support without modifying ColdFusion itself.\r\n</li>\r\n<li>\r\nDynamic Mixing\r\n\r\nYou\'d mix only if appropriate, and have an IoC container that could help resolve what you really *want* to mix.  If you were mixing in persistence methods, this could probably let you do something along the lines of mixing in database-specific persistence at runtime, overcoming a big problem with &lt;cfinclude&gt; based Mixins.\r\n</li>\r\n</ul>\r\n\r\nI don\'t see any way that ColdSpring could use .cfm files as the Mixin templates, so it\'d probably use CFCs.  That\'s a sacrifice I\'d be willing to make.','ColdFusion-Mixins--For-now-Ill-CFInclude','Joe','modelglue',1,NULL,0,NULL,123,1,1),('A17AFA6B-E081-2BAC-6920919F260AFC09','Model-Glue \"Headstart\" Preview (screenshots!)','Model-Glue 1.1, while not a feature release, is including a new application called \"Headstart.\"  It\'s basically a sample application I\'ve wanted to write for a while that\'s grown into a template that can be used for creating your own applications.\r\n\r\nIts features follow:\r\n\r\n* MySQL and MS SQL Server support\r\n\r\n* Role and Key based security (allows group-level and record-level security)\r\n\r\n* User a...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=A17AFA6B-E081-2BAC-6920919F260AFC09\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-01-06 15:44:00',NULL,'ModelGlue-Headstart-Preview-screenshots','Joe','modelglue',1,NULL,0,NULL,118,1,1),('C4BEEFB6-E081-2BAC-69B14A82EAEDA764','Mixins and cfinclude.  Again.','In my post last night, I explained my reasons for favoring the use of &lt;cfinclude&gt; to achieve simple \"Mixins\" in ColdFusion components, and asked Simon Horwith to give more detail in reference to his opposition to the idea.  He did so, <a href=\"http://www.horwith.com/index.cfm?mode=entry&entry=C47D7A16-E081-0478-4767BE79DC05DAA9\">over on his blog</a>, and it\'s well worth a read.  In fact, if ...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=C4BEEFB6-E081-2BAC-69B14A82EAEDA764\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-01-13 11:57:00','Overall, Simon\'s post led me to think that people may have gotten the wrong impression from my posts on this topic.  \r\n\r\nFirst, I am, in no way, advocating the use of the &lt;cfinclude&gt; tag <strong>inside</strong> of a CFC\'s method.  That would be insane.\r\n\r\nSecond, nothing in a &lt;cfinclude&gt;-style Mixin template should live outside of a &lt;cffunction&gt;.\r\n\r\nThird, nothing in the Mixin template\'s &lt;cffunction&gt; should add to, and preferably not alter the existing scopes of the target CFC - the Mixin\'s methods should be observational in nature.\r\n\r\nOk, on to my reply:\r\n\r\n<em>Joe\'d like me to elaborate, so I will.</em>\r\n\r\nThanks Simon!\r\n\r\n<em>Code within a &lt;cfinclude&gt; is neither encapsulated nor parameterized.</em>\r\n\r\nI think you\'re taking my use of &lt;cfinclude&gt; very far out of its context.  It\'s being used only to bring &ltcffunctions&gt; into an existing CFC ? nothing in the included .CFM exists outside of (encapsulated, parameterized) &lt;cffunction&gt; tags.  \r\n\r\nThe code within the &lt;cfinclude&gt; I discussed is both encapsulated and parameterized ? not in an Object sense, but in a Function sense, because a Mixin is *not* an Object, but more like a fragment of functionality.  It\'s a template, not a component.\r\n\r\nThe call to include the code is also parameterized.  I needed an API that was limited in scope, making Mixin implementation simple and limited.  In fact, the only parameter I wanted to be able to pass was the .cfm file to use as a template.  &lt;cfinclude&gt; is exactly that API.\r\n\r\n<em>There are some basic rules of OOP that I firmly believe in and apply to CFC use. One is that all business logic belongs in CFC methods.</em>\r\n\r\nAgreed ? but how those methods get into an instance doesn?t necessarily need to be from a .cfc file.\r\n\r\n<em>Another is that CFCs don\'t ever display anything ? their methods are data in and data out.</em>\r\n\r\n100% Agreed.  \r\n\r\n<em>Given those two facts, what good can come from using an include within a CFC method?</em>\r\n\r\nIf you look at what I did, I never used a &lt;cfinclude&gt; inside of a CFC method.  I think doing so would be pretty silly.\r\n\r\n<em>If the thing being included contains business logic then that code should be in a method.</em>\r\n\r\nAll of the business logic in the &lt;cfinclude&gt; was in methods.  That?s the point ? importing of methods.\r\n\r\n<em>If anything, this [code in a method] is more reusable than having it in an include file.</em>\r\n\r\nThe include *only* contains methods that need to be re-used across CFCs without inheritance.  I?m not sure you read what was being &lt;cfinclude&gt;?d in my example?\r\n\r\n<em>If the thing being included generates output, it\'s OK for that code to talk to CFCs but should never be used by a CFC (since they shouldn\'t be writing to the screen).</em>\r\n\r\n100% agreement.  (S)he who &lt;cfinclude&gt;s something into a CFC that creates output has gone way, way astray.\r\n\r\n<em>I\'m still waiting for someone to give me an example where using inside of a CFC makes more sense than having all of your logic in components.</em>\r\n\r\n?Mixing? is the only example, and only case, where I can find &lt;cfinclude&gt; as being appropriate in a CFC.  Even in this case, the included CFM would have to follow strict rules:  no output, no code outside of &lt;cffunction&gt; tags, and preferably ?observation-only? interaction with the private/public scopes of the target CFC.\r\n\r\nIt?s a very dangerous thing to do, with limited (good) application.  I?m up front about that, and I?m taking steps with further Model-Glue development to eliminate the reason I?m doing it in the first place.  The example I blogged is about the only good place I can see to do what I did.\r\n\r\n<em>Mixins appears to me like a convoluted way to implement the Aspect Oriented Programming technique of \'weaving\'.</em>\r\n\r\nYes, it?s similar.  Weaving and Advice are somewhat more advanced AOP concepts that deserve much more robust mechanics than &lt;cfinclude&gt;.  \r\n\r\nI used &lt;cfinclude&gt; instead of implementing my own AOP mechanics because it?s intentionally simple and limited, and not convoluted in the least.  I needed a mechanism to statically add a template of methods to a CFC ? and &lt;cfinclude&gt; works like a charm.\r\n\r\n<em>Weaving aspects is an interesting idea, but I wouldn\'t choose to use &lt;cfinclude&gt; in order to implement it.</em>\r\n\r\nNeither would I!  Doing AOP cleanly in CF would require a library to not just provide method injection/inflection mechanisms, but one that could also resolve the injected/inflected methods and their dependencies as well!  Come to think of it, this already sounds familiar.\r\n\r\n<em>this entry is pretty long already, but if anyone out tere would like to see me implement AOP in CFML, I don\'t mind doing it.</em>\r\n\r\nSee ColdSpring AOP ? it\'s already been done, with the full power of an IoC container behind it :)','Mixins-and-cfinclude--Again','Joe','modelglue',1,NULL,0,NULL,135,1,1),('D105FB86-E081-2BAC-69B35EB35F1F3C63','Model-Glue 2.0: \"Unity\"','Yes, Model-Glue is moving forward.  No, it\'s not the all-encomposing &lt;cf_writeMyApplicationForMe&gt; tag you\'ve been waiting for, but it\'s damn close.  \r\n\r\nYes, there is going to be Model-Glue life after 1.1.  \r\n\r\nYes, Unity will change how you do ColdFusion.  It will reach the unconverted, CF 5.0 massses.  And they will Grok it, because it will be easy.\r\n\r\nYes, Unity will show the JSP develope...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=D105FB86-E081-2BAC-69B35EB35F1F3C63\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-01-15 20:56:00',NULL,'ModelGlue-20-Unity','Joe','modelglue',1,NULL,0,NULL,125,1,1),('D87EDD28-E081-2BAC-69B923575744C5F4','A Shameful, Counterfeit \"BlogCFC\"','Last night, Sean posted an entry entitled \"<a href=\"http://www.corfield.org/blog/index.cfm?\" target=\"_blank\">How not to develop Open Source Software?</a>\" describing another blogger\'s rather odd view of Open Source development.\r\n\r\nHe didn\'t name the blogger, so I Google\'d a bit and found the blog in question - and found it offering \"BlogCFC 4.0.2\" for download.  \r\n\r\nI downloaded the .zip file, unz...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=D87EDD28-E081-2BAC-69B923575744C5F4\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-01-17 07:59:00',NULL,'A-Shameful-Counterfeit-BlogCFC','Joe','modelglue',1,NULL,0,NULL,130,1,1),('E2F5A956-E081-2BAC-6961CBAF89E80084','Mark Mazelin on Model-Glue Redirects','Mark Mazelin has posted a very real-world example showing why the Model-Glue &lt;result&gt; tag has \"redirect\" and \"append\" attributes, explaining the situation that called for them very nicely.  Check it out <a href=\"http://www.mkville.com/blog/index.cfm?mode=entry&entry=E084A08C-9125-F761-62E89B4DEF9F929C\" target=\"_blank\">over at his blog</a>.<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=E2F5A956-E081-2BAC-6961CBAF89E80084\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-01-19 08:57:00',NULL,'Mark-Mazelin-on-ModelGlue-Redirects','Joe','modelglue',1,NULL,0,NULL,121,1,1),('E3EADAAA-E081-2BAC-6970957D1D8EED90','CFDJ and Plagarism:  I am offended.','A few months ago, one of Raymond Camden\'s blog entries was reprinted under the Sys-Con/CFDJ banner, with Sys-Con\'s copyright appearing at the bottom.  He blogs about it with his entry \"<a href=\"http://ray.camdenfamily.com/index.cfm/2005/10/19/Should-I-Be-Honored-or-Offended\" target=\"_blank\">Should I Be Honored Or Offended?</a>.\"  I guess it\'s now my turn, as my October 31 entry \"Introducing Arf!\" ...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=E3EADAAA-E081-2BAC-6970957D1D8EED90\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-01-19 13:10:00',NULL,'CFDJ-and-Plagarism--I-am-offended','Joe','modelglue',1,NULL,0,NULL,125,1,1),('CF77083E-E081-2BAC-69CA121D41B63FFA','Sean Corfield on Model-Glue, Reactor, and ColdSpring','Sean\'s written up an entry talking about his experiences using Model-Glue with Reactor and ColdSpring.  I\'ve been using these same three recently, and it\'s been a good experience.\r\n\r\nEach framework is dedicated to its task and doesn\'t try to go outside of its domain - when combined, things seem to just work.\r\n\r\nRead more about Sean\'s experience <a href=\"http://corfield.org/blog/index.cfm/do/blog.e...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=CF77083E-E081-2BAC-69CA121D41B63FFA\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-03-06 07:05:00',NULL,'Sean-Corfield-on-ModelGlue-Reactor-and-ColdSpring','Joe','modelglue',1,NULL,0,NULL,136,1,1),('1CCBF09B-E081-2BAC-696368D717030E98','Rob Gonda\'s Ajax + Push in Model-Glue','Wow - this is pretty slick.  By using his AjaxCFC, an event gateway, and a tiny Flash movie as a conduit, Rob Gonda has come up with a way to do *push* in Model-Glue via Ajax.  That...is...pretty...slick!\r\n\r\nRead his full post at <a href=\"http://www.robgonda.com/blog/index.cfm/2006/3/20/Behold-ModelGlue-users-MGAJAX-Made-easy\">http://www.robgonda.com/blog/index.cfm/2006/3/20/Behold-ModelGlue-users...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=1CCBF09B-E081-2BAC-696368D717030E98\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-03-21 07:31:00',NULL,'Rob-Gondas-Ajax--Push-in-ModelGlue','Joe','modelglue',1,NULL,0,NULL,136,1,1),('410694A6-E081-2BAC-6905C454FAA2E9EE','Model-Glue.com:  Back after these messages','So much for automatic renewal - Model-Glue.com turned into a GoDaddy splash screen this AM.  Thanks to those who\'ve notified me -  the renewal is being processed right now.<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=410694A6-E081-2BAC-6905C454FAA2E9EE\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-03-28 08:23:00',NULL,'ModelGluecom--Back-after-these-messages','Joe','modelglue',1,NULL,0,NULL,132,1,1),('A834D0C7-E081-2BAC-6970E080DECA28ED','Model-Glue:  Not optimal under load','I\'m working with Mike Brunt over at Webapper to add Model-Glue to the list of CFPetmarket apps that have been tested.  When I got preliminary results back, I was a little suprised:  it was much slower than I thought it\'d be.\r\n\r\nI\'ve never had an opportunity to compare it side-by-side with a Mach-II (or Fusebox) application, and because my Petmarket implementation used the same model code as the Ma...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=A834D0C7-E081-2BAC-6970E080DECA28ED\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-04-17 10:08:00',NULL,'ModelGlue--Not-optimal-under-load','Joe','modelglue',1,NULL,0,NULL,191,1,1),('3DE80F19-E081-2BAC-69D0C4D91DB254DE','Ant and Subversion:  Building Model-Glue','A few people have asked how I create the Model-Glue .zip files.  I\'ll be covering this in increased detail in a talk at CFUnited, but what follows is a quick overview.<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=3DE80F19-E081-2BAC-69D0C4D91DB254DE\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-05-16 11:40:00','First, I install SVN onto my workstation.  You can get it at <a href=\"http://subversion.tigris.org/\">http://subversion.tigris.org/</a>.  Just having the TortoiseSVN client isn\'t enough - you need to be able to run command-line SVN commands.\r\n\r\nSecond, I install Apache Ant.  You can get it at <a href=\"http://ant.apache.org\">http://ant.apache.org</a>.  There\'s good docs there on how to set it up, but it\'s important to remember to add its \\bin dir to your path (I use c:\\ant\\bin).\r\n\r\nLast, I write an Ant script that does a checkout of a given revision to a temp directory, cleans up the files, and then zips up the whole thing.  The script for building a Model-Glue .zip follows, with comments:\r\n\r\n<div class=\"code\"><FONT COLOR=GRAY><I>&lt;!-- Note that the basedir is explicitly set! --&gt;</I></FONT><br>\r\n<FONT COLOR=NAVY>&lt;project name=<FONT COLOR=BLUE>\"MyProject\"</FONT> default=<FONT COLOR=BLUE>\"build\"</FONT> basedir=<FONT COLOR=BLUE>\"c:/inetpub/wwwroot/modelgluebuilds\"</FONT>&gt;</FONT><br>\r\n  <FONT COLOR=GRAY><I>&lt;!-- SVN settings --&gt;</I></FONT><br>\r\n  <FONT COLOR=NAVY>&lt;property name=<FONT COLOR=BLUE>\"svn.revision\"</FONT> value=<FONT COLOR=BLUE>\"68\"</FONT>/&gt;</FONT><br>\r\n  <FONT COLOR=NAVY>&lt;property name=<FONT COLOR=BLUE>\"svn.username\"</FONT> value=<FONT COLOR=BLUE>\"svnUsername\"</FONT>/&gt;</FONT><br>\r\n  <FONT COLOR=NAVY>&lt;property name=<FONT COLOR=BLUE>\"svn.password\"</FONT> value=<FONT COLOR=BLUE>\"svnPassword\"</FONT>/&gt;</FONT><br>\r\n  <FONT COLOR=NAVY>&lt;property name=<FONT COLOR=BLUE>\"svn.projecturl\"</FONT> value=<FONT COLOR=BLUE>\"<A TARGET=\"_blank\" HREF=\"svn://url/to/your/repo\">svn://url/to/your/repo</A>\"</FONT>/&gt;</FONT><br>\r\n<br>\r\n  <FONT COLOR=GRAY><I>&lt;!-- A dir for temp files --&gt;</I></FONT><br>\r\n  <FONT COLOR=NAVY>&lt;property name=<FONT COLOR=BLUE>\"build.temp\"</FONT> value=<FONT COLOR=BLUE>\"Temp\"</FONT> /&gt;</FONT><br>\r\n  <FONT COLOR=GRAY><I>&lt;!-- A dir for clean files --&gt;</I></FONT><br>\r\n  <FONT COLOR=NAVY>&lt;property name=<FONT COLOR=BLUE>\"build.clean\"</FONT> value=<FONT COLOR=BLUE>\"Clean\"</FONT> /&gt;</FONT><br>\r\n  <FONT COLOR=GRAY><I>&lt;!-- Filename of the .zip to create --&gt;</I></FONT><br>\r\n  <FONT COLOR=NAVY>&lt;property name=<FONT COLOR=BLUE>\"build.filename\"</FONT> value=<FONT COLOR=BLUE>\"myProject_{svn.revision}.zip\"</FONT> /&gt;</FONT><br>\r\n  &nbsp;&nbsp;&nbsp;<br>\r\n<br>\r\n  <FONT COLOR=GRAY><I>&lt;!-- Create the temp and clean dirs if necessary --&gt;</I></FONT><br>\r\n  <FONT COLOR=TEAL>&lt;target name=<FONT COLOR=BLUE>\"createArchiveDir\"</FONT>&gt;</FONT><br>\r\n    <FONT COLOR=NAVY>&lt;mkdir dir=<FONT COLOR=BLUE>\"${build.temp}\"</FONT>/&gt;</FONT><br>\r\n    <FONT COLOR=NAVY>&lt;mkdir dir=<FONT COLOR=BLUE>\"${build.clean}\"</FONT>/&gt;</FONT><br>\r\n  <FONT COLOR=TEAL>&lt;/target&gt;</FONT><br>\r\n<br>\r\n  <FONT COLOR=TEAL>&lt;target name=<FONT COLOR=BLUE>\"build\"</FONT> depends=<FONT COLOR=BLUE>\"createArchiveDir\"</FONT>&gt;</FONT><br>\r\n    <FONT COLOR=GRAY><I>&lt;!--- Check out the code into the temp dir --&gt;</I></FONT><br>\r\n    <FONT COLOR=NAVY>&lt;exec executable=<FONT COLOR=BLUE>\"svn\"</FONT>&gt;</FONT><br>\r\n      <FONT COLOR=GREEN>&lt;arg line=<FONT COLOR=BLUE>\"co ${svn.projecturl} ${build.temp} -r ${svn.revision} --username ${svn.username} --password ${svn.password}\"</FONT>/&gt;</FONT><br>\r\n    <FONT COLOR=NAVY>&lt;/exec&gt;</FONT><br>\r\n<br>\r\n    <FONT COLOR=GRAY><I>&lt;!-- Remove any Eclipse .project files that someone may have committed --&gt;</I></FONT><br>\r\n    <FONT COLOR=NAVY>&lt;delete file=<FONT COLOR=BLUE>\"${build.temp}/.project\"</FONT> /&gt;</FONT><br>\r\n<br>\r\n    <FONT COLOR=GRAY><I>&lt;!--- Do any changes to any files here --&gt;</I></FONT>    <br>\r\n<br>\r\n    <FONT COLOR=GRAY><I>&lt;!-- Move it all to the clean dir --&gt;</I></FONT>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>\r\n    &lt;copy todir=<FONT COLOR=BLUE>\"${build.clean}\"</FONT>&gt;<br>\r\n      <FONT COLOR=FF8000>&lt;fileset dir=<FONT COLOR=BLUE>\"${build.temp}\"</FONT>&gt;</FONT><br>\r\n        <FONT COLOR=NAVY>&lt;exclude name=<FONT COLOR=BLUE>\"**/*.svn\"</FONT>/&gt;</FONT><br>\r\n      <FONT COLOR=FF8000>&lt;/fileset&gt;</FONT><br>\r\n    &lt;/copy&gt;<br>\r\n<br>\r\n    <FONT COLOR=GRAY><I>&lt;!-- Zip up the clean dir and copy the zip to the basedir --&gt;</I></FONT><br>\r\n    &lt;zip destfile=<FONT COLOR=BLUE>\"${build.clean}/${build.filename}\"</FONT> basedir=<FONT COLOR=BLUE>\"${build.clean}\"</FONT> /&gt;<br>\r\n    &lt;copy todir=<FONT COLOR=BLUE>\"\"</FONT>&gt;<br>\r\n      <FONT COLOR=FF8000>&lt;fileset dir=<FONT COLOR=BLUE>\"${build.clean}\"</FONT> includes=<FONT COLOR=BLUE>\"${build.filename}\"</FONT> /&gt;</FONT><br>\r\n    &lt;/copy&gt;<br>\r\n<br>\r\n    <FONT COLOR=GRAY><I>&lt;!-- Remove temp and clean dirs --&gt;</I></FONT><br>\r\n    <FONT COLOR=NAVY>&lt;delete dir=<FONT COLOR=BLUE>\"${build.temp}\"</FONT> /&gt;</FONT><br>\r\n    <FONT COLOR=NAVY>&lt;delete dir=<FONT COLOR=BLUE>\"${build.clean}\"</FONT> /&gt;</FONT><br>\r\n  <FONT COLOR=TEAL>&lt;/target&gt;</FONT><br>\r\n<FONT COLOR=NAVY>&lt;/project&gt;</FONT></div>','Ant-and-Subversion--Building-ModelGlue','Joe','modelglue',1,NULL,0,NULL,226,1,1),('569BBE85-E081-2BAC-69472132A23FAF5D','Model-Glue @ Adobe Developer Week','I\'m happy to announce that I\'ll be presenting the Model-Glue framework, along with a look at Model-Glue:Unity, at Adobe Developer week.  ADW is a great opportunity to get up to speed on current Adobe products such as Flex, ColdFusion, LiveCycle, and the engagement platform - for free!  \r\n\r\nLearn more at <a href=\"http://www.adobe.com/cfusion/event/index.cfm?event=detail&id=452429&loc=en_us\">http://...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=569BBE85-E081-2BAC-69472132A23FAF5D\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-05-21 06:59:00',NULL,'ModelGlue--Adobe-Developer-Week','Joe','modelglue',1,NULL,0,NULL,224,1,1),('91161DF4-3048-55C9-434A9EEFD98EE813','Model-Glue.com is back online!','Hello, world!  Sorry for the outage.  The server that I share with Doug Hughes and Scott Stroz suffered a nasty hardware failure over the weekend, and it\'s led to us changing hosting providers entirely.\r\n\r\nWe\'re now up and running (at least my site is....don\'t really know about the others yet.  I moved their databases, and I know Doug set up their CF instances...) at HostMySite.com, and I have to ...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=91161DF4-3048-55C9-434A9EEFD98EE813\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-06-01 15:31:00',NULL,'ModelGluecom-is-back-online','Joe','modelglue',1,NULL,0,NULL,230,1,1),('A04826B0-E081-2BAC-695DDA41C15CE831','Two Job Postings: Work with the Model-Glue guy!','My team\'s expanding, and I\'d like to encourage any interested readers of my blog to apply!  We\'re looking for two ColdFusion developers, able to work onsite in the Washington, DC area, for one of the oldest management and IT consulting firms in the business: Booz | Allen | Hamilton.\r\n\r\nSpecifically, we\'re looking for one junior and one senior developer.  \r\n\r\nSenior Developer - <a href=\"http://bah....<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=A04826B0-E081-2BAC-695DDA41C15CE831\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-01-06 09:55:00',NULL,'Two-Job-Postings-Work-with-the-ModelGlue-guy','Joe','modelglue',1,NULL,0,NULL,113,1,1),('936180AD-E081-2BAC-69300E96DBA20A14','I\'m Older, Again!','Wow - it seems like this just happened.  Is it April 13th, already, again?  The first person (who doesn\'t know me personally) to guess how old I just turned gets a free Model-Glue prize at CFUnited.\r\n\r\nPS - Belated happy birthday to Ray Camden, another April birthday!<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=936180AD-E081-2BAC-69300E96DBA20A14\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-04-13 09:10:00',NULL,'Im-Older-Again','Joe','modelglue',1,NULL,0,NULL,191,1,1),('BD86A966-E081-2BAC-69D4B83103CB20C4','Model-Glue \"eXit Events\" (like XFA\'s)','One thing Sean Corfield clued me into a while back was emulating Fusebox eXit FuseActions (XFA\'s) in Model-Glue using the &lt;value&gt; tag under &lt;include&gt;.  I\'ve never really blogged about it, but it\'s become a standard way I do things.  He\'s explained it, quite nicely, on his site.  Read more at <a href=\"http://www.corfield.org/blog/index.cfm/do/blog.entry/entry/ModelGlue_and_URL_consisten...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=BD86A966-E081-2BAC-69D4B83103CB20C4\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-04-21 13:35:00',NULL,'ModelGlue-eXit-Events-like-XFAs','Joe','modelglue',1,NULL,0,NULL,191,1,1),('B9829385-3048-55C9-430D3F873479C35B','Model-Glue:Unity \"ActionPacks\"','One critique I\'ve heard about Model-Glue is that there\'s no easy way to create \"modules\" of functionality that can be \"dropped in\" to existing applications.\r\n\r\nI mean, wouldn\'t it be nice to write a forum app, and then just say \"add this to my Model-Glue application?\"<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=B9829385-3048-55C9-430D3F873479C35B\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-06-09 11:44:00','Well, there\'s a new tag in Model-Glue:Unity that allows just this:  &lt;include> as a child of &lt;modelglue>. I\'ve resisted it for a while, but I think that, when used properly, it could be a very nice addition to the framework.\r\n\r\nThis addition means that any ModelGlue.xml file can <include> other ModelGlue.xml-format files, and that the \"child\" files can declare their own &lt;controllers> and &lt;event-handlers>.\r\n\r\nAdditionally, the Model-Glue XML \"fragments\" can use the &lt;setting> tag to declare additional XML files to load into ColdSpring as well as additional directories to use as view mappings.\r\n\r\n<strong>Example</strong>\r\n\r\nThis means that I could have a Wiki.xml \"fragment\" file declaring everything needed for a wiki:\r\n\r\n<div class=\"code\"><FONT COLOR=NAVY>&lt;modelglue&gt;</FONT><br>\r\n  &lt;config&gt;<br>\r\n    <FONT COLOR=GRAY><I>&lt;!-- Add the wiki /views dir to the viewmappings --&gt;</I></FONT><br>\r\n    <FONT COLOR=NAVY><FONT COLOR=FF8000>&lt;setting name=<FONT COLOR=BLUE>\"viewMappings\"</FONT> setting=<FONT COLOR=BLUE>\"/mgwiki/views\"</FONT> /&gt;</FONT></FONT><br>\r\n  &lt;/config&gt;<br>\r\n<br>\r\n  &lt;controller name=<FONT COLOR=BLUE>\"wikiController\"</FONT> type=<FONT COLOR=BLUE>\"mgwiki.WikiController\"</FONT>&gt;<br>\r\n    <FONT COLOR=NAVY>&lt;message-listener message=<FONT COLOR=BLUE>\"wiki.page\"</FONT> function=<FONT COLOR=BLUE>\"getPage\"</FONT> /&gt;</FONT><br>\r\n    <FONT COLOR=GRAY><I>&lt;!--- other listeners... ---&gt;</I></FONT><br>\r\n  &lt;/controller&gt;<br>\r\n<br>\r\n  <FONT COLOR=NAVY>&lt;event-handlers&gt;</FONT><br>\r\n    <FONT COLOR=NAVY>&lt;event-handler name=<FONT COLOR=BLUE>\"wiki.displayPage\"</FONT>&gt;</FONT><br>\r\n      <FONT COLOR=NAVY>&lt;broadcasts&gt;</FONT><br>\r\n        <FONT COLOR=NAVY>&lt;message name=<FONT COLOR=BLUE>\"wiki.page\"</FONT> /&gt;</FONT><br>\r\n      <FONT COLOR=NAVY>&lt;/broadcasts&gt;</FONT><br>\r\n      <FONT COLOR=NAVY>&lt;views&gt;</FONT><br>\r\n        <FONT COLOR=NAVY><FONT COLOR=FF8000>&lt;include name=<FONT COLOR=BLUE>\"body\"</FONT> template=<FONT COLOR=BLUE>\"dspWikiPage.cfm\"</FONT> /&gt;</FONT></FONT><br>\r\n      <FONT COLOR=NAVY>&lt;/views&gt;</FONT><br>\r\n      <FONT COLOR=NAVY>&lt;results&gt;</FONT><br>\r\n        <FONT COLOR=NAVY>&lt;result do=<FONT COLOR=BLUE>\"view.template\"</FONT> /&gt;</FONT><br>\r\n      <FONT COLOR=NAVY>&lt;/results&gt;</FONT><br>\r\n    <FONT COLOR=NAVY>&lt;/event-handler&gt;</FONT><br>\r\n<br>\r\n    <FONT COLOR=GRAY><I>&lt;!--- More event handlers... ---&gt;</I></FONT><br>\r\n  <FONT COLOR=NAVY>&lt;/event-handlers&gt;</FONT><br>\r\n<FONT COLOR=NAVY>&lt;/modelglue&gt;</FONT></div>\r\n\r\nThen, if I wanted to add Wiki functionality to any other Model-Glue application, I could change its ModelGlue.xml file to include the Wiki fragment:\r\n\r\n<div class=\"code\"><FONT COLOR=NAVY>&lt;modelglue&gt;</FONT><br>\r\n  <FONT COLOR=NAVY><FONT COLOR=FF8000>&lt;include template=<FONT COLOR=BLUE>\"/mgwiki/config/Wiki.xml\"</FONT> /&gt;</FONT></FONT>  <br>\r\n<br>\r\n  <FONT COLOR=GRAY><I>&lt;!--- Application stuff...---&gt;</I></FONT><br>\r\n<FONT COLOR=NAVY>&lt;/modelglue&gt;</FONT></div>\r\n\r\n<strong>Dangers of Includes</strong>\r\n\r\nDoing this isn\'t without a danger:  it\'s quite possible that an include would overwrite an existing event handler or controller.   That\'s the reason I prefixed everything with \"wiki\" :).\r\n\r\n<strong>\"ActionPacks?\"</strong>\r\n\r\nI\'m planning on releasing a few fragments in the publuc \"2.0\" Unity release that I\'ll be calling \"ActionPacks.\"  One will provide an easy to use, configurable e-mail service.  Another will provide role-based and row-level security, user profile management, and user administration interfaces.\r\n\r\nBecause these \"ActionPacks\" don\'t require any change to the framework, and are really just Model-Glue XML fragments, anyone is free to contribute their own to the Model-Glue community.  If anyone\'s interested in developing them, I\'d be happy to help out where I can, and for select Action Packs (like maybe a forums app!), adding them to the Model-Glue distro itself.','ModelGlueUnity-ActionPacks','Joe','modelglue',1,NULL,0,NULL,273,1,1),('BA6B158E-3048-55C9-437C2E41D40C095F','MG:Unity Video - Blog in 9 Minutes','I\'ve put a quick video onto YouTube that previews a bit of what I\'ll be showing of Model-Glue:Unity next week at Adobe Developer Week (which means a public beta should be very, very close).  The plot is an oldie, but it gives a nice baseline for comparison to other similar videos.\r\n\r\nYou can watch directly below, but might need to go to a larger size .  If so, just click the video to get the full ...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=BA6B158E-3048-55C9-437C2E41D40C095F\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-06-09 16:07:00',NULL,'MGUnity-Video--Blog-in-15-Minutes','Joe','modelglue',1,NULL,0,NULL,245,1,1),('D5815F2A-3048-55C9-432B8F55F7D81A87','Model-Glue:Unity Public Beta 1 is Available','I\'m proud to announce that I\'ve applied the \"Public Beta 1\" label to revision 161 of Model-Glue:Unity.  It is available for download at <a href=\"http://www.model-glue.com/downloads.cfm\">http://www.model-glue.com/downloads.cfm</a>.  This version introduces automatically generated Models, codeless data access, and scaffolding.  It is still very easy to learn and use.<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=D5815F2A-3048-55C9-432B8F55F7D81A87\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-06-14 22:13:00','<strong>Documentation</strong>\r\n\r\nThe longest delay in releasing the framework publicly has been documentation.  The XML and CFC APIs of the framework are now fully documented, the Quickstart has been rewritten, and a series of friendly \"How-To\" guides for common tasks are underway.  The new, souped-up documentation is available at <a href=\"http://docs.model-glue.com/\">http://docs.model-glue.com/</a>.\r\n\r\nKeeping with tradition, they still start with \"Don\'t Panic!\"  Seriously, don\'t.  The new stuff is super easy to learn.  \r\n\r\n<strong>Bug Reporting</strong>\r\n\r\nThere is now an official site at which to report framework issues.  Please report any and all problems to <a href=\"http://trac.model-glue.com\">http://trac.model-glue.com</a> - even installation issues.  If something is hard, I want to hear about it.  Model-Glue is the ColdFusion framework for everyday ColdFusion programmers, and it should be easy to use.\r\n\r\n<strong>Upgrading</strong>\r\n\r\nOne goal of the beta is to insure that upgrades are seamless.  You should be able to run an existing 1.x application without modification, simply by changing your Model-Glue mapping to the new version (or overwriting your old copy of Model-Glue).  \r\n\r\nHowever, I\'m sure something is broken, somewhere - it\'s just that none of the alpha testers or myself are able to find it.  \r\n\r\n<strong>Naming</strong>\r\n\r\nUp to this point, \"Unity\" has been the code name for \"2.0,\" but the term has stuck.  The term \"Model-Glue:Unity\" will refer to the 2.0 core that incorporates ColdSpring and native object-relational mapping capabilities.  \r\n\r\n<strong>Reactor</strong>\r\n\r\nAs is, Reactor is bundled with the download, and is the default Object Relational Mapping framework for Model-Glue:Unity.  It is possible to support others, but would require creating a custom adapter, DataController, and scaffold .XSL files.\r\n\r\n<strong>Next Steps</strong>\r\n\r\nIn between presenting (I have seven presentations in the next two weeks, four of them on Model-Glue:Unity), I\'ll be working on a new Model-Glue.com, finding bugs, and fixing them as soon as they pop up.','ModelGlueUnity-Public-Beta-1-is-Available','Joe','modelglue',1,NULL,0,NULL,231,1,1),('124D12F7-3048-55C9-43D3EC6C3F278706','Model-Glue:  New YouTube Video!','I\'ve posted another talking-to-fast-this-is-a-demonstration-not-a-tutorial video to YouTube.  This time, it shows definition of one-to-many and many-to-many relationships, how they\'re handled intelligently by scaffolds, and a bit about dictionary files.\r\n\r\nSorry for the audio, I used my laptop for this, and it seems to skip a lot and eventually get out of sync.  It\'s about all I can do while on th...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=124D12F7-3048-55C9-43D3EC6C3F278706\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-06-26 20:00:00',NULL,'ModelGlue--New-YouTube-Video','Joe','modelglue',1,NULL,0,NULL,447,1,1),('54C48E68-3048-55C9-432EB036E5A6EF6C','Thanks, Jeff Anderson!','Jeff Anderson won a copy of Captivate at a CFUG meeting, and has been kind enough to donate the license to the Model-Glue project.  Expect some better screencasts soon, and thanks again Jeff!<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=54C48E68-3048-55C9-432EB036E5A6EF6C\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-07-09 15:29:00',NULL,'Thanks-Jeff-Anderson','Joe','modelglue',1,NULL,0,NULL,427,1,1),('5EAEAC09-3048-55C9-43F13840D9F8CA2D','Model-Glue.com\'s new look','During my lunch break, I flipped a few bits to make the new <a href=\"http://www.model-glue.com\">Model-Glue site</a> live.  It\'s a bit experimental - it\'s running on a bleeding edge of the Unity release and prototypes of a few Actionpacks like \"Headstart\" (for security) and \"Messageboard\" for, well, simple message boards.<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=5EAEAC09-3048-55C9-43F13840D9F8CA2D\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-07-11 13:39:00',NULL,'ModelGluecoms-new-look','Joe','modelglue',1,NULL,0,NULL,437,1,1),('311324AD-3048-55C9-4377B3138D4DEC2D','No SES URLs in Model-Glue:Unity?','A few people have asked if there will be increased support for search-engine safe (SES) URLs in Model-Glue:Unity.  In short, the answer is:  no.  There\'s just no need.\r\n\r\nThere are established and well-tested ways of creating SES URLs via Apache\'s mod_rewrite and rewrite plug-ins for IIS.  There\'s no need to add the additional complexity of something like Rails\' \"routes\" functionality.  \r\n\r\nSorry ...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=311324AD-3048-55C9-4377B3138D4DEC2D\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-08-21 10:09:00',NULL,'No-SES-URLs-in-ModelGlueUnity','Joe','modelglue',1,NULL,0,NULL,508,1,1),('8D531C0E-3048-55C9-431EB0D750B46537','Dynamic sorting with modelglue.GenericList','Yesterday on the Model-Glue list, someone asked if it\'s possible to dynamically sort the resultset returned by the GenericList functionality in the Model-Glue:Unity beta.  Yes, it is, but you have to write a wee bit of code to do it.\r\n\r\nA bit of background:\r\n\r\nThe \"GenericList\" is what\'s known as a Generic Database Message.  These are pre-defined messages within Unity that allow you to List, Edit,...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=8D531C0E-3048-55C9-431EB0D750B46537\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-09-08 08:07:00',NULL,'Dynamic-sorting-with-modelglueGenericList','Joe','modelglue',1,NULL,0,NULL,499,1,1),('CCF01CAF-3048-55C9-4387B311F1C6341C','Video: Ajax Scaffolds in Model-Glue','As development on Model-Glue:Unity calms down and I enter testing/documentation, I\'m spending less time working on the framework and more time testing the \"extension\" features the new architecture provides.\r\n\r\nAs I travelled over the past week, I thought it\'d be fun to write my own custom set of scaffolds that used simple \"div replacement\" Ajax to avoid unnecessary page reloads.  The bits behind i...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=CCF01CAF-3048-55C9-4387B311F1C6341C\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-09-20 16:30:00',NULL,'Video-Ajax-Scaffolds-in-ModelGlue','Joe','modelglue',1,NULL,0,NULL,467,1,1),('BAF3BA76-3048-55C9-43041C8DC7686B09','New Model-Glue:Unity Configuration File','I\'ve spent this afternoon working on Model-Glue:Unity, fixing some tickets, changing a few things internally, and writing documentation.  \r\n\r\nOne of the results is that I\'ve heavily commented the ColdSpring.xml file in the application template.  This is both good and bad:  it\'s a lot easier to read through, but it looks a lot longer / more complex than it used to.  \r\n\r\nIt\'d be a great help it if p...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=BAF3BA76-3048-55C9-43041C8DC7686B09\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-11-05 20:39:00',NULL,'New-ModelGlueUnity-Configuration-File','Joe','modelglue',1,'C:\\Inetpub\\JoeRinehart\\firemoss.com\\blog\\enclosures/ColdSpring.xml',0,'text/xml',614,1,1),('C40EF7D4-3048-55C9-43B89F99A0DACE98','Model-Glue 2.0 (\"Unity\") Beta 2 Update','I\'m making progress towards a second beta of Model-Glue 2.0.  Most of the tickets are closed, and I\'m working on documentation.\r\n\r\nCurrently, I hope to release the second Beta in the first week of the new year.\r\n\r\n<strong><font color=\"red\">This next bit is important.</font></strong>\r\n\r\nIf you\'ve developed applications using Beta 1 that use ORM services, and you get the latest code from SVN, your a...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=C40EF7D4-3048-55C9-43B89F99A0DACE98\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-12-27 08:12:00',NULL,'ModelGlue-20-Unity-Beta-2-Update','Joe','modelglue',1,NULL,0,NULL,857,1,1),('F2BFB7B2-3048-55C9-4329FCB6EE13BAB3','Model-Glue Unity:  News, changes, and help needed!','Last night, I wrapped up the new build file for creating distributions of Unity, and it\'s moving closer and closer to getting a label of \"Model-Glue 2.0.\"  \r\n\r\nAs soon as my new CPU gets here (I sort of fried my desktop PC), I\'ve got about a day\'s worth of work updating documentation, and then Beta 2 should be ready to go out the door.\r\n\r\n<strong>What\'s Coming in Beta 2:</strong>\r\n\r\n<ul>\r\n<li>A ch...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=F2BFB7B2-3048-55C9-4329FCB6EE13BAB3\">Read more on Joe Rinehart\'s blog</a>]</p>','2007-01-05 09:43:00',NULL,'ModelGlue-Unity--News-changes-and-help-needed','Joe','modelglue',1,NULL,0,NULL,1103,1,1),('02673E26-3048-55C9-431F13FA5D86AD7C','Mark Drew knows Model-Glue!','Earlier today (by his time zone), Mark Drew posted two great entries on best practices in Model-Glue.  He outlines techniques that I use in almost all Model-Glue applications and that I encourage other MG developers to use.\r\n\r\nThe <a href=\"http://www.markdrew.co.uk/blog/index.cfm/2007/1/8/Adding-event-variables-to-ModelGluexml\">first</a> describes using the \"eXit Fuse Action\" (XFA) technique in yo...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=02673E26-3048-55C9-431F13FA5D86AD7C\">Read more on Joe Rinehart\'s blog</a>]</p>','2007-01-08 10:45:00',NULL,'Mark-Drew-knows-ModelGlue','Joe','modelglue',1,NULL,0,NULL,860,1,1),('DC113DB1-3048-55C9-434D825B0D4926F0','Model-Glue is hiring!  Seriously!','I\'m proud of Model-Glue.  Two years ago, it was a learning project for implementing MVC and II in ColdFusion.  Now, it\'s both enabling ColdFusion developers and gaining in popularity on both Fusebox and Mach-II.  After some serious thought on my bike today, I\'ve decided it\'s time to open up the Model-Glue project and invite others to help out even take part ownership of the project.<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=DC113DB1-3048-55C9-434D825B0D4926F0\">Read more on Joe Rinehart\'s blog</a>]</p>','2007-02-19 17:13:00','<strong>Why am I doing this?</strong>\r\n\r\nModel-Glue\'s matured enough where its direction is set, and its API is fairly well-baked.  I don\'t think bringing in other people is going to have any bad effects on the framework:  in fact, I think it\'s going to improve both its code and its support.\r\n\r\n<strong>Where you come in.</strong>\r\n\r\nI\'ll be looking for a set of people to help with a set of roles in the Model-Glue project.  They\'re listed in the <a href=\"#peopleINeed\">People Model-Glue Needs</a> section.\r\n\r\n<strong>What\'s in it for you?</strong>\r\n\r\nI don\'t think I\'d be where I am today if it weren\'t for Model-Glue.  To be blunt:  personal gain.  Helping with Model-Glue could be a good thing to have on your resume.  That aside, you\'ll also be able to shape the future of a tool you use, contribute to the ColdFusion community, and enjoy all the warm fuzziness of being an open-source contributor.\r\n\r\nAlso, my outline for the new Model-Glue site includes a dedicated Model-Glue blog, to which all team members may contribute content.\r\n\r\n<strong>How to \"apply\"</strong>\r\n\r\nLeave a comment stating what you\'d like to do.  On the comment form, put the e-mail address where I should contact you in the Email Address form.  \r\n\r\n<strong>What would the responsibilities be?</strong>\r\n\r\nNot too much.  I run Model-Glue in my spare time, of which there\'s increasingly little.  I don\'t expect anything more from anyone who helps.  No official meeting schedule of the team or anything like that.  If something breaks and it\'s under your umbrella, I\'d just expect you to handle it when you can.  If you can\'t, say so, and someone else can take care of it when they can.\r\n\r\n<a name=\"peopleINeed\"></a>\r\n<strong>People Model-Glue Needs</strong>\r\n\r\nThis would be my \"dream team\" for helping out with Model-Glue.  If two people can cover all of it, that\'d be fine with me.  \r\n\r\nAlso, if your company uses Model-Glue and would like to donate any of your time/their resources (such as hosting model-glue.com), I\'d be happy to add some \"corporate sponsors,\" displaying logos, etc., as appropriate.\r\n\r\n<ol>\r\n<li>Model-Glue Core Developer\r\n\r\nI\'d like to have someone besides myself able to work inside the Model-Glue core.  This is the part dealing with loading the framework, reading ModelGlue.xml, and executing the request flow.  There\'s usually not much activity here - I don\'t think I\'ve committed any changes in a few months.\r\n\r\nRequirements:  Good with CFCs.\r\n\r\nCool things:  You\'ll be added to the list of copyright owners for Model-Glue upon your first commit.\r\n</li>\r\n\r\n<li>Model-Glue \"Webmaster\"\r\n\r\nSorry, I couldn\'t think of a better term.  This person would be responsible for running the Model-Glue web site, which is something I\'ve done a shamefully poor job with.  My goal here would be a site that has an \"about\" page and a BlogCFC implementation for news, etc.  The listserv is being offloaded to Google Groups, and Trac will provide trouble tickets / wiki.\r\n\r\nRequirements:  OK with design (Dale, my wife, can help there).  Willing to update site content.\r\n\r\nCool things:  You might design the new (first?  1.5ish?) Model-Glue logo.\r\n</li>\r\n\r\n<li>Model-Glue ORM Developer(s)\r\n\r\nThe ReactorAdapter and TransferAdapter classes have kept me up many nights.  Folks who know the frameworks and are willing to donate some time maintaining the adapters and the GDM/scaffolding bits will receive free beer from yours truly at the next convenient date.\r\n\r\nRequirements:  Using the ORM you\'re helping out with, experience with Model-Glue:Unity alpha/beta code.\r\n\r\nCool things:  You\'ll be added to the list of copyright owners for Model-Glue upon your first commit, <strong>and</strong> you work on the sexy new stuff.\r\n\r\n</li>\r\n\r\n<li>Model-Glue SVN/Trac admin\r\n\r\nThis one\'s already a lock.  You know who you are, and thanks!\r\n</li>\r\n\r\n<li>Model-Glue Google Groups Manager\r\n\r\nAgain, this one\'s already a lock.  You know who you are.  I haven\'t forgotten.\r\n</li>\r\n\r\n<li>Model-Glue Documentation Manager\r\n\r\nI said this was a \"dream team,\" didn\'t I?  I need someone willing to monitor changes to the framework and keep the documentation up to date.  If you\'re willing to to additional sample applications and/or tutorials, fantastic!\r\n\r\nRequirements:  Literate.  There, you qualify, see!\r\n\r\nCool things:  If you\'re really serious, I\'ll give you my RoboHelp license ;)\r\n</li>\r\n\r\n<li><em>Your idea here</em>\r\n\r\nHave another way you could help?  Let me know in the comments!\r\n</li>','ModelGlue-is-hiring--Seriously','Joe','modelglue',1,NULL,0,NULL,1310,1,1),('8418221B-E081-2BAC-6993D521C32F4D19','Model-Glue 1.1 Released','Model-Glue 1.1 is officially released.  The distro is available via .zip file at <a href=\"http://www.model-glue.com/downloadmg.cfm\">http://www.model-glue.com/downloadmg.cfm</a>.\r\n\r\nI\'d like to give a big thanks to everyone in the Model-Glue community for using the Bleeding Edge Release from Subversion for so long - having you all test the new stuff made this release very easy to move from \"bleedin...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=8418221B-E081-2BAC-6993D521C32F4D19\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-04-10 09:53:00',NULL,'ModelGlue-11-Released','Joe','modelglue',1,NULL,0,NULL,190,1,1),('8426DAE8-E081-2BAC-69D4727AC6BA1D24','Model-Glue:  End of Life for 1.x','I released Model-Glue 1.1 this morning (should have just been announced, had the post set up to publish at 10a).  This release is the end-of-life for the 1.x code base:  all new releases are running on an 85% rewritten set of CFCs under the modelglue.unity.* package.  \r\n\r\nI took a break to get a snack and I wanted to write another, less official post on the subject as well. (Official release annou...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=8426DAE8-E081-2BAC-69D4727AC6BA1D24\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-04-10 09:58:00',NULL,'ModelGlue--End-of-Life-for-1x','Joe','modelglue',1,NULL,0,NULL,191,1,1),('FB980E37-3048-55C9-43319854C6D8073D','Model-Glue:Unity gets faster!','After Sean Corfield clued me in to the performance impact of things like DuckTyping instead of strict typing in low-level code (like frameworks), I made some large changes to the Model-Glue:Unity core in terms of arguments and returntypes.  \r\n\r\nThe result:  whoa, that\'s fast.\r\n\r\nHere\'s a few benchmarks from a 100-concurrent-user load test:\r\n\r\n<strong>Application Template</strong>\r\n\r\nModel-Glue 1.1...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=FB980E37-3048-55C9-43319854C6D8073D\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-06-22 07:49:00',NULL,'ModelGlueUnity-gets-faster','Joe','modelglue',1,NULL,0,NULL,233,1,1),('F7ED5FFA-3048-55C9-43D6BC0605171052','Model-Glue Bloating, Mach-II Dying, Frameworks Stinking...','Ah, geez.  It\'s been a few months since CFUnited, and everyone seems to be forgetting that us ColdFusion folks are people who get along really well when we\'re in person (and the bar hasn\'t run dry).  Suddenly, frameworks suck, Model-Glue:Unity is a bloated kitchen-sink framework, and Mach-II is obtuse and maybe it \"should be allowed to die a dignified death.\"  \r\n\r\nI guess that one of the responsib...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=F7ED5FFA-3048-55C9-43D6BC0605171052\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-09-29 00:54:00',NULL,'ModelGlue-Bloating-MachII-Dying-Frameworks-Sucking','Joe','modelglue',1,NULL,0,NULL,363,1,1),('13E2A054-3048-55C9-43FB4BA880BC4897','Model-Glue License Change','I\'m happy to announce that as of this day forward, all further releases of Model-Glue will be under the less restrictive Apache Software License 2.0 (ASL2.0).  In the past, all releases have been under the Lesser GPL (LGPL), but due \"grey areas\" concerning licensure of generated code, I needed to make the switch.\r\n\r\nSo, same old framework, gentler license terms.<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=13E2A054-3048-55C9-43FB4BA880BC4897\">Read more on Joe Rinehart\'s blog</a>]</p>','2007-01-11 20:16:00',NULL,'ModelGlue-License-Change','Joe','modelglue',1,NULL,0,NULL,956,1,1),('FAF5054B-3048-55C9-43FFF2112D63ADAE','Release a framework?  Are you sure you *want* to?','There\'s a new twist on the eternal frameworks debate going on:  now we\'re not just talking about whether or not frameworks are good, but <a href=\"http://corfield.org/blog/index.cfm/do/blog.entry/entry/Why_NIH_and_RTW_are_bad\">if you should release one that you\'ve written</a>.  In this post, I\'m not going to state my opinion (Sean\'s said it better than I can, in just the title alone).  Instead, I\'m...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=FAF5054B-3048-55C9-43FFF2112D63ADAE\">Read more on Joe Rinehart\'s blog</a>]</p>','2007-02-25 17:10:00',NULL,'Release-a-framework--Are-you-sure-you-want-to','Joe','modelglue',1,NULL,0,NULL,1369,1,1),('B7D4972F-3048-55C9-43EBC879822F7947','Model-Glue:  Rendering Excel, E-mail, and alternate formats','<a href=\"http://ray.camdenfamily.com\">Ray Camden</a> posted a question to the Model-Glue list earlier today that was related to how he could use Model-Glue to render an Excel spreadsheet (via the HTML table -&gt; &lt;cfcontent&gt; method) <em>and access the rendered HTML from within a controller</em>.\r\n\r\nIt\'s pretty straightforward to do the rendering with a simple view that contains a &lt;cfconte...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=B7D4972F-3048-55C9-43EBC879822F7947\">Read more on Joe Rinehart\'s blog</a>]</p>','2007-04-03 00:00:00',NULL,'ModelGlue--Rendering-Excel-Email-and-alternate-formats','Joe','modelglue',1,NULL,0,NULL,1933,1,1),('58BE8EE3-3048-55C9-43CB3D1B7A3EF0A8','Model-Glue:Flex?','I figured I\'d better blog this while I had some downtime at the cf.objective conference.  In my Model-Glue session today, I previewed an experimental AS3 Model-Glue implementation of Model-Glue, providing a lighter weight / looser / more implicit architectural framework in comparison to something like Cairngorm.\r\n\r\nThere\'s no docs, I\'ve written one sample app, and I\'m not sure this\'ll ever be an \'...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=58BE8EE3-3048-55C9-43CB3D1B7A3EF0A8\">Read more on Joe Rinehart\'s blog</a>]</p>','2007-05-04 16:13:00',NULL,'ModelGlueFlex','Joe','modelglue',1,NULL,0,NULL,2016,1,1),('58C1CC0C-3048-55C9-4310C06A39AA2293','Raymond Camden joins Model-Glue','I\'m proud of the Model-Glue project and its code. Its community support, however, is somewhat of a sore spot with me.  \r\n\r\nIt\'s hard to know what you\'re good at until you try something.  I\'ve tried being a community leader for an OSS project, and I\'ve found out I\'m not very good.\r\n\r\nWithout any more fluffiness:  today at cf.objective, <a href=\"http://ray.camdenfamily.com\">Raymond Camden</a> agreed...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=58C1CC0C-3048-55C9-4310C06A39AA2293\">Read more on Joe Rinehart\'s blog</a>]</p>','2007-05-04 16:19:00',NULL,'Raymond-Camden-joins-ModelGlue','Joe','modelglue',1,NULL,0,NULL,1688,1,1),('676DF08F-3048-55C9-430761946EED371A','Model-Glue.com Outage','Not that it\'s a giant loss, but Model-Glue.com/net/org will be on and off today as DNS changes take place.  Sorry for any inconvenience.\r\n\r\nThis will not effect the Trac or Subversion sites.<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=676DF08F-3048-55C9-430761946EED371A\">Read more on Joe Rinehart\'s blog</a>]</p>','2007-05-07 12:44:00',NULL,'ModelGluecom-Outage','Joe','modelglue',1,NULL,0,NULL,2023,1,1),('8C2A77A4-3048-55C9-438E4AA45A86BD76','Model-Glue List: No more Topica!','The Model-Glue e-mail list is finally off of the dreaded Topica engine.  Thanks to Ray, it\'s been moved over to Google Groups a <a href=\"http://groups.google.com/group/model-glue\">http://groups.google.com/group/model-glue</a>, and the <a href=\"http://www.model-glue.com\">Model-Glue homepage</a> now links to it.\r\n\r\nI guess our next task is a real Model-Glue.com!<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=8C2A77A4-3048-55C9-438E4AA45A86BD76\">Read more on Joe Rinehart\'s blog</a>]</p>','2007-05-14 15:54:00',NULL,'ModelGlue-List-No-more-Topica','Joe','modelglue',1,NULL,0,NULL,1905,1,1),('E3D2EDA3-3048-55C9-4320201175E27201','Model-Glue 2.0 (Unity):  Release at CFUnited!','Well, I guess this sort of binds me to finishing it.  As part of his new role as Community Manager for Model-Glue, Ray\'s asked me to commit to a release date for Model-Glue 2.0, a.k.a., \"Unity\".\r\n\r\nSo, here goes:  the .zip of Model-Glue 2.0 will be available when CFUnited starts.\r\n\r\nI can\'t guarantee all the open tickets will be closed, or that the documentation will be 100%, but I\'ve set aside a ...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=E3D2EDA3-3048-55C9-4320201175E27201\">Read more on Joe Rinehart\'s blog</a>]</p>','2007-05-31 16:26:00',NULL,'ModelGlue-20-Unity--Release-at-CFUnited','Joe','modelglue',1,NULL,0,NULL,1824,1,1),('5063FCD8-E081-2BAC-69F650B9115CAFB8','Ray Camden releases MGDoc','Ray Camden has released a piece of code called \"MGDoc,\" a cool tool that\'ll take your ModelGlue.xml file and produce a PDF showing you its settings, controller configuration, and event-handler data.  Very nice, and it\'ll definitely come in handy where I work!\r\n\r\nDownload / see example at <a href=\"http://ray.camdenfamily.com/index.cfm/2006/3/30/MGDoc-a-ModelGlue-documentor\">http://ray.camdenfamily....<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=5063FCD8-E081-2BAC-69F650B9115CAFB8\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-03-31 07:58:00',NULL,'Ray-Camden-releases-MGDoc','Joe','modelglue',1,NULL,0,NULL,135,1,1),('6016CAA4-E081-2BAC-692090F7DD555441','Model-Glue 1.1 Release and 2.0 Alpha','I\'ve been a little quiet on the Model-Glue front recently (life\'s been a bit busy!).  1.1 and 2.0 are both coming down the pipe, and I thought I should blog a bit about timing while a server reboots.\r\n\r\n1.1 is code-complete, and has been scaled back (no \"Headstart\" template) to be primarily a maintenance release, with the only new features being the inclusion of ColdSpring support.  For those usin...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=6016CAA4-E081-2BAC-692090F7DD555441\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-04-03 10:09:00',NULL,'ModelGlue-11-Release-and-20-Alpha','Joe','modelglue',1,NULL,0,NULL,136,1,1),('8F179144-E081-2BAC-699C02422C813CE7','Taskblaster! - Model-Glue:Unity Preview','I\'ve roughed out the first database-driven example application for the Model-Glue:Unity release.  It\'s a simple to-do list app where you can create an account, log in/out, create new lists, add tasks to lists, and complete tasks.\r\n\r\nOther than editing the config files, I wrote 124 lines of code, and zero SQL.  I figured it could be fun to show what developing in Unity is like by posting the code f...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=8F179144-E081-2BAC-699C02422C813CE7\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-04-12 13:07:00',NULL,'Taskblaster--ModelGlueUnity-Preview','Joe','modelglue',1,'C:\\Inetpub\\JoeRinehart\\clearsoftware.net\\enclosures/taskblaster.zip',0,'application/zip',195,1,1),('AB49D4A4-3048-55C9-43DFA73D326B1014','Model-Glue:Unity Updates','I\'ve had a few people ask me a few questions about when Model-Glue:Unity will be released, what enhancements are coming, etc.  So, here\'s an update.<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=AB49D4A4-3048-55C9-43DFA73D326B1014\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-07-26 10:24:00','<strong>Timeline</strong>\r\n\r\nBeta 2 should be out within a month or so.  It took about seven months to go from the first public release of Model-Glue to Model-Glue 1.0.  I\'d rather get it right than do it fast.\r\n\r\n<strong>GenericList Enhancements</strong>\r\n\r\nThe GenericList message is getting more powerful, without (much) additional complication.  \r\n\r\nAs it shipped in Beta 1, you were able to use the \"criteria\" argument to send a list of viewstate values to the underlying GetByFields() function in Reactor.\r\n\r\nFor example, if you had a list of content items, and you wanted to show only content records where Published=1, you\'d make sure a viewstate value (like URL.Published) was equal to 1, and do this:\r\n\r\n<div class=\"code\"><FONT COLOR=NAVY>&lt;message name=<FONT COLOR=BLUE>\"modelglue.genericList\"</FONT>&gt;</FONT><br>\n  <FONT COLOR=GREEN>&lt;argument name=<FONT COLOR=BLUE>\"object\"</FONT> value=<FONT COLOR=BLUE>\"content\"</FONT> /&gt;</FONT><br>\n  <FONT COLOR=GREEN>&lt;argument name=<FONT COLOR=BLUE>\"criteria\"</FONT> value=<FONT COLOR=BLUE>\"published\"</FONT> /&gt;</FONT><br>\n<FONT COLOR=NAVY>&lt;/message&gt;</FONT></div>\r\n\r\nThen, by using url.published (or, better, a controller to force this), you\'d only retrieved records from the content table where published = 1.\r\n\r\nThat\'s kind of gnarly, so now you can force values into criteria:\r\n\r\n<div class=\"code\"><FONT COLOR=NAVY>&lt;message name=<FONT COLOR=BLUE>\"modelglue.genericList\"</FONT>&gt;</FONT><br>\n  <FONT COLOR=GREEN>&lt;argument name=<FONT COLOR=BLUE>\"object\"</FONT> value=<FONT COLOR=BLUE>\"content\"</FONT> /&gt;</FONT><br>\n  <FONT COLOR=GREEN>&lt;argument name=<FONT COLOR=BLUE>\"criteria\"</FONT> value=<FONT COLOR=BLUE>\"published=1\"</FONT> /&gt;</FONT><br>\n<FONT COLOR=NAVY>&lt;/message&gt;</FONT></div>\r\n\r\nAdditionally, you can specify a method on your gateway other than getByFields().  You could write a method called something like \"getPublished\" on ContentGateway.cfc that performed the retrieval, along with necessary joins, etc., and then instruct the generic list to use this method instead of getByFields():\r\n\r\n<div class=\"code\"><FONT COLOR=NAVY>&lt;message name=<FONT COLOR=BLUE>\"modelglue.genericList\"</FONT>&gt;</FONT><br>\n  <FONT COLOR=GREEN>&lt;argument name=<FONT COLOR=BLUE>\"object\"</FONT> value=<FONT COLOR=BLUE>\"content\"</FONT> /&gt;</FONT><br>\n  <FONT COLOR=GREEN>&lt;argument name=<FONT COLOR=BLUE>\"gatewayMethod\"</FONT> value=<FONT COLOR=BLUE>\"getPublished\"</FONT> /&gt;</FONT><br>\n<FONT COLOR=NAVY>&lt;/message&gt;</FONT></div>\r\n\r\nLastly, the struct created through the Criteria argument will still be passed to your gateway method as its argument collection.  If you wanted to get only content written by URL.authorId, and you created an authorId argument on getPublished(), you could do this:\r\n\r\n<div class=\"code\"><FONT COLOR=NAVY>&lt;message name=<FONT COLOR=BLUE>\"modelglue.genericList\"</FONT>&gt;</FONT><br>\n  <FONT COLOR=GREEN>&lt;argument name=<FONT COLOR=BLUE>\"object\"</FONT> value=<FONT COLOR=BLUE>\"content\"</FONT> /&gt;</FONT><br>\n  <FONT COLOR=GREEN>&lt;argument name=<FONT COLOR=BLUE>\"gatewayMethod\"</FONT> value=<FONT COLOR=BLUE>\"getPublished\"</FONT> /&gt;</FONT><br>\n  <FONT COLOR=GREEN>&lt;argument name=<FONT COLOR=BLUE>\"criteria\"</FONT> value=<FONT COLOR=BLUE>\"authorId\"</FONT> /&gt;</FONT><br>\n<FONT COLOR=NAVY>&lt;/message&gt;</FONT></div>\r\n\r\n<strong>ReactorAdapter / ReactorORMController Rewrite</strong>\r\n\r\nBoth the ReactorAdapter and the ReactorORMController have been rewritten, tossing a bunch of ancient gnarly code that was written to emulate things (like editing an Iterator) that Reactor now does automatically.\r\n\r\n<strong>Scaffold Enhancements</strong>\r\n\r\nScaffolds have had a little bit of \"polishing\" applied.  Form controls that are currently in an error state now show their label in red, and the labels themselves apply some automatic capitalization rules to get better-looking text straight from the database.  It relies on camel-cased column names, but you can always override the results via the Dictionary file.  For example, \"text\" becomes \"Text\" and \"firstName\" becomes \"First Name\".','ModelGlueUnity-Updates','Joe','modelglue',1,NULL,0,NULL,417,1,1),('8A10B34B-3048-55C9-433325640616CCD6','Great Model-Glue:Unity Breezo!','Steve \"Cutter\" Blades did a great presentation on Model-Glue:Unity last night for the Nashville CFUG.  I wasn\'t able to attend, but watched the Breezo after it was posted, and it\'s absolutely fantastic.  It does an excellent job walking through the framework from a developer\'s perspective, which can be hard for me to do.  For anyone who\'s wanted a more in-depth introduction to the framework at a g...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=8A10B34B-3048-55C9-433325640616CCD6\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-10-27 09:56:00',NULL,'Great-ModelGlueUnity-Breezo','Joe','modelglue',1,NULL,0,NULL,547,1,1),('AA5D506E-3048-55C9-43FA875EB499C53D','ColdFusion double-checked locking demystified','I was talking to a coworker today about a strange exception we saw, and I mentioned that the lock surrounding the process may not be double checked.  It drew a \"What does that mean?,\" so I  thought I\'d blog the answer that shows a practical example.<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=AA5D506E-3048-55C9-43FA875EB499C53D\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-11-02 15:11:00','In Model-Glue, Fusebox, and Mach-II, you\'ll see a bit of code surrounding the instantiation of the \"core\" framework CFC that looks a bit like this:\r\n\r\n\r\n<code>\r\n\r\n<cfif not frameworkIsLoaded>\r\n  <cflock name=\"frameworkLoading\">\r\n    <cfif not frameworkIsLoaded>\r\n      <!--- load framework --->\r\n    </cfif>\r\n  </cflock>\r\n</cfif>\r\n\r\n</code>\r\n\r\nAt first glance, the &lt;cfif> statements seem redundant.  However, they form what\'s known as a \"double-checked lock,\" and they\'re quite important.\r\n\r\nLet\'s pretend that Jim and Bob are both about to go to http://www.firemoss.com, a site running Model-Glue.  Let\'s also pretend that nobody\'s been there for a while (hopefully not true), and the application has timed out.   \r\n\r\nThis is what happens with double-checked locking:\r\n\r\nJim:  \"Send me index.cfm.\"\r\n\r\nMG (to Jim):  \"One moment, my first &lt;cfif> says the framework isn\'t loaded.  I\'ll start loading it now, and lock the piece of code that does the load.\"\r\n\r\nBob:  \"Send me index.cfm.\"\r\n\r\nMG (to Bob):  \"Ok, my first &lt;cfif> says the framework isn\'t loaded, but there\'s a &lt;cflock> tag here that says you need to wait a moment while I load the framework for Jim.\"\r\n\r\nMG (to Jim):  \"The loading is done, I\'ll start processing your page now.\"\r\n\r\nMG (to Bob):  \"Ok, the lock is free, you can enter the loading code now.  However, there\'s a second <cfif> that tells me that the framework was loaded while you were waiting, so I\'m going to skip loading the framework again.  Here\'s your page.\"\r\n\r\nWithout the second &lt;cfif that forms the double-checked locking, the conversation could take a sour tone:\r\n\r\nJim:  \"Send me index.cfm.\"\r\n\r\nMG (to Jim):  \"One moment, my first &lt;cfif> says the framework isn\'t loaded.  I\'ll start loading it now, and lock the piece of code that does the load.\"\r\n\r\nBob:  \"Send me index.cfm.\"\r\n\r\nMG (to Bob):  \"Ok, my first &lt;cfif> says the framework isn\'t loaded, but there\'s a &lt;cflock> tag here that says you need to wait a moment while I load.\"\r\n\r\nMG (to Jim):  \"The loading is done, I\'ll start processing your page now.\"\r\n\r\nMG (to Bob):  \"Ok, the lock is free, you can enter the loading code now.  <strong>I\'m going to load the framework, again, even though I just did so for Jim, and his request may still be running.</strong>\"\r\n\r\nMG (to Jim):  \"<font color=\"red\">Oops!</font>  I was in the middle of running your request, but I reloaded myself because Bob\'s request asked me to, and the controller on which I was about to call a listener function just ceased to exist in the application scope, so, well, here\'s an error message.\"\r\n\r\nConclusion \r\n\r\nIn multi-threaded Java, double checked locking <a href=\"http://www.javaworld.com/javaworld/jw-05-2001/jw-0525-double.html?page=1\">isn\'t a silver bullet</a>. \r\n\r\nHowever, with the locking scheme that ColdFusion implements, it\'s a safe(r) way to make sure that something that should only happen once does, in fact, happen once.','ColdFusion-doublechecked-locking-demystified','Joe','modelglue',1,NULL,0,NULL,492,1,1),('ADE8C1E9-3048-55C9-430ECCB1DA23716F','Cg4Mg:  Cairngorm for Model-Glue Developers','If you\'re a ColdFusion developer working with the Model-Glue or any other MVC ColdFusion framework, you\'re already a step ahead in architecting enterprise-level Flex RIAs.  That\'s because Flex has <a href=\"http://labs.adobe.com/wiki/index.php/Cairngorm\" target=\"_blank\">Cairngorm</a>, an MVC framework for that\'s been \"adopted\" by Adobe Labs (through acquisitions).  It has some terminology and desig...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=ADE8C1E9-3048-55C9-430ECCB1DA23716F\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-11-03 07:54:00',NULL,'Cg4Mg--Cairngorm-for-ModelGlue-Developers','Joe','modelglue',1,NULL,0,NULL,630,1,1),('2BA444B5-E081-2BAC-69E120BEC37C094E','MG 1.1.1 and MG2.0 Alpha 2','Sorry for the silence - I\'m simply very busy right now.  Model-Glue 1.1.1 and 2.0 are both en route, and I\'m hoping to release 1.1.1 and the second (private) alpha of MG:Unity this weekend.\r\n\r\n1.1.1 is the final (really, I mean it this time!) release based on the 1.x codebase.  It\'s performance tuned, and removes the necessity for the session scope to be enabled.\r\n\r\nAlpha 2 of MG:Unity is showing ...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=2BA444B5-E081-2BAC-69E120BEC37C094E\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-05-12 22:36:00',NULL,'MG-111-and-MG20-Alpha-2','Joe','modelglue',1,NULL,0,NULL,197,1,1),('3A45A30C-E081-2BAC-69C0762A5EB63B63','Model Glue 1.1.10 Release Candidate','I put some serious time into the MG 1.1.10 release this weekend, and I ended up changing more than I planned.  A little bit of the \"performance\" code from the Unity core is now in ModelGlue.cfc and ModelGlue.cfm, so I\'d like to open the release up for public testing.  Please do not deploy this into production until you\'ve had ample time to test.\r\n\r\nYou can download the release candidate at <a href...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=3A45A30C-E081-2BAC-69C0762A5EB63B63\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-05-15 18:56:00',NULL,'Model-Glue-1110-Release-Candidate','Joe','modelglue',1,NULL,0,NULL,177,1,1),('3CF0C03F-E081-2BAC-695F90F679DE6E20','Model-Glue Release Candidate Updated','If you grabbed the 1.1.10 Release Candidate last night, you\'ll want to redownload it.  You\'re likely to run across a \"element viewstate is not defined in arguments\" bug when working with <value> tags.  The latest release fixes this.<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=3CF0C03F-E081-2BAC-695F90F679DE6E20\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-05-16 07:23:00',NULL,'ModelGlue-Release-Candidatte-Updated','Joe','modelglue',1,NULL,0,NULL,198,1,1),('C902C8BA-3048-55C9-431265B0B9CEA68E','Ten Reasons to use Model-Glue:Unity','I\'ve got a really long (as in 20 minute+) process running that keeps from doing much of anything but running notepad.  I decided it\'d be a good time to stop and reflect on why I\'ve continued developing Model-Glue past the 1.x codebase.\r\n\r\nSo, without any further fluff, here\'s ten reasons why you should be interested in using Model-Glue:Unity (when it\'s released!):\r\n\r\n<strong>1.  Expression over de...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=C902C8BA-3048-55C9-431265B0B9CEA68E\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-06-12 12:10:00',NULL,'Ten-Reasons-to-use-ModelGlueUnity','Joe','modelglue',1,NULL,0,NULL,193,1,1),('CE554A2E-3048-55C9-43C2B31B3A98E644','Who says only framework applications are maintainable?','There\'s an interesting post over on Jacob Yacou\'s blog where he postulates that where he takes it upon himself to prove that you don\'t need a framework to write maintainable code.\r\n\r\nThe original post is available at <a href=\"http://www.techfeed.net/blog/index.cfm/2006/6/6/ColdFusion-Frameworks-Exclusively-Have-Maintainable-Code\">http://www.techfeed.net/blog/index.cfm/2006/6/6/ColdFusion-Framework...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=CE554A2E-3048-55C9-43C2B31B3A98E644\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-06-13 12:53:00',NULL,'Who-says-only-framework-applications-are-maintainable','Joe','modelglue',1,NULL,0,NULL,246,1,1),('C7862997-3048-55C9-43824F7203AC7B01','Important Model-Glue:Unity Changes','In preparation for Beta 2, I\'ve made two changes to the framework over the past few days, of which anyone using the bleeding edge release needs be aware:\r\n\r\nChange 1:\r\n\r\nIf you create a new application from the app template, scaffolds will not automatically be created the moment you add a <scaffold /> tag.\r\n\r\nYou\'ll need to append ?scaffold=true to the URL.\r\n\r\nIf you\'d like changed to scaffolds to...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=C7862997-3048-55C9-43824F7203AC7B01\">Read more on Joe Rinehart\'s blog</a>]</p>','2006-11-08 07:22:00',NULL,'Important-ModelGlueUnity-Changes','Joe','modelglue',1,NULL,0,NULL,990,1,1),('6186B5ED-3048-55C9-4352426625D9CAB4','Frameworks Explorer Eclipse Plug-In','Mark Drew has released an absolutely fantastic visual \"explorer\" of your framework XML files, available over at <a href=\"http://www.markdrew.co.uk/blog/index.cfm/2007/5/5/Project-U-CF-Frameworks-Explorer-Released\">his web site</a>.\r\n\r\nWith it, you can drill through ColdSpring, Model-Glue, Mach-II, Fusebox, Reactor, and (I think?) Transfer XML configs, letting snippets-based assistants aid in manag...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=6186B5ED-3048-55C9-4352426625D9CAB4\">Read more on Joe Rinehart\'s blog</a>]</p>','2007-05-06 09:11:00',NULL,'Frameworks-Explorer-Eclipse-PlugIn','Joe','modelglue',1,NULL,0,NULL,2009,1,1),('3160D4A0-3048-55C9-435A7958A61D02E5','Model-Glue\'s GenericList and undefined criteria','Someone was asking me today why the criteria list in the ModelGlue.GenericList message is the only place where undefined URL/FORM values aren\'t defaulted to empty strings.\r\n\r\nPicture an object named \"Widget\" with properties \"PrimaryWidgetType\" (non-nullable) and \"SecondaryWidgetType,\" (nullable) represented by database columns \"PrimaryWidgetTypeId\" and \"SecondaryWidgetTypeId.\"\r\n\r\nNow, imagine that...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=3160D4A0-3048-55C9-435A7958A61D02E5\">Read more on Joe Rinehart\'s blog</a>]</p>','2007-01-17 13:36:00',NULL,'ModelGlues-GenericList-and-undefined-criteria','Joe','modelglue',1,NULL,0,NULL,1202,1,1),('561B2C52-3048-55C9-436B0BE70D8C72A7','How do Model-Glue scaffolds work?','Ah, documentation.  Except for some time on my bike, I\'ve spent all day doing presentation slides and Model-Glue 2.0 documentation.  Not the most fun part of my life, but I\'ll be starting a new development project tomorrow, so I need to get it taken care of.\r\n\r\nAnyhow, when documenting the generic database and scaffolding portions, I thought some people might like some extra insight into how \"scaf...<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=561B2C52-3048-55C9-436B0BE70D8C72A7\">Read more on Joe Rinehart\'s blog</a>]</p>','2007-01-24 16:54:00',NULL,'How-do-ModelGlue-scaffolds-work','Joe','modelglue',1,NULL,0,NULL,1420,1,1),('59656EF9-3048-55C9-43C6E28E70DAC214','Model-Glue does not require XML, but it\'s a good idea to use it.','Recently, I\'ve seen a few posts criticizing the use of XML for frameworks.  One piece of misinformation they\'ve contained is that Model-Glue requires you to use XML.<p>[<a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=59656EF9-3048-55C9-43C6E28E70DAC214\">Read more on Joe Rinehart\'s blog</a>]</p>','2007-01-25 08:00:00','In reality, Model-Glue could care less about XML.  It just happens that the framework, by default, includes something called the \"XMLConfigurationLoader\" that reads ModelGlue.xml files.\r\n\r\nWhy does it include this by default?  \r\n\r\nWhen I started writing Model-Glue, I shared the view of many others where I just didn\'t see why XML should be necessary to use a framework.  I mean, I already know ColdFusion, why not just script together the events, listeners, etc?  Let the CFCs themselves be the framework.\r\n\r\nThat soon became a mess:\r\n\r\n<ol>\r\n<li>As the earliest MG application grew, the script became really repetitive.  In script form, this MG tag:\r\n<br />&lt;include name=\"body\" template=\"foo.cfm\" /&gt;<br />\r\n...requires creating an instance of View.cfc, setting its name and template, and adding it to an instance of EventHandler.cfc.  Sure, the CFCs are the framework, but the script is a royal pain to read.\r\n</li>\r\n<li><strong>As the framework CFC changed, applications broke!</strong> Because I built a framework where the CFCs were the framework, my applications were dependent on the framework API.\r\n</li>\r\n</ol>\r\n\r\nSo, I soon found myself using an XML file.  This solved the problems nicely:\r\n\r\n<ol>\r\n<li>I could create my own syntax that was Model-Glue specific, expressing multiple lines of CFML script in a single tag.</li>\r\n<li>I abstracted my application from the framework\'s API.</li>\r\n<li>I made more clear the separation of types of code:  CFML handled application logic, but XML handled application flow.  These two should be separate, and having them in different languages forces this.</li>\r\n</ol>\r\n\r\nIs XML perfect?  No, it can be overdone.  I really don\'t like that Fusebox allows pseudo-programming in its XML files, but it seems to work for its users.  However, using XML to configure an II framework beats the pants off the alternative.  What follows is a re-creation of the Model-Glue application template without using any XML:\r\n\r\n<code>\r\n<!--- Tell modelglue.cfm where the framework is stored so that it doesn\'t try loading it --->\r\n<cfset ModelGlue_APP_KEY = \"mgnoxml\" />\r\n<!--- Tell MG to run in \"legacy\" mode, where no ColdSpring.xml file exists --->\r\n<cfset _modelglue.compatibilityMode = \"Legacy\" />\r\n\r\n<!--- Model-Glue config: most settings are defaulted --->\r\n<cfset cfg = createObject(\"component\", \"ModelGlue.unity.framework.ModelglueConfiguration\").init() />\r\n<cfset cfg.setDefaultEvent(\"page.index\") />\r\n<cfset cfg.setReload(false) />\r\n<cfset cfg.setDebug(true) />\r\n<cfset cfg.setViewMappings(\"/blogsamples/mgnoxml/views\") />\r\n<cfset cfg.setGeneratedViewMapping(\"/blogsamples/mgnoxml/views/generated\") />\r\n\r\n<!--- Create the framework --->\r\n<cfset mg = createObject(\"component\", \"ModelGlue.unity.framework.ModelGlue\").init(\"MG No XML Demo\") />\r\n<cfset mg.setConfiguration(cfg) />\r\n<cfset mg.setStateBuilder(createObject(\"component\", \"ModelGlue.unity.statebuilder.StateBuilder\").init()) />\r\n\r\n\r\n\r\n<!--- Create controllers / listeners --->\r\n<cfset cont = createObject(\"component\", \"blogsamples.mgnoxml.controller.Controller\").init(mg, \"ControllerName\") />\r\n<cfset mg.addListener(\"onRequestStart\", cont, \"onRequestStart\", false) />\r\n<cfset mg.addListener(\"onQueueComplete\", cont, \"onQueueComplete\", false) />\r\n<cfset mg.addListener(\"onRequestEnd\", cont, \"onRequestEnd\", false) />\r\n\r\n<!--- Create event-handlers --->\r\n\r\n<!--- Request start/end/etc. events --->\r\n<cfset eh = createObject(\"component\", \"ModelGlue.unity.eventhandler.EventHandler\").init() />\r\n<cfset eh.setName(\"ModelGlue.OnRequestStart\") />\r\n<cfset msg = createObject(\"component\", \"ModelGlue.unity.eventhandler.Message\").init() />\r\n<cfset msg.setName(\"OnRequestStart\") />\r\n<cfset eh.addMessage(msg) />\r\n<cfset mg.addEventHandler(eh) />\r\n\r\n<cfset eh = createObject(\"component\", \"ModelGlue.unity.eventhandler.EventHandler\").init() />\r\n<cfset eh.setName(\"ModelGlue.OnQueueComplete\") />\r\n<cfset msg = createObject(\"component\", \"ModelGlue.unity.eventhandler.Message\").init() />\r\n<cfset msg.setName(\"OnQueueComplete\") />\r\n<cfset eh.addMessage(msg) />\r\n<cfset mg.addEventHandler(eh) />\r\n\r\n<cfset eh = createObject(\"component\", \"ModelGlue.unity.eventhandler.EventHandler\").init() />\r\n<cfset eh.setName(\"ModelGlue.OnRequestEnd\") />\r\n<cfset msg = createObject(\"component\", \"ModelGlue.unity.eventhandler.Message\").init() />\r\n<cfset msg.setName(\"OnRequestEnd\") />\r\n<cfset eh.addMessage(msg) />\r\n<cfset mg.addEventHandler(eh) />\r\n\r\n<!--- Index event --->\r\n<cfset eh = createObject(\"component\", \"ModelGlue.unity.eventhandler.EventHandler\").init() />\r\n<cfset eh.setName(\"page.index\") />\r\n<cfset view = createObject(\"component\", \"ModelGlue.unity.eventhandler.View\").init() />\r\n<cfset view.setName(\"body\") />\r\n<cfset view.setTemplate(\"dspIndex.cfm\") />\r\n<cfset eh.addView(view) />\r\n<cfset eh.addResultMapping(\"\", \"view.template\", false, \"\", \"\", false, true) />\r\n<cfset mg.addEventHandler(eh) />\r\n\r\n<!--- Template event --->\r\n<cfset eh = createObject(\"component\", \"ModelGlue.unity.eventhandler.EventHandler\").init() />\r\n<cfset eh.setName(\"view.template\") />\r\n<cfset view = createObject(\"component\", \"ModelGlue.unity.eventhandler.View\").init() />\r\n<cfset view.setName(\"body\") />\r\n<cfset view.setTemplate(\"dspTemplate.cfm\") />\r\n<cfset eh.addView(view) />\r\n<cfset mg.addEventHandler(eh) />\r\n\r\n<!--- Exception Event --->\r\n<cfset eh = createObject(\"component\", \"ModelGlue.unity.eventhandler.EventHandler\").init() />\r\n<cfset eh.setName(\"exception\") />\r\n<cfset view = createObject(\"component\", \"ModelGlue.unity.eventhandler.View\").init() />\r\n<cfset view.setName(\"body\") />\r\n<cfset view.setTemplate(\"dspException.cfm\") />\r\n<cfset eh.addView(view) />\r\n<cfset mg.addEventHandler(eh) />\r\n\r\n\r\n<cfset application[ModelGlue_APP_KEY] = structNew() />\r\n<cfset application[ModelGlue_APP_KEY].framework = mg />\r\n\r\n<cginclude template=\"/ModelGlue/unity/modelglue.cfm\" />\r\n</code>\r\n\r\nFun, eh?','ModelGlue-does-not-require-XML-but-its-a-good-idea-to-use-it','Joe','modelglue',1,NULL,0,NULL,2268,1,1),('684337ED-3048-55C9-43DBC348C4552B15','Model-Glue: ColdFusion and Model-Glue: Flex released!','<div class=\"contentSection\">\r\n	<div class=\"contentIcon\"><a href=\"http://www.model-glue.com/coldfusion.cfm\"><img src=\"/images/mgTabletColdFusion.gif\" /></a></div>\r\n	<h1><a href=\"http://www.model-glue.com/coldfusion.cfm\">Model-Glue: ColdFusion</a></h1>\r\n	<p>\r\n		I\'m happy to announce that I released Model-Glue 2.0 (specifically, Model-Glue 2.0.304!) earlier this morning.\r\n	</p>\r\n	<p>\r\n\r\n		<a href=\"http://www.model-glue.com/coldfusion.cfm\">Learn more about Model-Glue: ColdFusion</a>	</p>\r\n</div>\r\n\r\n<div class=\"contentSection\">\r\n	<div class=\"contentIcon\"><a href=\"http://www.model-glue.com/flex.cfm\"><img src=\"/images/mgTabletFlex.gif\" /></a></div>\r\n	<h1><a href=\"http://www.model-glue.com/flex.cfm\">Model-Glue: Flex</a></h1>\r\n	<p>\r\n		Model-Glue: Flex is a conceptual port of Model-Glue implicit invocation framework to ActionScript 3 and Flex.\r\n	</p>\r\n	<p>\r\n		<a href=\"http://www.model-glue.com/flex.cfm\">Learn more about Model-Glue: Flex</a>\r\n	</p>\r\n</div>','2007-06-26 09:39:00',NULL,'ModelGlue-ColdFusion-and-ModelGlue-Flex-released','joe','modelglue',1,'',0,'',4681,1,1),('6D9943A1-3048-55C9-4307503EDF863A76','MG: Flex - Better Delegates and Putting Responders in Their Place','One thing that irked me about both common Cairngorm practices and early MG:Flex \"autoproxies\" is the use of the controller tier as the responder for async calls.  Model-Glue: Flex solves this by using a combination of business delegates and messaging.  <a href=\"http://www.firemoss.com/blog/index.cfm?mode=entry&entry=6D96F27D-3048-55C9-436725DC9CEF7549\">Read the full article at firemoss.com</a>.','2007-06-27 10:30:00',NULL,'MG-Flex--Better-Delegates-and-Putting-Responders-in-Their-Place','joe','modelglue',1,'',0,'',2456,1,1),('9BF591A4-3048-55C9-439E81B1F8BE76C0','Reason #526 Why I Like Model-Glue','<p>OK, maybe it\'s reason 527, I lost count.</p>  \r\n\r\n<p>However, as I detail <a href=\"http://doughughes.net/index.cfm?event=viewEntry&entryId=256#\">here</a>, Model-Glue makes it very easy to move functionality around from page to page within an application by merely moving or copying blocks of XML inside your model-glue.xml file.</p>\r\n<p>Here\'s the 10 second summary of what happened.  Yesterday we had a requirements change in an application.  There was a piece of HTML code which appeared on one page that needed to be removed and placed in another page.  There was some logic in the application which determined if the HTML code should appear, and this logic did not change.  Since this logic did not change, all I needed to do was move a &lt;message&gt; block and an &lt;include&gt; block from one &lt;event-handler&gt; to another and reinitialize the application.</p>\r\n<p>I know this kind of change can be done easily in any well-architected application, but to move functionality around with writing or altering 1 line of ColdFusion code is pretty sweet. Now imagine if it was more than just some simple HTML.  Imagine if you needed to move an entire form from one page and include it in another. Assuming there were no business rules changes to go along with this, you would simply need to change your model-glue.xml file and it will just work.</p>\r\n<p>Check out the <a href=\"http://doughughes.net/index.cfm?event=viewEntry&entryId=256#\">full post</a> for more details</p>','2007-07-06 10:21:00',NULL,'Reason-526-Why-I-Like-ModelGlue','sstroz','modelglue',1,'',0,'',2044,1,1),('BF420D3D-3048-55C9-432FCEB50C80113D','Model-Glue: Simpsons!','The <a href=\"http://simpsonsmovie.com\">Simpsons Movie</a> web site has a great flash app where you can represent yourself as a Simpsons character.\r\n\r\nWhat better use for it than to put together the first \"team portrait\" of those involved in Model-Glue?\r\n\r\n<a href=\"http://www.model-glue.com/blog/images/ModelGlueSimpsons.png\"><img width=\"342\" height=\"256\" src=\"http://www.model-glue.com/blog/images/ModelGlueSimpsons.png\"></a>\r\n<br />(Click to Enlarge)','2007-07-13 07:03:00',NULL,'ModelGlue-Simpsons','joe','modelglue',1,'',0,'',58659,1,1),('CFF76647-3048-55C9-433C32A00F8BD24A','Dynamically adding &lt;views/&gt; to a Model-Glue Event','<a href=\"http://www.markdrew.co.uk/blog/\">Mark Drew</a> hit me up with an interesting question this morning:  can you dynamically add views to a Model-Glue event, determining which views to include at runtime, what to name them, and what template they should use?  Yes, you can, and you can do it without mixing configuration information into the controller tier.','2007-07-16 12:57:00','<strong>Background</strong>\r\n\r\nBeing a stubborn curmudgeon, I asked why he\'d want to in the first place:  it\'d place configuration knowledge (names of templates, names of views) up in the controller tier.\r\n\r\nBeing a logical guy, he told me he was well aware of this, and outlined his situation.  To spare you the details, I\'ll just say that I agree that adding views to the queue at runtime is necessary in his case.\r\n\r\n<strong>The Solution</strong>\r\n\r\n<em>Disclaimer:  I\'d recommend avoiding situations where doing this is necessary, but it\'s good to know it can be done!</em>\r\n\r\nIn a Model-Glue controller, if you &lt;cfdump&/&gt; arguments.event, you\'ll see that you\'re dealing with an instance of EventContext.  It\'s got a method, getEventRequest(), that lets you hook into the underlying event request.  <font color=\"red\">Warning: you can really screw some stuff up by monkeying with the event request.</font>\r\n\r\nRed text aside, EventRequest has a method called addView(view:View) that lets you add views to the queue of views to be rendered.\r\n\r\nAll we need to do to keep Mark happy is to create an instance of ModelGlue.unity.eventhandler.View and add it to the queue:\r\n\r\n<code>\r\n<cffunction name=\"queueDynamicViews\" access=\"public\" returnType=\"void\" output=\"false\">\r\n	<cfargument name=\"event\" type=\"any\">\r\n  \r\n	<cfset var eventRequest = arguments.event.getEventRequest() />\r\n	<cfset var view = createObject(\"component\", \"ModelGlue.unity.eventhandler.View\").init() />\r\n\r\n	<cfset view.setTemplate(\"dspSomeDynamicView.cfm\") />\r\n	<cfset view.setName(\"dynamicView\") />\r\n  \r\n 	<!--- Add our dynamic event to the queue of pending views to render --->\r\n 	<cfset eventRequest.addView(view) />\r\n</cffunction>\r\n\r\n</code>\r\n\r\nThat\'s kind of sloppy, though:  in Model-Glue 2.0, you can achieve a very high degree separation of configuration from code.  Because it\'s ok to instantiate a View as a singleton (it\'s just metadata), we can define this view as a ColdSpring bean, autowiring it into our controller.\r\n\r\nHere\'s the code:\r\n\r\n<em>ColdSpring</em>\r\n<code>\r\n<bean id=\"someDynamicView\" class=\"ModelGlue.unity.eventhandler.View\">\r\n	<!-- Just like the name attribute on <view>! -->\r\n	<property name=\"name\"><value>dynamicView</value></property>\r\n	<!-- This\'ll use the viewMappings setting just like a normal view! -->\r\n	<property name=\"template\"><value>dspSomeDynamicView.cfm</value></property>\r\n</bean>\r\n</code>\r\n\r\n<em>Controller</em>\r\n<code>\r\n<cfcomponent displayname=\"DynamicViewController\" extends=\"ModelGlue.unity.controller.Controller\" output=\"false\">\r\n\r\n<cffunction name=\"setSomeDynamicView\">\r\n	<cfargument name=\"someDynamicView\" />\r\n	<cfset variables._someDynamicView = arguments.someDynamicView />\r\n</cffunction>\r\n	\r\n<cffunction name=\"queueDynamicViews\" access=\"public\" returnType=\"void\" output=\"false\">\r\n	<cfargument name=\"event\" type=\"any\">\r\n  \r\n	<cfset var eventRequest = arguments.event.getEventRequest() />\r\n 	<cfset eventRequest.addView(variables._someDynamicView) />\r\n</cffunction>\r\n\r\n</cfcomponent>\r\n</code>','Dynamically-adding-views-to-a-ModelGlue-Event','joe','modelglue',1,'',0,'',3460,1,1),('843C8072-3048-55C9-43C98421A5A14110','Model-Glue SVN and Trac moving - short outage 8/20/07!','<a href=\"http://www.simb.net/\">Simeon Bateman</a>, who\'s kind enough to host the Model-Glue SVN and Trac sites (as well as sites for Reactor and Fusebox!) informed me that he\'s going to be upgrading the server later today.\r\n\r\nThis\'ll mean a DNS change, so we\'ll likely see a brief outage while everything gets sync\'d up.','2007-08-20 13:03:00',NULL,'ModelGlue-SVN-and-Trac-moving--short-outage-82007','joe','modelglue',1,'',0,'',1904,1,1),('FAEEEC18-3048-55C9-43899FD3BE56C97D','Use of Model-Glue.com content (Logos, etc.)','Talk about a post I didn\'t think I\'d wind up writing when I started Model-Glue!  With the advent of commercial endeavors using Model-Glue as part of their advertising, this became necessary.  Please be aware that the terms listed below only apply to using the Model-Glue.com <em>logo and content</em>, not the framework itself!  The framework is and will be under the <a href=\"http://www.apache.org/licenses/LICENSE-2.0.txt\">Apache Software License 2.0</a>.\r\n\r\n<strong>Summary</strong>\r\n\r\nYou\'re free to use any of the Model-Glue site content or graphics in noncommercial, educational, open-source, or personal contexts. If you\'re using it for commercial purposes (basically, if having the Model-Glue.com logo or other content as part of something that\'s making you or your company making money), you\'ll need to attribute its copyright as described below.\r\n\r\n<strong>Use of the Model-Glue Logo and Web Assets</strong>\r\n\r\nThe content of Model-Glue.com is not licensed under the <a href=\"http://www.apache.org/licenses/LICENSE-2.0.txt\">Apache Software License 2.0</a>.  It and the Model-Glue web site are two separate works.  The Model-Glue web site, its content (except blog entries contributed by other authors), and all of its assets (\"Model-Glue.com content\") are the intellectual property of <a href=\"http://www.firemoss.com\">Joe Rinehart of Firemoss, LLC</a>.  Reproduction or derivative use of the Model-Glue web site, its content, or its assets are subject to the following terms.  \r\n\r\n<strong>Noncommercial, Open-Source, and Personal Use</strong>\r\n\r\nUse of Model-Glue.com content in non-commercial works (including but not limited to educational, open-source, and personal projects) is free and unlimited.  An attribution (e.g., \"Model-Glue is Copyright [year], Joe Rinehart, Firemoss, LLC\") linking back to http://www.firemoss.com and http://www.model-glue.com is appreciated, but not required.\r\n\r\n<strong>Commercial Use</strong>\r\n\r\nUse of Model-Glue.com content in commercial works (including but not limited to software products, web sites, documents, and promotional materials) must conform to the following terms:\r\n\r\n<strong>Logo Modification in Commerical Works</strong>\r\n\r\nYou may not modify the Model-Glue.com logo except to alter its size.  The logo, in its original size, is shown below on a black background:\r\n\r\n<div style=\"background:#000000;padding:5px;\"><img src=\"http://model-glue.com/images/mgLogoTrans.png\" /></div>\r\n\r\n<strong>Use in Linkable Works</strong>\r\n\r\nIn any format that allows hypertext (Web) links (\"Linkable Works\"), the source of Model-Glue.com content must be attributed, with links, as follows:\r\n\r\n&lt;a href=\"http://www.model-glue.com\"&gt;Model-Glue&lt;/a&gt; is Copyright [year], &lt;a href=\"http://www.firemoss.com\"&gt;Joe Rinehart, Firemoss, LLC&lt;/a&gt;.\r\n\r\nFor example:\r\n\r\n<a href=\"http://www.model-glue.com\">Model-Glue</a> is Copyright 2007, <a href=\"http://www.firemoss.com\">Joe Rinehart, Firemoss, LLC</a>.\r\n\r\nThis attribution must appear on each Web page (or other linkable document) using Model-Glue.com content, and must be presented in a legible manner.\r\n\r\nWhen graphical Model-Glue.com content is used, the images themselves should link to http://www.model-glue.com.\r\n\r\n \r\n<strong>Use in Offline Work</strong>\r\n\r\nModel-Glue.com content may be used in commercial documents.\r\n\r\nAttribution of source must be given, but does not need to be given on each page of the document.  \r\n\r\nBibliographic attribution in a standard format (e.g., <a href=\"http://www.libs.uga.edu/ref/mlastyle.html\">MLA</a>) is acceptable.  \r\n\r\nThe same format as used in Web context is also acceptable.  This allows works such as common word processing documents and rich e-mails, which are commonly a Linkable Work, to be printed (becoming an Offline Work) with attribution remaining intact.\r\n\r\n<strong>Terms Subject to Change</strong>\r\n\r\nJoe Rinehart reserves the right to change these terms at his sole discretion without any obligation to notify users of Model-Glue.com content.','2007-11-01 06:46:00',NULL,'Use-of-the-ModelGlue-Logo','joe','modelglue',1,'',0,'',2608,1,1),('0FBD76D2-3048-55C9-43D34471520B4215','Model-Glue:  New Flex Integration Features','We\'ve discussed this since the dawn of MG (I once had a knock-down argument with Doug Hughes about why this <em>shouldn\'t</em> be added), but I recently really saw the need for it.  It\'d be great to be able to add Flex widgets into existing Model-Glue applications without recreating wheels (or refactoring to full service layers), and there are also good cases out there for event-driven Model tiers.  Admittedly, <a href=\"http://www.luismajano.com/blog/index.cfm/2007/10/26/ColdBox-Beta-2-FlexAIR-Integration\">ColdBox</a> also lit a fire under me to get this committed into SVN.\r\n\r\nI\'ve been working for the past few months, on and off, to add not just Flex integration but <em>smooth</em> Flex integration into Model-Glue.  It\'s now committed to <a href=\"http://svn.model-glue.com\">SVN</a>, and you\'re welcome to use it.  There\'s a new CFC in the application template (RemotingService).  To make it part of your application, make a copy of it wherever you\'d like and change the four variables it defines.  Its base class does the rest.\r\n\r\nA picture may say a thousand words on how to use this.  I\'ll shoot for ten thousand:  <a href=\"http://www.firemoss.com/blogsamples/mgFlexRemoting.mov\">here\'s 13-minute a video</a>.\r\n\r\nIf you\'d like to skip the video, here\'s the highlights:\r\n\r\nRemotingService.cfc acts as a Flash Remoting or SOAP endpoint for your application.  If you didn\'t want any niceties on the Flex side, you could simply do this:\r\n\r\n<code>\r\n<mx:RemoteObject\r\n	id=\"mgProxy\"\r\n  	source=\"myapp.RemotingService\"\r\n	destination=\"ColdFusion\"\r\n/>\r\n\r\n<mx:Script><![CDATA\r\n\r\n// invoke a model-glue event\r\nmgProxy.remoteEvent(\"widget.list\", data);\r\n]]></mx:Script>\r\n\r\n</code>\r\n\r\n\r\n...adding result and fault handlers as necessary.  That\'s not too clean though:  since there\'s only a single method to call, you\'d have to have your result figure out which event was called, delegate to a per-event handler, etc.\r\n\r\nTo make things nicer, I\'ve wrapped deailing with Model-Glue\'s RemotingService into a .SWC that I\'d recommend anyone doing this take advantage of.  It\'s what I\'ve put a fair amount of time into in order to make using Model-Glue from Flex \"just work.\"  It\'s in ModelGlue/unity/flex/bin/ModelGlueRemoting.swc, and contains three classes:\r\n\r\n<ol>\r\n<li>com.modelglue.ModelGlueDelegate - Wraps a RemoteObject instance and provides an \"invokeEvent\" method allowing passing of an event name, parameters, and callback functions.</li>\r\n<li>com.modelglue.ProxyRequest</li> - The result of calling invokeEvent on a RemotingService, containing event data, the trace log, etc.  Maps to the ModelGlue.unity.proxy.ProxyRequest CFC.</li>\r\n<li>com.modelglue.TraceGrid - DataGrid to show a Model-Glue event log.</li>\r\n</ol>\r\n\r\nTo add it, just drop a copy of the .swc into your Flex Builder 3 project\'s \"libs\" directory, or use properties -> Flex Build Path -> Library Path to add a reference to the .swc to your project.\r\n\r\nOnce it\'s added, you no longer use the RemoteObject tag.  Instead, you use the Model-Glue delegate:\r\n\r\n<code>\r\n\r\n<modelglue:ModelGlueDelegate\r\n	id=\"mgDelegate\"\r\n	source=\"myapp.RemoteService\"\r\n	destination=\"ColdFusion\"\r\n/>\r\n\r\n</code>\r\n\r\nInvoking an event now takes one required argument (the event name) and three optional arguments (an Object of event data, the result function for the call, and the fault function for the call).  Here\'s how we\'d get Widget with Id of 2:\r\n\r\n<code>\r\n\r\nmgDelegate.invokeEvent(\"widget.get\", {widgetId:2}, widgetGetResult, widgetGetFault)\r\n\r\nprivate function widgetGetResult(e:ResultEvent) {\r\n	// do stuff\r\n\r\n}\r\n\r\nprivate function widgetGetFault(e:FaultEvent) {\r\n	// do stuff\r\n\r\n}\r\n\r\n\r\n</code>\r\n\r\nEasy, eh? \r\n\r\nThere\'s more.  The \"result\" member of the ResultEvent is an AS3 class called com.modelglue.ProxyRequest.  Its \"data\" member contains all the values from your event, so they\'re immediately available to you in Flex.  Its \"log\" member contains the full Model-Glue trace, and there\'s even a custom DataGrid to help you show it!\r\n\r\nLet\'s pretend we wanted to read widget with WidgetId 2 and see the trace.  We can add the trace grid:\r\n\r\n<code>\r\n<modelglue:TraceGrid id=\"traceList\" width=\"100%\" height=\"100%\" />\r\n</code>\r\n\r\nNow, we update our result to get the widget into a variable (AS3 &lt;-> CFC conversions work!) and trace the event log:\r\n\r\n<code>\r\nprivate function widgetDeleteResult(e:ResultEvent) {\r\n	request:ProxyRequest = e.result as ProxyRequest;\r\n	\r\n	// a \"widget\" variable was created by the MG event\r\n\r\n	someWidgetForm.widget = request.data.widget;\r\n\r\n	// show our trace log\r\n\r\n	traceList.dataProvider = request.log;\r\n}\r\n</code>\r\n\r\nIf Model-Glue encounters an exception, that\'ll be noted as well.  Your ProxyRequest\'s \"exception\" property will be true, and the data.exception and data.stackTrace will be populated.  \"Exception\" is basically the cfcatch structure, and the stackTrace is the full ColdFusion stack trace to the exception.\r\n\r\nAll of this is committed into <a href=\"http://svn.model-glue.com\">SVN</a>, and should make it into an official dot release after feedback is collected and revisions made.','2007-11-05 06:53:00',NULL,'ModelGlue--New-Flex-Integration-Features','joe','modelglue',1,'',0,'',7756,1,1),('3904F080-3048-55C9-43CFAEC2FDE30FD0','Model-Glue group on ColdFusionCommunity.org','<a href=\"http://www.coldfusioncommunity.org\">ColdFusionCommunity.org</a>, a Facebook-like site for ColdFusion developers, is growing rapidly.  Yesterday, <a href=\"http://www.coldfusioncommunity.org/profile/ShimjuDavid\">Shimju David</a> started up a <a href=\"http://www.coldfusioncommunity.org/group/ModelGlue\">Model-Glue group</a>.  It\'d be great if it grew into an \"unofficial\" place to connect with and get to know other Model-Glue developers.','2007-11-13 07:38:00',NULL,'ModelGlue-group-on-ColdFusionCommunityorg','joe','modelglue',1,'',0,'',2191,1,1),('445B5A72-3048-55C9-4318398DC6AD99E5','Diagram: Relating Model-Glue (ColdFusion) to Cairngorm','I was talking with a ColdFusion developer earlier today who uses Model-Glue extensively and is diving into the <a href=\"http://labs.adobe.com/wiki/index.php/Cairngorm\">Cairngorm</a> framework for Flex and we were discussing the various layers (there are plenty) in a Cairngorm application/\r\n\r\nThis got me thinking that it might be handle to have a reference that compares the various layers in a typical Model-Glue application to a Cairngorm setup.  I\'ve knocked together a diagram doing just that, and it\'s available as either a <a href=\"http://www.model-glue.com/blog/enclosures/Model%2DGlue%20and%20Cairngorm%20Layer%20Comparison%2Epdf\">PDF </a> or an image (below, save it for full-size).\r\n\r\nColdFusion Disclaimer: It assumes you\'re using Model-Glue and ColdSpring, but it\'d be easier enough to translate it to Mach-ii and other IoC frameworks.\r\n\r\nCairngorm Disclaimer:  I glossed over things like responders to show big picture.\r\n\r\n<img src=\"http://www.model-glue.com/blog/images/Model-Glue and Cairngorm Comparison.png\" width=\"382\" height=\"480\">','2007-11-15 12:24:00',NULL,'Diagram-Relating-ModelGlue-ColdFusion-to-Cairngorm','joe','modelglue',1,'C:\\Inetpub\\JoeRinehart\\www.model-glue.com\\blog\\enclosures/Model-Glue and Cairngorm Layer Comparison.pdf',28635,'application/pdf',5114,1,1),('7D83B623-FF1D-C52F-5E8C55A8DB3EDDB2','Model-Glue 3 \"Beans\" Injection','One of my favorite features in Model-Glue, suggested and originally implemented by <a href=\"http://www.corfield.org\">Sean Corfield</a>, is autowiring.  With autowiring, if you create a method named setSomeService() on a Controller, the framework will automatically search a ColdSpring bean factory for a bean named \"someService\" and set it into the controller.\r\n\r\nIt\'s super-cool, but it requires some explicit, repetitive code:  writing nearly identical setters on your controller for the services it needs.\r\n\r\nModel-Glue 3\'s code name is \"Gesture,\" and it stands for declarative workflows and elimination of boilerplate.  Clearly, something had to be done about all these setters that just serve as a marker for autowiring.\r\n\r\nIn Model-Glue 3, this \"something\" is a new attribute on the &lt;controller /&gt; tag called \"beans\":\r\n\r\n<code>\r\n<controller\r\n	id=\"contactController\" \r\n	type=\"com.myapp.controller.ContactController\"\r\n	beans=\"contactService,authenticationService\"\r\n/>\r\n</code>\r\n\r\nInside of each Model-Glue controller is a new scope called \"beans\" (really, it\'s just a struct in variables....).  When the framework loads, it automagically sets any beans listed in the \"beans\" attribute of &lt;controller /&gt; into the \"beans\" scope, keyed by beanId, <strong>no setter required</strong>.\r\n\r\nIn other words, as soon as I reload the framework with the above &lt;controller /&gt; tag, I can do this in any listener function:\r\n\r\n<code>\r\n<cfset var contacts = beans.contactService.list() />\r\n</code>\r\n\r\nFun stuff!','2008-01-15 07:47:00',NULL,'ModelGlue-3-Beans-Injection','joe','modelglue',1,'',0,'',3100,1,1),('09C7FDF4-FF1D-C52F-5E4119A115F987C9','Model-Glue 3 goes Public @ cf.Objective()','Three years ago, the Model-Glue framework brought easy but powerful MVC development to the ColdFusion community. With the release of Model-Glue 3 (code named \"Gesture\"), the framework\'s going back to its roots. \r\n\r\nModel-Glue 3 is will make it easier than ever to employ architectural concepts like MVC and Implicit Invocation in your ColdFusion applications. \r\n\r\nAt <a href=\"http://www.cfobjective.com\">cf.Objective() 2008</a>, I\'ll be showing all of the new features in Model-Glue 3 for the first time as well as some of the revamped framework internals.','2008-04-01 07:36:00',NULL,'ModelGlue-3-goes-Public--cfObjective','joe','modelglue',1,'',0,'',1733,1,1),('381B346F-FF1D-C52F-5E8E5A3BC10320E9','MG3 Feature Sneak:  Event Generation Video','Yesterday on YouTube, I posted a video of a new developer workflow coming in Model-Glue 3 called \"Event Generation.\"\r\n\r\nWhen in developer mode, hitting a nonexistent event-handler can be configured to generate a conventions-based Controller, listener function, controller, and view.  \r\n\r\nBasically, typing \"index.cfm?event=order.list\" gives you the following:\r\n\r\n<ol>\r\n<li>An OrderController will be generated if it doesn\'t exist</li>\r\n<li>A listener function named \"list\" will be created in OrderController</li>\r\n<li>A message-listener subscribing OrderController.list() to \"order.list\" will be generated, along with a controller tag if one does not exist.</li>\r\n<li>A view in /order/list.cfm will be created.</li>\r\n<li>An event-handler tag wiring all of this together is created in the XML file of your choice, defaulting to your main ModelGlue.xml</li>\r\n</ol>\r\n\r\nHere\'s a video of it in action:\r\n\r\nOne of my favorite features coming in MG3 is purely for developer ease of use:  hit an event that doesn\'t exist while in development mode, and it\'ll generate intelligently named controllers, listener functions, and views, wiring them all together with convention-based XML.\r\n\r\nHere\'s a video of Event Generations (and a bit of SES features) in action:\r\n\r\n<object width=\"425\" height=\"350\"> <param name=\"movie\" value=\"http://www.youtube.com/v/qxseJAVsxUc\"> </param> <embed src=\"http://www.youtube.com/v/qxseJAVsxUc\" type=\"application/x-shockwave-flash\" width=\"425\" height=\"350\"> </embed> </object>','2008-04-10 11:50:00',NULL,'MG3-Feature-Sneak--Event-Generation-Video','joe','modelglue',1,'',0,'',2223,1,1),('7144FCD1-FF1D-C52F-5EBDD7B13A0DA7AB','MG3: Application.cfc integration','Towards the end of last week, I finished adding Application.cfc integration into Model-Glue 3.  I\'ve taken a few passes at it, and finally hit upon a solution I\'m happy with.\r\n\r\nThe short of it is that working with onSessionStart, onSessionEnd, and onApplicationStart within a Model-Glue 3 application is just like working with earlier Model-Glue application\'s onRequestStart or onRequestEnd broadcasts:  just listen for it and do what you need to do! \r\n\r\nFor example, if you had a UserCountController that incremented and decremented the number of current sessions, you could subscibe its functions like so:\r\n\r\n<code>\r\n\r\n<controller name=\"UserCountController\" type=\"com.myapp.controller.UserCountController>\r\n  <message-listener message=\"onApplicationStart\" function=\"resetUserCount\" />\r\n  <message-listener message=\"onSessionStart\" function=\"incrementUserCount\" />\r\n  <message-listener message=\"onSessionEnd function=\"decrementUserCount\" />\r\n</controller>\r\n\r\n</code>\r\n\r\n<em>Caveat</em>\r\n\r\nWhen you listen for onSessionEnd, you obviously don\'t have a URL or FORM scope to populate into the event.  Instead, the only defined event value is \"sessionScope,\" which is (you guessed it) the session scope of the expiring session.\r\n\r\n<em>Enabling it</em>\r\n\r\nThere\'s now an Application.cfc as part of the application template.  If you\'d like to use this in an upgraded application, I believe you can just replace your Application.cfm with the CFC from the new template, modifying the copy with your application\'s name, settings, etc.\r\n\r\n<em>What about \"sub-applications?\"</em>\r\n\r\nIn a \"sub-application\" setup, you may have more than one Model-Glue application in a given application scope, using ModelGlue_APP_KEY to keep them separate.  In another situation, you may have a non-Model-Glue application sharing an application scope with Model-Glue.\r\n\r\nThe implementation used accounts for both. As long as the Application.cfc from the new application template is used, it\'ll introspect the application scope (using the ModelGlueFrameworkLocator, inspired by ColdSpring\'s BeanFactoryUtils) to find all instances of Model-Glue, firing the appropriate onSessionStart/End/etc. events in all of your applications.\r\n\r\nIn other words, if you\'ve got two Model-Glue apps sharing the same application scope and a session starts orends, both will have their onSessionStart/End mechanics fired.','2008-04-21 09:50:00',NULL,'MG3-Applicationcfc-integration','joe','modelglue',1,'',0,'',1966,1,1),('CE42684D-FF1D-C52F-5ECCA303BD199548','Help: anyone have a server for Model-Glue?','If you or your company would like to be associated with helping out the Model-Glue framework (not sponsorship, but a decent logo placement), I\'m looking for someone willing to host <a href=\"http://www.atlassian.com\">Jira</a> and <a href=\"http://www.atlassian.com\">Confluence</a> for ongoing bug tracking and documentation authoring.\r\n\r\nWhile I\'m able to acquire free licenses of both because of Model-Glue\'s open source status, I\'m not able to host them on the firemoss.com VPS.  If anyone has a server that could support running Tomcat (or deploying these to an existing JEE server such as JBoss) and would like to be part of the Model-Glue \"team,\" please comment or drop me a line at <a href=\"mailto:joe@firemoss.com\">joe@firemoss.com</a>.  Both applications are super-easy to install and get running, can be made to play nice with an existing Apache web server, and work with just about any database.','2008-05-09 11:12:00',NULL,'Help-anyone-have-a-server-for-ModelGlue','joe','modelglue',1,'',0,'',1582,1,1),('42BC0C76-FF1D-C52F-5ECCE5C5A593166E','Update on ModelGlue:3 Gesture','<p>Version 3 of the Model-Glue framework is under development right now. Here is an update on where we stand...</p>\r\n<h3>Issue Tracker</h3>\r\n<p><a href=\"http://bugs.model-glue.com/jira/secure/Dashboard.jspa\" target=\"_new\">Reporting bugs/enhancement requests for Model-Glue</a> just got easier. We now have a fully licensed JIRA issue tracker. This will help us stay on top of bugs, features and such. A special thanks to the fine folks at <a href=\"http://www.atlassian.com/software/jira\" target=\"_new\">Atlassian</a> for making licenses available to the Model-Glue project at no charge.</p>\r\n<h3>Load Testing</h3>\r\n<p>I\'ve been load testing a MG:3 application pretty heavily for the last couple of weeks. The framework holds up extremely well to load and shows no memory leakage or other misbehavior.</p>\r\n<h3>Fixed Bugs</h3>\r\n<p>The bug count has been reduced by 50%. Keep logging and reporting issues!</p>\r\n<h3>Want to try Model-Glue:3?</h3>\r\n<p>The framework still has an Alpha label for now and while we have a  pretty active group of folks using the MG:3 alpha, others are still welcome. Download the latest framework code from http://svn.firemoss.com/modelglue/trunk/ModelGlue and tell us what you think.</p>','2008-07-20 18:57:00',NULL,'Update-on-ModelGlue3-Gesture','danwilson','modelglue',1,'',0,'',1732,1,1),('4FC75C88-FF1D-C52F-5E9C1E88538D475F','New MG3 Feature:  Dynamic viewMappings','Some of the new features in MG3, such as its revised core, focus on work being done in the more \"enterprise\" arena.  A specific case that I\'m working hard to support is the case where many customers are running \"their own instance\" of a common code base and how to support per-customer modification.\r\n\r\nRealizing the use case, let\'s imagine that you host a blog platform.  Customers can sign up and immediately have their own blog deployed.  Each blog is running the exact same code base, all hosted on the same server/cluster.\r\n\r\nInevitably, a customer will offer to pony up cash to have a view things change. On the service / controller side, MG3 has you covered by allowing ColdSpring-based definition of services and controllers, allowing you to use ColdSpring \"overriding\" to one-off services and controllers.\r\n\r\nFor views, however, things were tricky.  To support this case, the concept of \"dynamic viewMappings\" is implemented.\r\n\r\nModel-Glue crawls an array of \"view mappings\" looking for your application\'s views:  it\'s defined in your app\'s Coldspring.xml file.\r\n\r\nWith dynamic viewMappings added, you can manipulate this list at runtime.\r\n\r\nLet\'s solve our blog engine case, pretending that customer \"acmeCorp\" needs a suite of custom views, overriding the default views only when a custom is defined.  All we have to do is update the viewMappings inside a listener function whenever the user is from acmeCorp:\r\n\r\n<code>\r\n\r\n<cfset var customViewMappings = user.getCompany().getCustomViewMapping() />\r\n\r\n<cfif len(customViewMappings)>\r\n	<cfset event.setValue(\"viewMappingAdvice\", viewMappings) />	\r\n</cfif>\r\n\r\n</code>\r\n\r\nEt voila.\r\n\r\nSee http://docs.model-glue.com/wiki/HowTos/HowToUseDynamicViewMappings for more information','2008-07-23 07:56:00',NULL,'New-MG3-Feature--Dynamic-viewMappings','danwilson','modelglue',1,'',0,'',1386,1,1),('4FCB9312-FF1D-C52F-5E9252DCC7523BE7','Model-Glue Welcomes Dan Wilson','This post is awfully belated:  I\'m happy to welcome <a href=\"http://www.nodans.com/\">Dan Wilson</a> as a member to the Model-Glue project.\r\n\r\nHe\'s helping out with bug fixes, administering the <a href=\"http://www.aboutweb.com\">AboutWeb-provided server</a> that runs <a href=\"http://bugs.model-glue.com/jira\">the new bug tracking site</a> (and eventually docs / wiki), and writing blog entries for Model-Glue.com.\r\n\r\nWelcome aboard, Dan!','2008-07-23 07:58:00',NULL,'ModelGlue-Welcomes-Dan-Wilson','joe','modelglue',1,'',0,'',1429,1,1),('E31206E4-FF1D-C52F-5E21454438393D52','Model Glue:Gesture - Release Candidate Now Available','The release candidate for the <a href=\"http://www.model-glue.com/coldfusion.cfm\">much anticipated Model Glue:Gesture release is now available</a>. The target date for this release will coincide with CFUnited. \r\n\r\n<h3>What\'s going on at CFUnited?</h3>\r\nThere will be a Model-Glue:Gesture BoF session on Wednesday 8/12/2009 at 8:30 PM in the aptly named Matrix room where we\'ll announce the new framework and also go over some new opportunities for the MG community.\r\n\r\nThere will also be 2 Model-Glue presentations on Thursday morning 8/13/2009. One by me (<a href=\"http://www.nodans.com\">Dan Wilson</a>) at 8:30 and one by the <a href=\"http://www.markdrew.co.uk/\">Illustrious and Handsome Mark Drew</a> at 9:45.\r\n\r\n\r\n<h3>What if you find a bug?</h3>\r\nWhile we do our best to ensure the highest quality, occasionally something slips past us. Simply <a href=\"http://bugs.model-glue.com\">Add a ticket and we\'ll sort it out straight away</a>.\r\n\r\n<h3>Credits?</h3>\r\nA number of folks were very helpful during this last and final push.\r\n\r\n<a href=\"http://cfgrok.com\">Ezra Parker</a> worked on some pretty deep scaffolding/relationship issues in this release.\r\n\r\n<a href=\"http://www.codfusion.com/blog/\">John Mason</a> put in some good work with the AbstractRemotingService and also wrote the Unit Tests along with a new example application called Buster, showcasing how to use the RemotingService in ModelGlue:Gesture.\r\n\r\n<a href=\"http://www.coldfusionjedi.com/\">Ray Camden</a> provided the impetus for some new functionality and also ported over LighthousePro to Model-Glue:Gesture as a new example application.\r\n\r\n<a href=\"http://www.cfcode.net/blog/\">Chris Peterson</a> and <a href=\"http://cfgrok.com\">Ezra Parker</a> worked out some issues with our infrastructure and Chris was especially helpful in helping out with other MG property issues.\r\n\r\n\r\nThe road to the release has been paved with the efforts of many. I\'m proud to see the 3.0 release coming up in just a week!\r\n\r\nKeep Sniffing The \'Glue\r\n\r\n--Dan','2009-08-03 21:25:00',NULL,'Model-GlueGesture--Release-Candidate-Now-Available','danwilson','modelglue',1,'',0,'',740,1,1),('472C014B-FF1D-C52F-5E92C28DFB8C7700','New Model Glue 3 Feature: copyToScope()','<p>We\'ve just finished adding another feature to Model-Glue 3 called copyToScope(). This feature makes it easier to pull variables out of the event scope and place them into another scope. A big thanks to <a href=\"http://www.fancybread.com/blog/\">Paul Marcotte</a> for suggesting this feature.</p>\r\n<h3>How does it work?</h3>\r\n<p>Say you want to pull 3 values from the event and use them in your view. Normally, you would run 3 separate commands:\r\n<code>\r\n<cfset foot = event.getValue(\"foot\") />\r\n<cfset hand = event.getValue(\"hand\") />\r\n<cfset xe.nested = event.getValue(\"xe.nested\") /> \r\n</code>\r\nthe end result being that each value: foot,hand,xe.nested is now in the variables scope ready for use in your view.</p>\r\n<p>Here in the labs of Model-Glue, we want to reduce developer excise when possible. The new copyToScope() method can be used to short cut the same process.</p>\r\n<code>\r\n<cfset event.copyToScope(variables, \"foot,hand,xe.nested\") />\r\n</code>\r\n<p>\r\nThe end result is the exact same as above, except only 1 line of code is needed to pull several values from the event at once.\r\n</p>\r\n<h3>What about default values?</h3>\r\n<p>As event.getValue() takes an optional argument to set default values, our new friend event.copyToScope() will take an optional array of default values. The position of the list elements pertain to the position of the value in the array. This means the 1st value in the list gets the 1st position in the array, the 2nd gets the 2nd and so on. Let\'s look at an example where I want to provide defaults to 2 items in the list:</p>\r\n<code>\r\n<cfset defaultArray = [\"DefaultForFoot\", \"DefaultForHand\"] />\r\n<cfset event.copyToScope(variables, \"foot,hand,xe.nested\", defaultArray) />\r\n</code>\r\n<p>\r\nOnce the function executes, the value of variables.foot is DefaultForFoot and the value for variables.hand is DefaultForHand. If no value existed in the event for xe.nested, it will be set to an empty string as per normal when a value is requested from the event that has not been set yet.\r\n</p>\r\n<h3>Does it only work with the variables scope?</h3>\r\n<p>Nope. It will work with any scope you see fit. Session, Server, Application, even a plain ole struct, though I expect the variables scope will be most often used.</p>\r\n<h3>Where can I get the code?</h3>\r\n<p>You can update from SVN at http://svn.firemoss.com/modelglue and try the feature out. Several bugs have also been fixed including a bug with Railo compatibility submitted by Denny Valliant. Thanks to Denny for his contribution.</p>','2008-09-09 08:25:00',NULL,'New-Model-Glue-3-Feature-copyToScope','danwilson','modelglue',1,'',0,'',1322,1,1),('F7A61EDF-FF1D-C52F-5E311679747B7AD8','JIRA/Tomcat Expert Assistance Needed','<h3>Update:</h3>\r\n<p><strong> The illustrious Marc Esher has helped us out getting the JIRA instance back up and running. A big thanks to Marc and the other nice folks that offered their expertise</strong></p>\r\n\r\n<p>If you have experience managing JIRA and/or Tomcat, we at the Model-Glue project could use your help. See, we have our bug tracker on JIRA and the instance somehow, as we say in the south, <strong>Done Got Broken</strong>. Naturally, we\'d like to get it back up and running so we can keep building neat and useful features in Everyone\'s Favorite Framework.</p>\r\n\r\n<p>So, if you think you can roll up your sleeves and make a difference, leave us a comment and we\'ll be in touch.</p>','2008-10-13 15:15:00',NULL,'JIRATomcat-Expert-Assistance-Needed','danwilson','modelglue',1,'',0,'',1350,1,1),('029D02C8-FF1D-C52F-5EC92E98F69D6A47','ModelGlue wants to hear from You!','<p>Those of us who work in the labs of Model-Glue know a good idea when we see one. After taking the <a href=\"http://www.compoundtheory.com/?action=displayPost&ID=367\" target=\"_new\">Transfer survey</a>, we put together one of our own. We want to hear from you, Model-Glue user or not, on frameworks and what you find important.</p>\r\n<h3>Our Survey</h3>\r\n<p>The survey is really short, only a few questions, and we\'ve thrown in a text area or two so you have room to give us a piece of your mind. The smart person you are, you can finish this survey in 10 minutes tops.</p>\r\n<h3>How we use the results</h3>\r\n<p>We\'ll use the information gained by this survey to drive development of the framework. As always, Model-Glue is by the people, for the people and of the people. Your input will be kept anonymous of course.</p>\r\n<h3>Wanna take it?</h3>\r\n<p><a href=\"http://spreadsheets.google.com/viewform?key=pV_YPtP0HXyYxlOXmNduDVA\" target=\"_new\">Take the Model-Glue Survey</a></p>','2008-10-15 18:14:00',NULL,'ModelGlue-wants-to-hear-from-You','danwilson','modelglue',1,'',0,'',1461,1,1),('3E6DE3D4-FF1D-C52F-5E816DF8AF08B5BA','On Model-Glue and CodexWiki','<p>On the Model-Glue project, we\'re working through a number of issues on our upcoming Model-Glue:Gesture release. One hot topic is how to handle documentation. At some point, <a href=\"http://codexwiki.org/\" target=\"_new\">Codex Wiki</a> was raised. Codex Wiki, as you know, is Wiki Software built using the ColdBox and Transfer Frameworks. The question was raised whether we would use it because it was written in ColdBox, or whether we should develop a Model-Glue version of Wiki Software.</p>\r\n\r\n<p>From the start, I\'m going to say we aren\'t ready to make any decisions on documentation implementation. The direction we go largely depends on the critical path issues to get us there and the resources we can put to the task. Our internal time line is tight so we\'ve got to look at all the elements in the equation before finalizing documentation implementation.</p>\r\n\r\n<p> That said, I want to make a few public statements to the community at large. There is no question about my commitment to the Model-Glue project, of course, but did you know I\'m also a fan of ColdBox? I\'ve got healthy respect for the very impressive ColdBox framework and even more respect for Luis Majano personally, whom I consider a friend. Luis is one of the most decent human beings out on the planet and he has put an almost super human effort into building and maintaining his framework ecosystem. He helped raise the bar for CF Frameworks.\r\n</p>\r\n<p>I\'m actually a big fan of Mach-II, believe it or not. I\'ve personally contributed some minor bits and pieces here and there to Mach-II and I\'ve been happy to do it. I\'ve also put significant applications into production powered by Mach-II. Mach-II is a quality project run by very smart and dedicated people who have done an admirable job developing a quality framework with good features, a responsive, dedicated community and some of the sexiest Mach-II shirts in town! (I want one)\r\n</p>\r\n<p>Did you know TACFUG, the User Group I run along with Jim Priest, uses Mach-II to power our most excellent User Group Website? (<a href=\"http://code.google.com/p/chug/\" target=\"_new\">CHUG</a>). Check it out: <a href=\"http://tacfug.org\" target=\"_new\">http://tacfug.org</a></p>\r\n\r\n<p>Codex Wiki is great software and if it works out for us, we\'ll use it. I\'m not going to burst into flame, just because it is written using the ColdBox framework. Should we need to add features, we\'ll build them and contribute back to the project even if it means I\'ve got to learn ColdBox to do it.\r\n</p>\r\n<p>In closing, I\'m all for friendly rivalries, but we gain nothing by throwing rocks, being divisive or fragmenting effort by unnecessarily duplicating projects. The ColdFusion framework community stands to gain most by collaborating and providing a quality set of Open Source frameworks and Tools to the community and engaging the ColdFusion community to further embrace mature development standards and techniques. Consider Model-Glue a willing partner with those sharing our philosophy.\r\n</p>','2009-03-25 11:45:00',NULL,'On-ModelGlue-and-CodexWiki','danwilson','modelglue',1,'',0,'',1040,1,1),('6727C5E7-FF1D-C52F-5E41B73A3497676F','The State Of The Glue','<h3>The State Of The Glue</h3>\r\n<p>This post is part of our periodic status updates on progress and upcoming work on the Model-Glue project. The last week has been very productive and we appreciate all the offers of help and support. We will be circling back to each and every one of you with opportunities where you can contribute to the framework you know and love.</p>\r\n<h3>Timeline</h3>\r\n<p>The current timeline is to have the public beta out by <a href=\"http://cfobjective.com\" target=\"_new\">CF.Objective()</a>. This means in the short span of 5 weeks we\'ll have a documented, backwards compatible framework ready for production (we think). We\'ll allow a bake-in period (We have an internal target of 1 month) with the drop-dead final release date of <a href=\"http://cfunited\" target=\"_new\">CFUnited</a>.</p>\r\n<h3>Work Done Since Last Update</h3>\r\n<p>A number of folks have stepped up to the plate and helped out. We\'d like to give a moment of thanks.</p>\r\n<p>The fine folks at <a href=\"http://alagad.com\" target=\"_new\">Alagad</a> (<a href=\"http://www.doughughes.net\" target=\"_new\">Doug Hughes</a>, <a href=\"http://www.cfcode.net/blog/\" target=\"_new\">Chris Peterson</a> , <a href=\"http://www.alagad.com/go/blog?createdBy=jchastain\" target=\"_new\">Jeff Chastain</a> in particular) are hard at work building us new infrastructure and helping to consolidate the myriad of Model-Glue web properties. Look for a new Trac instance soon.</p>  \r\n<p>Thanks go to <a href=\"http://cfgrok.com\" target=\"_new\">Ezra Parker</a> for being a trac expert and for also being clever enough to write scripts to convert our old MG:2 RoboHelp documentation into wiki based documentation. </p>\r\n<p>Thanks also go to <a href=\"http://www.silverwareconsulting.com/\" target=\"_new\">Bob Silverberg</a>, <a href=\"http://www.compoundtheory.com/\" target=\"_new\">Mark Mandel</a> and <a href=\"http://www.markdrew.co.uk/blog/\" target=\"_new\">Mark Drew</a> for helping out with the scaffolding feature design and analysis.</p>\r\n<p>Thanks also to <a href=\"http://thecrumb.com\" target=\"_new\">Jim Priest</a> for helping out with ANT and the Model Glue Application Template.</p>\r\n<p>Thanks also to <a href=\"http://www.coldfusionjedi.com/\" target=\"_new\">Ray Camden</a>, <a href=\"http://fancybread.com\" target=\"_new\">Paul Marcotte</a> for helping out with example applications.</p>\r\n<h3>Work Left To Do</h3>\r\n<h4>MG:3 Documentation</h4>\r\n<p>I confess to not having used all the MG:3 features.  SES Urls?  I have no idea how that works and have never used any SES URLS on any site ever. Ideally, we\'d get volunteers who HAVE worked with these features in a production scenario to write the initial documentation and provide a code sample.  I\'ll post a list in a few days of the areas up for volunteering. When I do, if you like/use a particular feature, email me off list and I\'ll reserve it for you.</p>\r\n<h4>Scaffolding</h4>\r\n<p>I\'ve been working with a few folks on the initial scheme for Scaffolding and it is coming along. I\'m going to have some time away from work in the next few weeks to work on this so expect something working by the 3rd or 4th week of April. Meanwhile, if you have an application that uses scaffolding and you wouldn\'t mind helping me test this feature, please leave a comment on this post and you\'ll get an early preview.</p>\r\n<h4>Example Applications</h4>\r\n<p>This one is moving right along. The King of the Sample application, <a href=\"http://www.coldfusionjedi.com/\" target=\"_new\">Ray Camden</a> has volunteered to put some example applications together. His ideas are good ones and will be an asset to the project. Paul Marcotte is helping to design another example application that will showcase features of MG:3 specifically. This last application will tie in somehow with the MG:3 documentation and those who chip in a feature will get their name in lights!</p>\r\n<h3>My Availability</h3>\r\n<p>I\'m happy to say that my Brother, Dave Wilson, is taking me on a Kayak/Camping trip deep in the Florida Everglades for my Batchelor party. I\'m very very excited to go on this trip because I love my brother and want to get in some relaxing time before the wedding. Also, I\'m taking a little time off from my client work to get personally organized and to knock out the remaining MG:3 tasks. As such, I might not return your emails for a few days. It doesn\'t mean I hate you, but I\'ve yet to see a Palm Tree with WiFi, <a href=\"http://www.youtube.com/watch?v=FfE66zgRD3g&feature=channel_page\" target=\"_new\">KnowWhatIMeanVern?</a></p>','2009-04-02 10:05:00',NULL,'The-State-Of-The-Glue','danwilson','modelglue',1,'',0,'',923,1,1),('42D6A106-FF1D-C52F-5EBBDDAC2DCEF862','Dan Wilson takes over the Model-Glue Framework','Hi everybody,\r\n\r\nFor the past five years (or so), I\'ve been in charge of the Model-Glue framework.  I\'ve hit a standstill in my ability to progress or even maintain the code or the community:  my professional work focuses more and more on RIA and J2EE technologies outside of ColdFusion and CFML (although MG + CFML is still my preference for creating HTML sites!).\r\n\r\nAfter working with him and discussing the idea since MAX 2008, I\'ve come to the decision to hand over control of the project and title of \"Model-Glue\'s Benevolent Dictator\" to Dan Wilson, a fellow North Carolinian, MG user, and all around great guy.  He\'s been patching and helping MG3 out for about 6 months, and he\'s accepted a role as the leader of the framework.\r\n\r\nDoug Hughes, president of <a href=\"http://www.alagad.com\">Alagad, Inc.</a> will be working with Dan as a temporary co-leader to help get things ramped up.  \r\n\r\nDan\'s immediate goals (set by him, because he\'s now in charge!) include:\r\n\r\n<ul>\r\n<li>Getting MG3 ready for release at cf.Objective() 2009</li>\r\n<li>Moving the Model-Glue site, documentation, and subversion repositories to servers at Alagad</li>\r\n</ul>\r\n\r\nDetails of the change:\r\n\r\n<ul>\r\n<li>\"Team Model-Glue\" members (including myself) are now considered an advisory board.  We\'ll help in whatever capacity we\'re able to, and Dan doesn\'t answer to us in any way.  It\'s his show, and I have good faith in his decisions.</li>\r\n<li>Alagad, Inc. will be providing code and documentation support to get MG3 out the door.  This is a huge gift from Alagad to the MG community, and we thank them greatly for it!</li>\r\n<li>Model-Glue\'s licensure will remain the same (ASL 2), but the copyright will change.  To ensure that the framework remains community (and not corporate) property, any contributor will be granted credit in the copyright.  This will immediately make Model-Glue \"Copyright 2009, Raymond Camden, Sean Corfield, Raymond Camden, Doug Hughes, Joe Rinehart, Jared Rypka-Hauer, Chris Scott, Dan Wilson.\"  This is a purposeful move:  having this many people with ownership makes it damn near impossible to sell the IP rights to the framework.  Unless, that is, some company would like to make an very generous cash offer to each of the contributors ;). \r\n</li>\r\n</ul>\r\n\r\nThat\'s all.  I\'ve enjoyed working on Model-Glue, but it\'s obvious I\'m just not the guy for it any longer.  My open source time will be spent more on the Flex / Java side:  I\'ve contributed into the Swiz framework, and I\'m working on a Hibernate-fueled data services framework code-named \"RedShift\" that should simulate the data synchronization bits that are part of LiveCycle Data Services via anything that can subscribe to a JMS bus (like a Flex app!).','2009-03-26 08:40:00',NULL,'Dan-Wilson-takes-over-the-ModelGlue-Framework','joe','modelglue',1,'',0,'',1805,1,1),('C0397C2C-FF1D-C52F-5E30638692FC591A','Volunteer for the Model Glue Team','<p>\r\nWe are hard at work on the next version of Model-Glue. In focus this week is documentation of the new features. We have put together an easy way for you to contribute to the framework by completing a simple workflow process with us. You\'d be asked to volunteer a few hours to explore and work up some documentation/short code samples that we\'ll use to wrap up the new framework docs.\r\n</p>\r\n<p>\r\nIf you\'ve got a few hours between now and the end of the month, like working with the Model-Glue framework and you are reasonably intelligent, you\'ll fit right in. Heck, you gotta learn this stuff at one point or another, right? The one and only Doug Hughes will host/run a meeting on <strong>Tuesday the 21st (4PM EST)</strong> to explain the process and the short commitment we need from you. If you are on board, we\'ll work with you to get you up and running so we can get this stuff complete and finalize the docs.\r\n</p>\r\n\r\n<p><strong>Here\'s the text from Doug on the meeting:</strong>\r\n<blockquote>If you want to contribute to the documentation please be sure to attend our meeting at 4pm EST on Tuesday the 21st and volunteer.  To join the meeting call The Alagad Conference Line:  218-486-2209, participant code: 2621114.\r\n</blockquote>\r\n<blockquote>\r\nIn this meeting I\'ll review our plan for the documentation process, the format of the documentation we\'re collecting at this point, and the schedule.  We\'ll then solicit one volunteers to write documentation for each section and two others to review and revise the documentation for each section.  There are actually only about nine features we need to document at this point and each is fairly concise. \r\n</blockquote>\r\n</p>\r\n<p>So if you\'ve wanted to be a part of the team, here\'s an easy way to make a difference. No open ended commitment here, all you have to do is learn a single feature and fill out a form on how to use it. Sounds like fun right?</p>\r\n\r\n<p>DW</p>','2009-04-20 08:00:00',NULL,'Volunteer-for-the-Model-Glue-Team','danwilson','modelglue',1,'',0,'',715,1,0),('F1FD54D1-FF1D-C52F-5EF93DA93A7CC19B','The State Of The Glue Part 2','<h3>The State Of The Glue</h3>\r\n<p>\r\nThis post is part of our periodic status updates on progress and upcoming work on the Model-Glue project. The last week has been very productive and we appreciate all the offers of help and support. We will be circling back to each and every one of you with opportunities where you can contribute to the framework you know and love.\r\n</p>\r\n<h3>Timeline</h3>\r\n<p>\r\nThe current timeline is to have the public beta out by\r\n<a target=\"_new\" href=\"http://cfobjective.com\">CF.Objective()</a>. This means in the short span of 2 weeks we\'ll have a documented, backwards compatible framework ready for production (we think). We\'ll allow a bake-in period (We have an internal target of 1 month) with the drop-dead final release date of <a target=\"_new\" href=\"http://cfunited\">CFUnited</a>.\r\n</p>\r\n<h3>Work Done Since Last Update</h3>\r\n<p>We\'ve made some really good progress in the last 3 weeks. A number of high-quality folks have stepped up to the plate and helped out. </p>\r\n<h4>Unit Tests</h4>\r\n<p><a href=\"http://mxunit.org/\" target=\"_new\">Marc Esher</a> stepped up to help us get the unit tests consolidated on to the MX Unit framework. He helped reorganize the testing structure and answered my inane questions about unit testing. <a href=\"http://firemoss.com\" target=\"_new\">Joe Rinehart</a> helped square away the tests for the EventContext, which were a little burly. The good news is, everything currently in SVN passes Unit Tests.</p>\r\n<h4>Patches/Bug Fixes</h4>\r\n<p>I\'ve been fixing some bugs in the core code. <a href=\"http://cfgrok.com\" target=\"_new\">Ezra Parker</a> submitted 3 patches to fix 3 issues as well. A big thanks to him. Here at Model Glue, while we love bug reports because we want to maintain high code quality, we love patches even more!</p>\r\n<h4>Trac</h4>\r\n<p>We now have a complete environment set up to manage Model-Glue. <a href=\"http://blog.simb.net/\" target=\"_new\">Simeon Bateman</a>, <a href=\"http://cfgrok.com\" target=\"_new\">Ezra Parker</a> and <a href=\"http://www.cfcode.net/blog/\" target=\"_new\">Chris Peterson</a> have been a big help in taking charge and making sure the Trac instance is filled with the documentation, has all the right Trac Plugins and works well. <a href=\"http://trac.model-glue.com\" target-\"_new\">Trac.Model-Glue.com</a> is live and is the central bug repository, code repository and documentation repository. </p>\r\n<p>The fine folks at <a href=\"http://alagad.com\">Alagad</a> are donating hosting and support for the Trac instances and we appreciate the time and resources they have put into the project. </p>\r\n<h4>ANT Script</h4>\r\n<p><a href=\"http://www.thecrumb.com/\" target=\"_new\">Jim Priest</a> has been reworking our deployment process and adding some fancy new ANT scripts into the mix. There will be a new ANT script for the ModelGlueApplicationTemplate, helping you jumpstart new projects in record time. Keep an eye open for that.</p>\r\n<h4>Video Tutorials</h4>\r\n<p><a href=\"http://buckyschwarz.net/site/blog/\"  target=\"_new\">Bucky Schwarz</a> is heading up the Video wing of Model Glue and has put together a really good process for Video Tutorials. If a picture is worth a thousand words, video is worth 10,000 words. We expect these video tutorials to help train ModelGluians in the ways of the glue. Check out the first  <a href=\"http://www.youtube.com/watch?v=LYn1_2bJ_HI&feature=channel_page\">Model Glue Video Tutorial on creating a new application</a>! More to come in the Video category!</p>\r\n<h4>Documentation</h4>\r\n<p>\r\n <a href=\"http://blog.coldfusionpowered.com/\" target=\"_new\">David Henry</a> and <a href=\"http://doughughes.net/\">Doug Hughes</a> have headed up the documentation project for ModelGlue:3. This is a big job with lots of coordination and it is moving right along. We appreciate all the excellent folks that offered to pitch in to document features and review documentation. Documentation was a must-have for the Beta and thanks to this effort, we are on track for the Beta release at <a target=\"_new\" href=\"http://cfobjective.com\">CF.Objective()</a>. Expect another post thanking each contributor once the work is done.\r\n</p>\r\n<p>Also, <a href=\"http://cfgrok.com\" target=\"_new\">Ezra Parker</a> (Man this guy has been a big help!) worked hard to get all the documentation and code samples in Trac formatted properly. This was especially important because we have the ability to print documentation pages and we certainly can\'t have code getting chopped off by the printer.</p>\r\n<h3>Work Left To Do</h3>\r\n<h4>MG:3 Documentation</h4>\r\n<p>This project is on track and on time.</p>\r\n<h4>Scaffolding</h4>\r\n<p>I\'m through the initial part of this. I\'m back from my vacation now so I\'ve gotta work on pleasing the clients. I\'ll hit this hard this weekend. We are on track and on time.</p>\r\n<h4>Example Applications</h4>\r\n<p>These are coming right along. We\'ll ship the beta with some, and add more as it makes sense.</p>','2009-04-29 09:05:00',NULL,'The-State-Of-The-Glue-Part-2','danwilson','modelglue',1,'',0,'',720,1,1),('36373DFC-FF1D-C52F-5E526707EBD3533B','Model Glue:Gesture - Beta Available','<h3>Beta Available Now</h3>\r\n<p>\r\n	The Model-Glue team is pleased to release the initial public beta of Model-Glue 3: Gesture, a return to Model-Glue\'s roots of dead-simple MVC+II development. Download the <a href=\"http://www.model-glue.com/downloads/modelglue_3_beta.zip\">Model-Glue 3: Gesture Beta</a> and give it a spin.  \r\n</p>\r\n<p>\r\n	There will be a Model-Glue Birds Of A Feather Session at CF.Objective() on Friday at 8PM (Skyway Suite AB on the 2nd floor of the Hyatt) to talk about the new Beta release, answer questions and get an idea of who wants to help contribute.\r\n</p>\r\n<h4>Documentation</h4>\r\n<p>\r\n	Model-Glue:Gesture documentation is located at <a href=\"http://docs.model-glue.com/\">http://docs.model-glue.com/</a> and all new features are well documented. \r\n</p>\r\n<h4>Bug Tracker</h4>\r\n<p>\r\n	There is probably a bug somewhere in the Beta code, so if you happen to find it, report it at <a href=\"http://docs.model-glue.com/newticket\">http://docs.model-glue.com/newticket</a> (might need to register). Bug reports are Appreciated. Submitted Test Cases or Patches are Golden.\r\n</p>\r\n<h4>Fun New Features</h4>\r\n<p>\r\n	<ul>\r\n		<li><a href=\"http://docs.model-glue.com/wiki/HowTos/SESUrls#SearchEngineSafeSESUrls\" >Search Engine Safe URLs</a></li>\r\n		<li><a href=\"http://docs.model-glue.com/wiki/HowTos/EventGeneration\" >Event Generation</a></li>\r\n		<li><a href=\"http://docs.model-glue.com/wiki/HowTos/Helpers\" >Helpers</a></li>\r\n		<li><a href=\"http://docs.model-glue.com/wiki/HowTos/HowToUseBeanInjection\" >Bean Injection</a></li>\r\n		<li><a href=\"http://docs.model-glue.com/wiki/HowTos/Formats\" >Formats</a></li>\r\n		<li><a href=\"http://docs.model-glue.com/wiki/HowTos/CachingLayer#HowToUseContentCaching\" >Content Caching</a></li>\r\n		<li><a href=\"http://docs.model-glue.com/wiki/HowTos/HowToUseTypedEvents#HowToUseTypedEvents\" >Typed Events</a></li>\r\n		<li><a href=\"http://docs.model-glue.com/wiki/HowTos/Remoting#HowToUseRemoting\" >Model-Glue Remoting (Flex + Ajax integration)</a></li>\r\n		<li><a href=\"http://docs.model-glue.com/wiki/HowTos/ApplicationCFCIntegration#Application.cfcIntegrationwithMG3\">Application.cfc Integration</a></li>\r\n	\r\n	</ul>\r\n</p>\r\n<h4>Most Valuable Contributors</h4>\r\n<p>\r\n	This beta release is on time and of high quality thanks to the contributions of various community members. In alphabetical order:\r\n	<ul>\r\n		<li><a href=\"http://alagad.com\">Alagad</a></li>\r\n		<li><a href=\"http://www.silverwareconsulting.com\" target=\"_new\">Bob Silverberg</a></li>\r\n		<li><a href=\"http://buckyschwarz.net/site/blog/\"  target=\"_new\">Bucky Schwarz</a></li>\r\n		<li><a href=\"http://www.cfcode.net/blog/\" target=\"_new\">Chris Peterson</a></li>\r\n		<li><a href=\"http://dan.skaggsfamily.ws/\" target=\"_new\">Dan Skaggs</a></li>\r\n		<li><a href=\"http://alagad.com\" target=\"_new\">Doug Hughes</a></li>\r\n		<li><a href=\"http://blog.coldfusionpowered.com/\" target=\"_new\">David Henry</a></li>\r\n		<li> <a href=\"http://cfgrok.com\" target=\"_new\">Ezra Parker</a></li>\r\n		<li><a href=\"http://www.web-relevant.com/blogs/cfobjective/index.cfm\" target=\"_new\">Jared Rypka-Hauer</a></li>\r\n		<li><a href=\"http://www.alagad.com/go/blog?createdBy=jchastain\" target=\"_new\">Jeff Chastain</a></li>\r\n		<li><a href=\"http://www.thecrumb.com/\" target=\"_new\">Jim Priest</a></li>\r\n		<li><a href=\"http://firemoss.com\" target=\"_new\">Joe Rinehart</a></li>\r\n		<li><a href=\"http://www.codfusion.com/blog/\" target=\"_new\">John Mason</a></li>\r\n		<li><a href=\"http://mxunit.org/\" target=\"_new\">Marc Esher</a></li>\r\n		<li><a href=\"http://www.compoundtheory.com/\" target=\"_new\">Mark Mandel</a></li>\r\n		<li><a href=\"http://www.markdrew.co.uk/blog/\" target=\"_new\">Mark Drew</a></li>\r\n		<li><a href=\"http://fancybread.com/\" target=\"_new\">Paul Marcotte</a></li>\r\n		<li><a href=\"http://pbell.com\" target=\"_new\">Peter Bell</a></li>\r\n		<li><a href=\"http://www.coldfusionjedi.com/\" target=\"_new\">Ray Camden</a></li>\r\n		<li><a href=\"http://www.boyzoid.com/blog/\" target=\"_new\">Scott Stroz</a></li>\r\n		<li><a href=\"http://blog.simb.net/\" target=\"_new\">Simeon Bateman</a></li>\r\n	</ul>\r\n</p>\r\n<p><em>My appologies to those whom I left off... we still love you!</em></p>\r\n<h4>Next Steps</h4>\r\n<p>\r\n	We are shaking-out the code for the next couple of weeks to make we\'ve found all the bitrot. After a month or so, we\'ll wrap up a Release Candidate for 3.0 with the final release coming before <a href=\"http://cfunited.com\">CFUnited</a>.\r\n</p>\r\n<h4>Coming Soon</h4>\r\n<p>\r\n<ul>\r\n	<li>More Video Tutorials</li>\r\n	<li>Releasing the Undocumented Custom Generation Patterns Feature</li>\r\n	<li>Example Applications</li>\r\n	<li>Web Tutorials</li>\r\n</ul>\r\n</p>\r\n<h4>Wanna jump in the fun and join the Model-Glue team?</h4>\r\n<p> Send me an email and tell me how you\'d like to help. We are always looking for smart people to help push MG to the next level</p>\r\n<p>Don\'t know how you want to help? No problem. Just tell me how much time you want to contribute and we can get you something fun to do.</p>','2009-05-12 14:56:00',NULL,'Model-GlueGesture--Beta-Available','danwilson','modelglue',1,'',0,'',1853,1,1),('5E43B92F-FF1D-C52F-5E9B428BFB9133E5','Model Glue:Gesture - In The News','<h3>Model-Glue Birds Of A Feather</h3>\r\n<p>Thanks to all who came to the BOF at CF.Objective() on Friday night. That was a lot of fun and generated a lot of good ideas. Look for posts on the Model-Glue mailing list to start nailing the features. Get your voice heard!!!</p>\r\n<p>Some nice folks have been writing on MG as of late. In no particular order...</p>\r\n<h3><a href=\"http://dan.skaggsfamily.ws/\">Dan Skaggs</a></h3>\r\n<p>Dan has a nice write up on his first few weeks with Model-Glue:Gesture. He explains some of the high level concepts with promise of more posts to come in the future. <a href=\"http://dan.skaggsfamily.ws/2009/05/20/modelglue-3-first-impressions-from-an-mg-newbie/\"> \r\nhttp://dan.skaggsfamily.ws/2009/05/20/modelglue-3-first-impressions-from-an-mg-newbie/</a>\r\n</p>\r\n<h3><a href=\"http://www.johnramon.com/\">John Ramon</a></h3>\r\n<p>John is going to test drive a few frameworks starting with Model-Glue. He plans to get an app up and running in the next week. <a href=\"http://www.johnramon.com/index.cfm/id/9/Model-Glue-installed-and-tested.\">http://www.johnramon.com/index.cfm/id/9/Model-Glue-installed-and-tested.</a>. <em>Pssst.... John, I\'ve got some tutorials here: <a href=\"http://www.nodans.com/page.cfm/Tutorials\">http://www.nodans.com/page.cfm/Tutorials</a> to help you get started.</p>\r\n<p>If I\'ve missed any recent news, drop us a line at model-glue@googlegroups.com and we\'ll post it here...</p>','2009-05-20 08:30:00',NULL,'Model-GlueGesture--In-The-News','danwilson','modelglue',1,'',0,'',737,1,1),('CF739411-FF1D-C52F-5E2D100C34A40BE4','Model Glue:Gesture - New Feature For Review - Default Event Types','<h3>Your Input Requested</h3>\r\n<p>\r\nAfter a <a href=\"http://groups.google.com/group/model-glue/browse_thread/thread/de1d1fb86b5c4111\" target=\"_blank\">deep discussion on the Model-Glue mailing list about Default Event Types</a> we\'ve come up with something that seems to work for everyone. <a href=\"http://datacurl.com/modelglue/ModelGlue-DefaultEventTypes.zip\">Here is a special build with an implementation of Default Event Types</a> for your review.</p>\r\n<h3>Explanation</h3>\r\n<p>As you know, Model-Glue Event Types allow classification of functionality and assignment to Event-Handlers. Event Types increase reusability, code-clarity and increase line-potency of Model-Glue applications. You can <a href=\"http://docs.model-glue.com/wiki/HowTos/HowToUseTypedEvents#HowToUseTypedEvents\" target=\"_blank\">read more on Model-Glue Event Types here</a>.</p>\r\n\r\n<h3>Where You Come In</h3>\r\n<p>We want to have a community review on this feature. Please take it for a test drive. Here is how you use it:</p>\r\n<code>\r\n<event-types>\r\n  <event-type name=\"MyDefaultEventType\">\r\n    <after>\r\n      <results>\r\n        <result do=\"template.main\" />\r\n      </results>\r\n    </after>\r\n  </event-type>\r\n\r\n  <event-type name=\"AnotherEventType\">\r\n    <after>\r\n      <results>\r\n        <result do=\"template.different\" />\r\n      </results>\r\n    </after>\r\n  </event-type>\r\n</event-types>\r\n\r\n<!-- declares the default event type -->\r\n<event-handlers defaultType=\"MyDefaultEventType\">\r\n<!-- inherits the defaultType -->\r\n  <event-handler name=\"page.1\">\r\n  </event-handler>\r\n\r\n<!-- overrides the defaultType and only gets AnotherEventType -->\r\n  <event-handler name=\"page.2\" type=\"AnotherEventType\">\r\n  </event-handler>\r\n\r\n<!-- removes the defaultType -->\r\n  <event-handler name=\"page.3\" type=\"\">\r\n  </event-handler>\r\n</event-handlers>\r\n\r\n<!-- no default type declared -->\r\n<event-handlers>\r\n<!-- apply event type individually  -->\r\n  <event-handler name=\"page.3\" type=\"AnotherEventType\">\r\n  </event-handler>\r\n</event-handlers>\r\n</code>\r\n\r\n<p>A special thanks to <a href=\"http://chris.m0nk3y.net/\" target=\"_blank\">Chris Blackwell</a> for providing a patch to enable this feature. Another thanks to <a href=\"http://www.alagad.com\" target=\"_blank\">Doug Hughes</a> for helping me get the XMLModuleLoader unit tests sorted out.</p>','2009-06-11 08:45:00',NULL,'Model-GlueGesture--New-Feature-For-Review--Default-Event-Types','danwilson','modelglue',1,'',0,'',694,1,1),('71C2CC25-FF1D-C52F-5E5BED4FB410035F','Model-Glue Updated for CF9 Beta','<p>To coincide with the big CF9 beta released today, Model-Glue:3 (code named gesture), and Model-Glue:2 (code named Unity) have been updated for CF9 compatibility. You can download the latest from <a href=\"/coldfusion.cfm\">the Model-Glue ColdFusion page</a>.</p>\r\n<p>All unit tests, passed, but if you happen to notice any strange issues please report them to the <a href=\"http://bugs.model-glue.com/report\">Model-Glue Bug Tracker</a>.</p>','2009-07-13 00:33:00',NULL,'ModelGlue-Updated-for-CF9-Beta','danwilson','modelglue',1,'',0,'',680,1,0),('042E6C21-FF1D-C52F-5ED53154BD2AB363','Capture the Essence of Model-Glue','After much requests by the Model-Glue fan base, we are pleased to announce a special product that captures the essence of Model-Glue.\r\n\r\nThat\'s right! For a limited time, limited quantities of <a href=\"http://www.perpetualkid.com/index.asp?PageAction=VIEWPROD&ProdID=1693\">Model Glue Cologne Spray</a> are available to the public letting you wear the alluring scent of Model-Glue.\r\n\r\nHow did we pack ColdSpring Integration, Custom Scaffold Generation, Request Formats, Event Generation, all in an event-driven, inversion of control, dependency injected, implicit invocated XML driven container? You\'ll have to put in an order and see for yourself.\r\n\r\n<img src=\"images/FRAG-0058-37.jpg\">','2009-08-10 07:55:00',NULL,'Capture-the-Essence-of-ModelGlue','danwilson','modelglue',1,'',0,'',557,1,1),('07441367-FF1D-C52F-5E91404607E0EE55','Model Glue:Gesture - Final Release Available','Mid-Monday, we made available the final release for Model-Glue 3. This release has been tagged in SVN, for future reference. A new zip file is available at <a href=\"http://model-glue.com/coldfusion.cfm\">the Model Glue ColdFusion page</a> and the latest code is in trunk, as always.\r\n\r\nWe\'ll have a Birds of a Feather session at CFUnited on 8/12/2009 at 8:30 PM in the aptly named Matrix room. We\'ll discuss new features, the upcoming road map and open the project to community members. If you aren\'t at CFUnited, you can still apply to be a community member by commenting on this blog post.\r\n\r\nAfter CFUnited is over, we\'ll be doing a series of presentations on how to use MG 3 most effectively and will also work on a new set of jump start tutorials.\r\n\r\nFor now, we\'ll be at the conference, enjoying the feeling from getting MG out the door and in the hands of the waiting public.\r\n\r\n--Dan','2009-08-11 10:17:00',NULL,'Model-GlueGesture--Final-Release-Available','danwilson','modelglue',1,'',0,'',622,1,0),('F64EBA8B-FF1D-C52F-5EA60F25643510AF','Model-Glue 3 Features Video','In early September, Model-Glue 3 made it\'s video debut on the ColdFusion Meetup. We discussed how to use the top features in Model-Glue 3 to build out an application. \r\n\r\nIt was a lot to cram into an hour, but since it is video, you can stop the screen to read the code on your leisure.\r\nA big thanks to Charlie Arehart for continuing the very popular CFMeetup, the only user group with 20,000  members.\r\n\r\n<a href=\"http://experts.na3.acrobat.com/p27959202/\">Watch Model-Glue 3 for fun and profit</a>.','2009-09-28 10:19:00',NULL,'ModelGlue-3-Features-Video','danwilson','modelglue',1,'',0,'',344,1,1),('05F16F50-FF1D-C52F-5EB48D87465C9842','Model Glue:Gesture - Version 3.1 Available','Model-Glue: Gesture Version 3.1 was released today. The 3.1 release is largely a maintenance release and fixes several issues:\r\n\r\n<ul>\r\n  <li>Fixed issue where event types did not respect multiple XML blocks for requestformat functionality.</li>\r\n  <li>Added in try - catches around the file operations so that sandboxed servers will work, preventing sandbox security exceptions. Thanks Chris Blackwell</li>\r\n  <li>Seriously fixed <a href=\"http://docs.model-glue.com/ticket/349\">http://docs.model-glue.com/ticket/349</a>  this time. (Bug with SesUrlManager.cfc due to Apache and IIS reporting cgi params differently)</li>\r\n  <li>Removed potential recursion in helper loader functionality and also removed useless cfdump when a helper is attempted to be included but doesn\'t have a cfc or cfm extension. Thanks Ezra Parker</li>\r\n</ul>\r\n\r\n<p>As always, the very latest is in SVN and the <a href=\"http://www.model-glue.com/coldfusion.cfm\">Model-Glue Website</a> has been updated.</p>','2009-09-29 09:12:00',NULL,'Model-GlueGesture--Version-31-Available','danwilson','modelglue',1,'',0,'',368,1,1),('353F24CE-FF1D-C52F-5EE62F39FACAD4C9','Ask Model-Glue: Beans Scope','<em><a href=\"http://www.johncblandii.com\">John C. Bland</a> just <a href=\"http://groups.google.com/group/model-glue/browse_thread/thread/2dc5d1efb84d314a\">wrote in with a question</a> on the <a href=\"http://groups.google.com/group/model-glue/\">Model-Glue mailing list</a> asking about Event types. His code sample gave us an opportunity to share a new Model-Glue 3 feature. This information could be useful to others so let\'s eavesdrop on the conversation...</em>\r\n\r\nHi , John, that looks pretty good. You are definitely on the right track with your event type work.\r\n \r\nYour question is actually a very timely one and gives us an opportunity to share a new feature of Model-Glue 3. \r\nSince you are interested in short cuts and in using MG3 most effectively, let\'s talk about the newly added Beans scope.\r\n\r\nIn your code sample, you defined a configuration bean in ColdSpring, always a good thing, and retrieved it from ColdSpring with the syntax getModelGlue().getBean(\"urlConfig\").\r\n\r\nNothing is wrong with that syntax at all, and your code will work fine. However, there is an even easier way to get beans from ColdSpring.\r\n MG3 introduces the concept of the Beans scope that is not only easier, but it also leaves good documentation of your application as well.\r\n\r\nConsider this code:\r\n<code>\r\n<cffunction name=\"SetPageConfigs\" access=\"public\" returntype=\"void\" output=\"false\">\r\n 	<cfset arguments.event.setValue(\"urlConfig\", getModelGlue().getBean(\"urlConfig\")) />\r\n</cffunction>\r\n</code>\r\n\r\nThe urlConfig object is retrieved from ColdSpring through the getModelGlue().getBean() declaration. \r\nWhat is nice about this is it makes accessing ColdSpring managed objects very easy. \r\nHowever, it sort of makes it difficult to find all the the Coldspring managed beans in a specific controller. \r\nUsing Find tools to scan source code for references is not really the very best thing because other developer may have chosen a name that isn\'t obvious or has been abstracted for some reason.\r\nModel-Glue 3 introduces the notion of a \'beans\' scope.  The Beans scope is a controller-wide scope containing all the ColdSpring managed beans for a specific controller. Here is a short sample:\r\n\r\n<code>\r\n<cfcomponent extends=\"ModelGlue.gesture.controller.Controller\" output=\"false\" \r\n			beans=\"urlConfig,UserService\">\r\n\r\n	<cffunction name=\"doSetUp\" output=\"false\" access=\"public\" returntype=\"void\" hint=\"I perform global setup stuff for each request\">\r\n		<cfargument name=\"event\" type=\"any\">\r\n		<cfset arguments.event.setValue(\"urlConfig\", beans.urlConfig ) />\r\n	</cffunction>\r\n...\r\n</code>\r\n\r\nSee the beans attribute of the cfcomponent tag? \r\nThis is a comma separated list of all the ColdSpring managed beans we need in this controller. \r\nInside the doSetup() method, we use the prefix \'beans\' to get at the specific object:\r\n<code>\r\nbeans.xxxxx\r\n</code>\r\n\r\nOne nice effect of this technique is less typing on the keyboard. \r\n\r\nMore importantly, we now have a bit of <strong>auto-documentation</strong> on exactly which ColdSpring managed beans are used by this controller. \r\nThis documentation is at the very top of the file. Now, when you maintain your code, or code from other developers, you can simply read the beans attribute in your controller to find out which beans are in use, rather than scanning or reading lots of code for that information. Nice huh? \r\n\r\n\r\nModel-Glue is all about building applications quicker and reducing maintenance costs and I\'m sure you\'ll agree the Beans scope makes sense on both fronts. \r\n\r\nKeep sniffing the \'Glue','2009-10-08 13:34:00',NULL,'Ask-ModelGlue-Beans-Scope','danwilson','modelglue',1,'',0,'',268,1,1),('5090251A-FF1D-C52F-5E873180B1C456F4','Free Model-Glue 3 Training','How much would you pay for Model-Glue training? What about Up To Date, State of the Art, Awesome Model-Glue training?\r\n\r\na) $3,000?\r\n\r\nb) $5,000?\r\n\r\nc) $10,000?\r\n\r\nd) $1,000,000\r\n\r\n(<em>If you checked \'d\', please call <a href=\"http://nodans.com\">Dan Wilson</a>. Immediately!</em>)\r\n\r\nFor a limited time and with limited availability, you can have a whole day worth of timely and important Model-Glue 3 training for free. Yes, that is right, an entire day of Model-Glue 3 training, personally delivered for zero cost to you.\r\n\r\nTeam Model-Glue is delivering training at <a href=\"http://bflex.info/bfusion-2009\">BFusion 09</a> this year and you are invited to take part. Come one, come all, the first 500 people get a free copy of Model-Glue 3. The authors will be there to individually sign each copy. \r\n\r\nWhile we are joking about the million dollars (Editors Note: no, we aren\'t), we are serious about the free training. <a href=\"http://webdb.iu.edu/uitsfs/scripts/training/bfregistration.cfm\">Sign up for BFusion today!</a>','2009-10-13 20:59:00',NULL,'Free-ModelGlue-3-Training','danwilson','modelglue',1,'',0,'',281,1,1),('5495D240-FF1D-C52F-5E863B2323246BB2','Model-Glue Training In Your Town','We\'ve been knocking around the idea of a roving Model Glue training center. We\'ve already done this in Claremont, CA to members of the Inland Empire ColdFusion User Group and folks got a lot out of it. That particular course was done over a single day, to prove out the material and to be useful to the IECFUG. \r\n\r\nFor the next phase, the vision would be to travel to an area and run a practical, intense training in OO and Model-Glue 3 over a weekend.\r\n\r\nWe want to take a shot out there and see which parts of the country were interested in being first in having this training. So if you think 4 - 8 people would be interested in hanging out for a weekend and learning some good OO and Model Glue stuff, leave a comment on this post.\r\n\r\nWe\'ll take a week or so to get a plan together and then follow back up with more details.','2009-10-14 15:34:00',NULL,'ModelGlue-Training-In-Your-Town','danwilson','modelglue',1,'',0,'',279,1,1);
/*!40000 ALTER TABLE `tblblogentries` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `tblblogentriescategories`
--

DROP TABLE IF EXISTS `tblblogentriescategories`;
CREATE TABLE `tblblogentriescategories` (
  `categoryidfk` varchar(35) character set latin1 default NULL,
  `entryidfk` varchar(35) character set latin1 default NULL,
  KEY `blogEntriesCategories_entryid` (`entryidfk`,`categoryidfk`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `tblblogentriescategories`
--

LOCK TABLES `tblblogentriescategories` WRITE;
/*!40000 ALTER TABLE `tblblogentriescategories` DISABLE KEYS */;
INSERT INTO `tblblogentriescategories` VALUES ('6583E7D5-3048-55C9-43407FFC14CFD35A','02673E26-3048-55C9-431F13FA5D86AD7C'),('7D83CB70-FF1D-C52F-5E431175162E374D','029D02C8-FF1D-C52F-5EC92E98F69D6A47'),('7D83CB70-FF1D-C52F-5E431175162E374D','042E6C21-FF1D-C52F-5ED53154BD2AB363'),('6843382C-3048-55C9-4391FBF0A70B59F8','05F16F50-FF1D-C52F-5EB48D87465C9842'),('7D83CB70-FF1D-C52F-5E431175162E374D','07441367-FF1D-C52F-5E91404607E0EE55'),('6583E7D5-3048-55C9-43407FFC14CFD35A','08F96619-E081-2BAC-690CA0897148ACFB'),('6843382C-3048-55C9-4391FBF0A70B59F8','09C7FDF4-FF1D-C52F-5E4119A115F987C9'),('6583E7D5-3048-55C9-43407FFC14CFD35A','0FBD76D2-3048-55C9-43D34471520B4215'),('6583E7D5-3048-55C9-43407FFC14CFD35A','124D12F7-3048-55C9-43D3EC6C3F278706'),('6583E7D5-3048-55C9-43407FFC14CFD35A','13E2A054-3048-55C9-43FB4BA880BC4897'),('6583E7D5-3048-55C9-43407FFC14CFD35A','15C8BDE9-E081-2BAC-69B0F1578918A319'),('6583E7D5-3048-55C9-43407FFC14CFD35A','1CCBF09B-E081-2BAC-696368D717030E98'),('6583E7D5-3048-55C9-43407FFC14CFD35A','1D158585-E081-2BAC-6952C5EF5FD7655E'),('6583E7D5-3048-55C9-43407FFC14CFD35A','1EA76969-E081-2BAC-695D63CAE46CD2A6'),('6583E7D5-3048-55C9-43407FFC14CFD35A','207096B8-E081-2BAC-697F878438AD8E6A'),('6583E7D5-3048-55C9-43407FFC14CFD35A','2BA444B5-E081-2BAC-69E120BEC37C094E'),('6583E7D5-3048-55C9-43407FFC14CFD35A','311324AD-3048-55C9-4377B3138D4DEC2D'),('6583E7D5-3048-55C9-43407FFC14CFD35A','3160D4A0-3048-55C9-435A7958A61D02E5'),('6583E7D5-3048-55C9-43407FFC14CFD35A','31730F00-E081-2BAC-699C2027E7CC02EB'),('6583E7D5-3048-55C9-43407FFC14CFD35A','34143FF0-E081-2BAC-690DE70A107AB3BF'),('3537B38C-FF1D-C52F-5EF4BF9E7EAFA7DC','353F24CE-FF1D-C52F-5EE62F39FACAD4C9'),('7D83CB70-FF1D-C52F-5E431175162E374D','36373DFC-FF1D-C52F-5E526707EBD3533B'),('7D83CB70-FF1D-C52F-5E431175162E374D','381B346F-FF1D-C52F-5E8E5A3BC10320E9'),('6843382C-3048-55C9-4391FBF0A70B59F8','3904F080-3048-55C9-43CFAEC2FDE30FD0'),('6583E7D5-3048-55C9-43407FFC14CFD35A','3A45A30C-E081-2BAC-69C0762A5EB63B63'),('6583E7D5-3048-55C9-43407FFC14CFD35A','3CF0C03F-E081-2BAC-695F90F679DE6E20'),('6583E7D5-3048-55C9-43407FFC14CFD35A','3D094697-E081-2BAC-6954375379A8F68A'),('6583E7D5-3048-55C9-43407FFC14CFD35A','3DE80F19-E081-2BAC-69D0C4D91DB254DE'),('6843382C-3048-55C9-4391FBF0A70B59F8','3E6DE3D4-FF1D-C52F-5E816DF8AF08B5BA'),('6583E7D5-3048-55C9-43407FFC14CFD35A','410694A6-E081-2BAC-6905C454FAA2E9EE'),('6583E7D5-3048-55C9-43407FFC14CFD35A','42A3AD9F-E081-2BAC-69067DDB45FF51C2'),('6843382C-3048-55C9-4391FBF0A70B59F8','42BC0C76-FF1D-C52F-5ECCE5C5A593166E'),('7D83CB70-FF1D-C52F-5E431175162E374D','42BC0C76-FF1D-C52F-5ECCE5C5A593166E'),('6843382C-3048-55C9-4391FBF0A70B59F8','42D6A106-FF1D-C52F-5EBBDDAC2DCEF862'),('6583E7D5-3048-55C9-43407FFC14CFD35A','445B5A72-3048-55C9-4318398DC6AD99E5'),('6583E7D5-3048-55C9-43407FFC14CFD35A','445ECA4D-E081-2BAC-691FD365ADF2245B'),('7D83CB70-FF1D-C52F-5E431175162E374D','472C014B-FF1D-C52F-5E92C28DFB8C7700'),('6583E7D5-3048-55C9-43407FFC14CFD35A','49CAFDF4-E081-2BAC-69AD5772ABCF584B'),('6583E7D5-3048-55C9-43407FFC14CFD35A','4A09E05F-E081-2BAC-698C0D1F8CBD8D35'),('6583E7D5-3048-55C9-43407FFC14CFD35A','4C397788-E081-2BAC-69479FD23D006A70'),('6583E7D5-3048-55C9-43407FFC14CFD35A','4C39E4C9-E081-2BAC-69498F5455CC717B'),('6583E7D5-3048-55C9-43407FFC14CFD35A','4C3A3569-E081-2BAC-69BD8209DCF1BF03'),('6583E7D5-3048-55C9-43407FFC14CFD35A','4D926BB3-E081-2BAC-6929AA58D80554E0'),('6583E7D5-3048-55C9-43407FFC14CFD35A','4EBD0869-E081-2BAC-6900B23F7FEAD1E7'),('6583E7D5-3048-55C9-43407FFC14CFD35A','4EE2904F-E081-2BAC-692C9CBE75675886'),('6583E7D5-3048-55C9-43407FFC14CFD35A','4F639EA7-E081-2BAC-69DAE2E0C00C8329'),('7D83CB70-FF1D-C52F-5E431175162E374D','4FC75C88-FF1D-C52F-5E9C1E88538D475F'),('6843382C-3048-55C9-4391FBF0A70B59F8','4FCB9312-FF1D-C52F-5E9252DCC7523BE7'),('6583E7D5-3048-55C9-43407FFC14CFD35A','5063FCD8-E081-2BAC-69F650B9115CAFB8'),('6843382C-3048-55C9-4391FBF0A70B59F8','5090251A-FF1D-C52F-5E873180B1C456F4'),('6583E7D5-3048-55C9-43407FFC14CFD35A','50BF3AFC-E081-2BAC-69CF3F463A104CB9'),('6583E7D5-3048-55C9-43407FFC14CFD35A','53E97CDF-E081-2BAC-696744608764CD81'),('6583E7D5-3048-55C9-43407FFC14CFD35A','54237B7E-E081-2BAC-69C799B289B51E96'),('7D83CB70-FF1D-C52F-5E431175162E374D','5495D240-FF1D-C52F-5E863B2323246BB2'),('6583E7D5-3048-55C9-43407FFC14CFD35A','54C48E68-3048-55C9-432EB036E5A6EF6C'),('6583E7D5-3048-55C9-43407FFC14CFD35A','561B2C52-3048-55C9-436B0BE70D8C72A7'),('6583E7D5-3048-55C9-43407FFC14CFD35A','569BBE85-E081-2BAC-69472132A23FAF5D'),('6583E7D5-3048-55C9-43407FFC14CFD35A','58BE8EE3-3048-55C9-43CB3D1B7A3EF0A8'),('6583E7D5-3048-55C9-43407FFC14CFD35A','58C1CC0C-3048-55C9-4310C06A39AA2293'),('6583E7D5-3048-55C9-43407FFC14CFD35A','59656EF9-3048-55C9-43C6E28E70DAC214'),('6583E7D5-3048-55C9-43407FFC14CFD35A','598B2CCE-E081-2BAC-698011AA5C938073'),('7D83CB70-FF1D-C52F-5E431175162E374D','5E43B92F-FF1D-C52F-5E9B428BFB9133E5'),('6583E7D5-3048-55C9-43407FFC14CFD35A','5EAEAC09-3048-55C9-43F13840D9F8CA2D'),('6583E7D5-3048-55C9-43407FFC14CFD35A','6016CAA4-E081-2BAC-692090F7DD555441'),('6583E7D5-3048-55C9-43407FFC14CFD35A','6186B5ED-3048-55C9-4352426625D9CAB4'),('6583E7D5-3048-55C9-43407FFC14CFD35A','624498CA-E081-2BAC-693F33C7F0C3B44B'),('7D83CB70-FF1D-C52F-5E431175162E374D','6727C5E7-FF1D-C52F-5E41B73A3497676F'),('6583E7D5-3048-55C9-43407FFC14CFD35A','676DF08F-3048-55C9-430761946EED371A'),('6843382C-3048-55C9-4391FBF0A70B59F8','684337ED-3048-55C9-43DBC348C4552B15'),('6583E7D5-3048-55C9-43407FFC14CFD35A','69ECCA66-E081-2BAC-69E0757132F92911'),('6583E7D5-3048-55C9-43407FFC14CFD35A','69F11F97-E081-2BAC-69E9FE0C793E5BA2'),('6D9943C0-3048-55C9-436869CC13498D56','6D9943A1-3048-55C9-4307503EDF863A76'),('7D83CB70-FF1D-C52F-5E431175162E374D','7144FCD1-FF1D-C52F-5EBDD7B13A0DA7AB'),('7D83CB70-FF1D-C52F-5E431175162E374D','71C2CC25-FF1D-C52F-5E5BED4FB410035F'),('6583E7D5-3048-55C9-43407FFC14CFD35A','783DDD61-E081-2BAC-69B189EF8B17AF8A'),('7D83CB70-FF1D-C52F-5E431175162E374D','7D83B623-FF1D-C52F-5E8C55A8DB3EDDB2'),('6583E7D5-3048-55C9-43407FFC14CFD35A','8418221B-E081-2BAC-6993D521C32F4D19'),('6583E7D5-3048-55C9-43407FFC14CFD35A','8426DAE8-E081-2BAC-69D4727AC6BA1D24'),('6843382C-3048-55C9-4391FBF0A70B59F8','843C8072-3048-55C9-43C98421A5A14110'),('6583E7D5-3048-55C9-43407FFC14CFD35A','8A10B34B-3048-55C9-433325640616CCD6'),('6583E7D5-3048-55C9-43407FFC14CFD35A','8C2A77A4-3048-55C9-438E4AA45A86BD76'),('6583E7D5-3048-55C9-43407FFC14CFD35A','8D531C0E-3048-55C9-431EB0D750B46537'),('6583E7D5-3048-55C9-43407FFC14CFD35A','8F179144-E081-2BAC-699C02422C813CE7'),('6583E7D5-3048-55C9-43407FFC14CFD35A','90ADA076-E081-2BAC-69972DAC3E55170C'),('6583E7D5-3048-55C9-43407FFC14CFD35A','91161DF4-3048-55C9-434A9EEFD98EE813'),('6583E7D5-3048-55C9-43407FFC14CFD35A','91C70719-E081-2BAC-69F3ADAFD3CF6FCA'),('6583E7D5-3048-55C9-43407FFC14CFD35A','936180AD-E081-2BAC-69300E96DBA20A14'),('6583E7D5-3048-55C9-43407FFC14CFD35A','955F4D01-E081-2BAC-6991EFC5ADE4A84D'),('6583E7D5-3048-55C9-43407FFC14CFD35A','977D8D0D-E081-2BAC-69CFB4FFF63859E9'),('6583E7D5-3048-55C9-43407FFC14CFD35A','9793B3F3-E081-2BAC-691EFBAFAF6A9EFD'),('6583E7D5-3048-55C9-43407FFC14CFD35A','9BCFC8F6-E081-2BAC-6951B6BCB4390B31'),('9BE768A4-3048-55C9-435EB0DC3A56D373','9BF591A4-3048-55C9-439E81B1F8BE76C0'),('6583E7D5-3048-55C9-43407FFC14CFD35A','9C517B8C-E081-2BAC-698DCBFA66161BCD'),('6583E7D5-3048-55C9-43407FFC14CFD35A','9C794B8E-E081-2BAC-6984D1E4FFD0FAAA'),('6583E7D5-3048-55C9-43407FFC14CFD35A','9D495E59-E081-2BAC-693525110654574B'),('6583E7D5-3048-55C9-43407FFC14CFD35A','9DBCE5E6-E081-2BAC-6960BA8F841C859E'),('6583E7D5-3048-55C9-43407FFC14CFD35A','9FDE946E-E081-2BAC-6920474ABE3C0636'),('6583E7D5-3048-55C9-43407FFC14CFD35A','A04826B0-E081-2BAC-695DDA41C15CE831'),('6583E7D5-3048-55C9-43407FFC14CFD35A','A17AFA6B-E081-2BAC-6920919F260AFC09'),('6583E7D5-3048-55C9-43407FFC14CFD35A','A18201E7-E081-2BAC-6989695D28693F7C'),('6583E7D5-3048-55C9-43407FFC14CFD35A','A834D0C7-E081-2BAC-6970E080DECA28ED'),('6583E7D5-3048-55C9-43407FFC14CFD35A','AA5D506E-3048-55C9-43FA875EB499C53D'),('6583E7D5-3048-55C9-43407FFC14CFD35A','AB49D4A4-3048-55C9-43DFA73D326B1014'),('6583E7D5-3048-55C9-43407FFC14CFD35A','AC2976FF-E081-2BAC-69C2389A3DB77FA3'),('6583E7D5-3048-55C9-43407FFC14CFD35A','ADE8C1E9-3048-55C9-430ECCB1DA23716F'),('6583E7D5-3048-55C9-43407FFC14CFD35A','B68CC875-E081-2BAC-69C3E87F2B5E565F'),('6583E7D5-3048-55C9-43407FFC14CFD35A','B7D4972F-3048-55C9-43EBC879822F7947'),('6583E7D5-3048-55C9-43407FFC14CFD35A','B9829385-3048-55C9-430D3F873479C35B'),('6583E7D5-3048-55C9-43407FFC14CFD35A','BA6B158E-3048-55C9-437C2E41D40C095F'),('6583E7D5-3048-55C9-43407FFC14CFD35A','BAC5368B-E081-2BAC-69D87E2D595AA324'),('6583E7D5-3048-55C9-43407FFC14CFD35A','BAF3BA76-3048-55C9-43041C8DC7686B09'),('6583E7D5-3048-55C9-43407FFC14CFD35A','BC62A7BA-E081-2BAC-690DA2E20D609568'),('6583E7D5-3048-55C9-43407FFC14CFD35A','BD86A966-E081-2BAC-69D4B83103CB20C4'),('6583E7D5-3048-55C9-43407FFC14CFD35A','BDB9AE90-E081-2BAC-69205A7F442F302D'),('6583E7D5-3048-55C9-43407FFC14CFD35A','BF018821-E081-2BAC-69A8B83FD77B055E'),('BF420DF9-3048-55C9-43273599C9536D70','BF420D3D-3048-55C9-432FCEB50C80113D'),('7D83CB70-FF1D-C52F-5E431175162E374D','C0397C2C-FF1D-C52F-5E30638692FC591A'),('6583E7D5-3048-55C9-43407FFC14CFD35A','C16E8B2D-E081-2BAC-69A405B4EBEB1F85'),('6583E7D5-3048-55C9-43407FFC14CFD35A','C40EF7D4-3048-55C9-43B89F99A0DACE98'),('6583E7D5-3048-55C9-43407FFC14CFD35A','C4BEEFB6-E081-2BAC-69B14A82EAEDA764'),('6583E7D5-3048-55C9-43407FFC14CFD35A','C7862997-3048-55C9-43824F7203AC7B01'),('6583E7D5-3048-55C9-43407FFC14CFD35A','C902C8BA-3048-55C9-431265B0B9CEA68E'),('6583E7D5-3048-55C9-43407FFC14CFD35A','CCF01CAF-3048-55C9-4387B311F1C6341C'),('6843382C-3048-55C9-4391FBF0A70B59F8','CE42684D-FF1D-C52F-5ECCA303BD199548'),('6583E7D5-3048-55C9-43407FFC14CFD35A','CE554A2E-3048-55C9-43C2B31B3A98E644'),('7D83CB70-FF1D-C52F-5E431175162E374D','CF739411-FF1D-C52F-5E2D100C34A40BE4'),('6583E7D5-3048-55C9-43407FFC14CFD35A','CF77083E-E081-2BAC-69CA121D41B63FFA'),('6583E7D5-3048-55C9-43407FFC14CFD35A','CFF76647-3048-55C9-433C32A00F8BD24A'),('6583E7D5-3048-55C9-43407FFC14CFD35A','D105FB86-E081-2BAC-69B35EB35F1F3C63'),('6583E7D5-3048-55C9-43407FFC14CFD35A','D2D1A861-E081-2BAC-691F2582E55234DC'),('6583E7D5-3048-55C9-43407FFC14CFD35A','D2DCF7E3-E081-2BAC-693632310D4FE1BF'),('6583E7D5-3048-55C9-43407FFC14CFD35A','D48816E7-E081-2BAC-6930A3D94A342104'),('6583E7D5-3048-55C9-43407FFC14CFD35A','D5815F2A-3048-55C9-432B8F55F7D81A87'),('6583E7D5-3048-55C9-43407FFC14CFD35A','D5E31096-E081-2BAC-69B8242914F18217'),('6583E7D5-3048-55C9-43407FFC14CFD35A','D87EDD28-E081-2BAC-69B923575744C5F4'),('6583E7D5-3048-55C9-43407FFC14CFD35A','D9FDADAE-E081-2BAC-695CE3F162D125C1'),('6583E7D5-3048-55C9-43407FFC14CFD35A','DAEA417F-E081-2BAC-69932A80B552E293'),('6583E7D5-3048-55C9-43407FFC14CFD35A','DC113DB1-3048-55C9-434D825B0D4926F0'),('6583E7D5-3048-55C9-43407FFC14CFD35A','E2F5A956-E081-2BAC-6961CBAF89E80084'),('7D83CB70-FF1D-C52F-5E431175162E374D','E31206E4-FF1D-C52F-5E21454438393D52'),('6583E7D5-3048-55C9-43407FFC14CFD35A','E3D2EDA3-3048-55C9-4320201175E27201'),('6583E7D5-3048-55C9-43407FFC14CFD35A','E3EADAAA-E081-2BAC-6970957D1D8EED90'),('6583E7D5-3048-55C9-43407FFC14CFD35A','E9F8A345-E081-2BAC-690ECCDB489FCAAB'),('6583E7D5-3048-55C9-43407FFC14CFD35A','EC7BC686-E081-2BAC-698A3825444067CC'),('6583E7D5-3048-55C9-43407FFC14CFD35A','EEE69FAB-E081-2BAC-697C9AF268F26FA2'),('6583E7D5-3048-55C9-43407FFC14CFD35A','EF99C7F7-E081-2BAC-69CF83D8DF0591F0'),('6583E7D5-3048-55C9-43407FFC14CFD35A','EFE03DC9-E081-2BAC-69CD275B0705E0D0'),('7D83CB70-FF1D-C52F-5E431175162E374D','F1FD54D1-FF1D-C52F-5EF93DA93A7CC19B'),('6583E7D5-3048-55C9-43407FFC14CFD35A','F2BFB7B2-3048-55C9-4329FCB6EE13BAB3'),('6583E7D5-3048-55C9-43407FFC14CFD35A','F5EC8C50-E081-2BAC-69161D57E9D985F8'),('6583E7D5-3048-55C9-43407FFC14CFD35A','F61EC92B-E081-2BAC-69B6C9DEE17C99C1'),('6843382C-3048-55C9-4391FBF0A70B59F8','F64EBA8B-FF1D-C52F-5EA60F25643510AF'),('BF420DF9-3048-55C9-43273599C9536D70','F7A61EDF-FF1D-C52F-5E311679747B7AD8'),('6583E7D5-3048-55C9-43407FFC14CFD35A','F7ED5FFA-3048-55C9-43D6BC0605171052'),('6583E7D5-3048-55C9-43407FFC14CFD35A','FA2A2669-E081-2BAC-6979D3478AEDC219'),('6843382C-3048-55C9-4391FBF0A70B59F8','FAEEEC18-3048-55C9-43899FD3BE56C97D'),('6583E7D5-3048-55C9-43407FFC14CFD35A','FAF5054B-3048-55C9-43FFF2112D63ADAE'),('6583E7D5-3048-55C9-43407FFC14CFD35A','FB980E37-3048-55C9-43319854C6D8073D');
/*!40000 ALTER TABLE `tblblogentriescategories` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `tblblogentriesrelated`
--

DROP TABLE IF EXISTS `tblblogentriesrelated`;
CREATE TABLE `tblblogentriesrelated` (
  `id` int(11) default NULL,
  `entryid` varchar(35) NOT NULL default '',
  `relatedid` varchar(35) default '',
  KEY `blogEntriesRelated_entryid` (`entryid`,`relatedid`),
  KEY `blogEntriesRelated_relatedid` (`relatedid`,`entryid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `tblblogentriesrelated`
--

LOCK TABLES `tblblogentriesrelated` WRITE;
/*!40000 ALTER TABLE `tblblogentriesrelated` DISABLE KEYS */;
INSERT INTO `tblblogentriesrelated` VALUES (NULL,'42BC0C76-FF1D-C52F-5ECCE5C5A593166E','7144FCD1-FF1D-C52F-5EBDD7B13A0DA7AB'),(NULL,'42BC0C76-FF1D-C52F-5ECCE5C5A593166E','381B346F-FF1D-C52F-5E8E5A3BC10320E9'),(NULL,'42BC0C76-FF1D-C52F-5ECCE5C5A593166E','7D83B623-FF1D-C52F-5E8C55A8DB3EDDB2'),(NULL,'6727C5E7-FF1D-C52F-5E41B73A3497676F','42BC0C76-FF1D-C52F-5ECCE5C5A593166E'),(NULL,'C0397C2C-FF1D-C52F-5E30638692FC591A','6727C5E7-FF1D-C52F-5E41B73A3497676F'),(NULL,'C0397C2C-FF1D-C52F-5E30638692FC591A','029D02C8-FF1D-C52F-5EC92E98F69D6A47'),(NULL,'C0397C2C-FF1D-C52F-5E30638692FC591A','6727C5E7-FF1D-C52F-5E41B73A3497676F'),(NULL,'C0397C2C-FF1D-C52F-5E30638692FC591A','029D02C8-FF1D-C52F-5EC92E98F69D6A47'),(NULL,'F1FD54D1-FF1D-C52F-5EF93DA93A7CC19B','6727C5E7-FF1D-C52F-5E41B73A3497676F'),(NULL,'F1FD54D1-FF1D-C52F-5EF93DA93A7CC19B','C0397C2C-FF1D-C52F-5E30638692FC591A'),(NULL,'E31206E4-FF1D-C52F-5E21454438393D52','71C2CC25-FF1D-C52F-5E5BED4FB410035F'),(NULL,'E31206E4-FF1D-C52F-5E21454438393D52','CF739411-FF1D-C52F-5E2D100C34A40BE4'),(NULL,'E31206E4-FF1D-C52F-5E21454438393D52','5E43B92F-FF1D-C52F-5E9B428BFB9133E5'),(NULL,'E31206E4-FF1D-C52F-5E21454438393D52','36373DFC-FF1D-C52F-5E526707EBD3533B'),(NULL,'E31206E4-FF1D-C52F-5E21454438393D52','F1FD54D1-FF1D-C52F-5EF93DA93A7CC19B'),(NULL,'E31206E4-FF1D-C52F-5E21454438393D52','C0397C2C-FF1D-C52F-5E30638692FC591A'),(NULL,'E31206E4-FF1D-C52F-5E21454438393D52','6727C5E7-FF1D-C52F-5E41B73A3497676F');
/*!40000 ALTER TABLE `tblblogentriesrelated` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `tblblogpages`
--

DROP TABLE IF EXISTS `tblblogpages`;
CREATE TABLE `tblblogpages` (
  `id` varchar(35) NOT NULL default '',
  `title` varchar(255) NOT NULL default '',
  `alias` varchar(100) NOT NULL default '',
  `body` text NOT NULL,
  `blog` varchar(50) default NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `tblblogpages`
--

LOCK TABLES `tblblogpages` WRITE;
/*!40000 ALTER TABLE `tblblogpages` DISABLE KEYS */;
/*!40000 ALTER TABLE `tblblogpages` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `tblblogsearchstats`
--

DROP TABLE IF EXISTS `tblblogsearchstats`;
CREATE TABLE `tblblogsearchstats` (
  `searchterm` varchar(255) character set latin1 NOT NULL default '',
  `searched` datetime NOT NULL default '0000-00-00 00:00:00',
  `blog` varchar(50) character set latin1 NOT NULL default ''
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `tblblogsearchstats`
--

LOCK TABLES `tblblogsearchstats` WRITE;
/*!40000 ALTER TABLE `tblblogsearchstats` DISABLE KEYS */;
INSERT INTO `tblblogsearchstats` VALUES ('ajax','2007-06-26 13:06:49','modelglue'),('search.cfm','2007-06-26 13:25:12','modelglue'),('search.cfm','2007-06-26 18:22:42','modelglue'),('search.cfm','2007-06-27 01:23:22','modelglue'),('screen','2007-06-27 11:59:13','modelglue'),('tutorial','2007-06-27 13:32:23','modelglue'),('documentation','2007-06-27 21:32:48','modelglue'),('&lt;script&gt;alert(\'hi\');&lt;/script&gt;','2007-06-28 15:21:45','modelglue'),('unity','2007-06-30 01:29:40','modelglue'),('Model-Glue: &lt;include&gt; Template not found!','2007-07-01 11:22:36','modelglue'),('Quickstart','2007-07-02 00:38:46','modelglue'),('search.cfm','2007-07-02 21:02:20','modelglue'),('quickstart','2007-07-03 16:19:12','modelglue'),('domain','2007-07-03 16:22:32','modelglue'),('initial','2007-07-04 16:47:26','modelglue'),('coldfusion 7','2007-07-04 16:54:09','modelglue'),('Ajax','2007-07-04 16:54:21','modelglue'),('search.cfm','2007-07-04 21:30:24','modelglue'),('php','2007-07-05 00:02:15','modelglue'),('orm','2007-07-05 11:58:44','modelglue'),('6.1','2007-07-05 12:12:00','modelglue'),('fusebox','2007-07-05 12:46:34','modelglue'),('quick start','2007-07-05 13:17:48','modelglue'),('start','2007-07-05 13:17:56','modelglue'),('getName','2007-07-05 15:52:37','modelglue'),('documentation','2007-07-05 16:28:51','modelglue'),('Could not find the ColdFusion Component or Interface coldspring.beans.DefaultXmlBeanFactory','2007-07-05 21:19:54','modelglue'),('coldspring.beans.DefaultXmlBeanFactory','2007-07-05 21:20:09','modelglue'),('coldspring.beans.DefaultXmlBeanFactory','2007-07-05 21:20:12','modelglue'),('coldspring.beans.DefaultXmlBeanFactory','2007-07-05 21:20:14','modelglue'),('tutorials','2007-07-05 22:45:45','modelglue'),('The error occurred on line 18.','2007-07-06 23:06:43','modelglue'),('excel','2007-07-08 10:30:54','modelglue'),('reactor','2007-07-08 18:22:56','modelglue'),('aop','2007-07-08 18:43:18','modelglue'),('This is Model-Glue version (Unknown: Subversion Checkout)','2007-07-08 20:24:43','modelglue'),('ORM','2007-07-08 20:27:26','modelglue'),('Cause: No ORM adapter has been loaded','2007-07-08 20:27:55','modelglue'),('compatible','2007-07-10 00:33:29','modelglue'),('version','2007-07-10 00:55:53','modelglue'),('search.cfm','2007-07-10 02:44:18','modelglue'),('DTD','2007-07-10 18:14:26','modelglue'),('scriptac','2007-07-10 20:44:51','modelglue'),('prototype','2007-07-10 20:44:58','modelglue'),('cfc','2007-07-10 23:50:10','modelglue'),('sorting','2007-07-10 23:50:56','modelglue'),('circuits','2007-07-10 23:59:05','modelglue'),('circuit','2007-07-10 23:59:18','modelglue'),('SESSIONS','2007-07-12 10:43:52','modelglue'),('SESSION','2007-07-12 10:43:56','modelglue'),('actionpacks','2007-07-12 12:20:16','modelglue'),('SESSION Scope','2007-07-12 13:46:40','modelglue'),('reactor','2007-07-13 12:18:46','modelglue'),('search.cfm','2007-07-14 06:48:16','modelglue'),('headstart','2007-07-14 22:36:33','modelglue'),('search.cfm','2007-07-14 22:36:48','modelglue'),('search.cfm','2007-07-14 22:36:54','modelglue'),('login','2007-07-15 06:08:27','modelglue'),('zakie','2007-07-15 16:42:22','modelglue'),('transfer','2007-07-16 05:08:04','modelglue'),('reactor','2007-07-16 05:08:15','modelglue'),('reactor','2007-07-16 17:26:41','modelglue'),('documentation','2007-07-16 19:59:11','modelglue'),('onrequeststart','2007-07-17 14:20:51','modelglue'),('modelgluequickstart','2007-07-17 15:47:13','modelglue'),('action packs','2007-07-18 13:27:08','modelglue'),('search.cfm','2007-07-20 14:03:51','modelglue'),('arf','2007-07-22 17:02:50','modelglue'),('reactor','2007-07-23 07:37:15','modelglue'),('print documentation','2007-07-23 08:56:14','modelglue'),('print','2007-07-23 08:56:20','modelglue'),('tutorial','2007-07-23 12:39:30','modelglue'),('search.cfm','2007-07-23 12:39:54','modelglue'),('railo','2007-07-24 02:46:31','modelglue'),('transfer','2007-07-24 14:10:09','modelglue'),('unity','2007-07-24 17:19:55','modelglue'),('screencast','2007-07-25 00:21:12','modelglue'),('examples/quickstart/base/model','2007-07-25 00:33:50','modelglue'),('reactor','2007-07-25 03:19:40','modelglue'),('session scope','2007-07-27 12:16:43','modelglue'),('application cfc','2007-07-27 15:07:02','modelglue'),('anderegg','2007-07-28 09:18:41','modelglue'),('svn','2007-07-30 01:24:39','modelglue'),('download','2007-07-30 01:26:31','modelglue'),('debug','2007-07-30 15:44:47','modelglue'),('addToChache','2007-07-31 16:14:47','modelglue'),('addToCache','2007-07-31 16:14:50','modelglue'),('1.1','2007-07-31 17:18:44','modelglue'),('transfer','2007-08-01 13:33:48','modelglue'),('coldspring.xml','2007-08-01 14:38:55','modelglue'),('eclipse','2007-08-01 18:14:42','modelglue'),('johann','2007-08-01 21:09:45','modelglue'),('sonnen','2007-08-01 21:09:51','modelglue'),('just','2007-08-01 21:09:56','modelglue'),('bar','2007-08-01 21:50:01','modelglue'),('1.1','2007-08-01 23:31:27','modelglue'),('actionpack','2007-08-02 09:22:08','modelglue'),('cfloop','2007-08-02 14:03:14','modelglue'),('cache','2007-08-03 10:52:49','modelglue'),('autowire','2007-08-03 10:58:55','modelglue'),('redirect','2007-08-03 17:24:46','modelglue'),('logo','2007-08-04 10:38:06','modelglue'),('identity','2007-08-04 10:38:44','modelglue'),('coldfusion','2007-08-04 10:38:53','modelglue'),('logo','2007-08-04 10:40:37','modelglue'),('tj','2007-08-04 10:51:46','modelglue'),('Downes','2007-08-04 10:52:08','modelglue'),('Downes','2007-08-04 10:52:10','modelglue'),('MSG','2007-08-04 10:52:52','modelglue'),('role-based','2007-08-05 07:57:01','modelglue'),('role','2007-08-05 07:57:08','modelglue'),('transfer','2007-08-06 04:54:58','modelglue'),('queue','2007-08-06 11:33:39','modelglue'),('coldspring','2007-08-06 22:39:37','modelglue'),('debug','2007-08-06 22:56:09','modelglue'),('transfer','2007-08-06 23:38:27','modelglue'),('install coldspring','2007-08-07 14:30:29','modelglue'),('None','2007-08-07 15:41:48','modelglue'),('transfer','2007-08-07 21:07:53','modelglue'),('quickstart','2007-08-08 17:36:14','modelglue'),('autowiring','2007-08-09 05:50:51','modelglue'),('&lt;Default&gt;','2007-08-10 16:58:42','modelglue'),('search.cfm','2007-08-11 09:38:17','modelglue'),('json','2007-08-11 11:50:42','modelglue'),('unity','2007-08-11 18:27:36','modelglue'),('beanmappings','2007-08-12 10:59:06','modelglue'),('viewcollection','2007-08-13 12:47:30','modelglue'),('quick start','2007-08-13 16:40:48','modelglue'),('cache','2007-08-14 06:32:41','modelglue'),('slow','2007-08-14 10:01:21','modelglue'),('Jared','2007-08-14 11:05:19','modelglue'),('Jared','2007-08-14 11:05:38','modelglue'),('documentation','2007-08-14 11:05:38','modelglue'),('flex','2007-08-14 11:05:47','modelglue'),('xml cfc','2007-08-14 13:42:17','modelglue'),('getSingleton','2007-08-14 21:15:47','modelglue'),('autowiring','2007-08-14 21:22:40','modelglue'),('autowire','2007-08-14 21:22:55','modelglue'),('search.cfm','2007-08-15 09:44:30','modelglue'),('parent bean factory','2007-08-15 09:44:31','modelglue'),('securing xml files','2007-08-15 20:56:49','modelglue'),('xml files','2007-08-15 20:57:01','modelglue'),('securing files','2007-08-15 21:32:28','modelglue'),('slow','2007-08-16 13:55:37','modelglue'),('authentication','2007-08-16 18:45:40','modelglue'),('search.cfm','2007-08-17 20:45:22','modelglue'),('cf8','2007-08-17 21:06:49','modelglue'),('instance','2007-08-18 06:36:48','modelglue'),('quick start','2007-08-20 12:42:58','modelglue'),('quickstart','2007-08-20 12:43:03','modelglue'),('search.cfm','2007-08-22 03:02:47','modelglue'),('coldfusion 8','2007-08-22 11:24:51','modelglue'),('cf 8','2007-08-22 11:24:58','modelglue'),('bean factory','2007-08-23 07:29:04','modelglue'),('getSingleton','2007-08-23 08:37:48','modelglue'),('smith','2007-08-23 09:53:18','modelglue'),('actionpacks','2007-08-23 10:45:05','modelglue'),('Model-Glue.doc','2007-08-23 17:40:11','modelglue'),('reactor','2007-08-23 18:05:13','modelglue'),('flex','2007-08-23 23:23:42','modelglue'),('action pack','2007-08-24 11:04:54','modelglue'),('coldfusion 5','2007-08-24 23:09:00','modelglue'),('dependencies','2007-08-24 23:09:09','modelglue'),('postback','2007-08-27 12:25:04','modelglue'),('start','2007-08-27 12:37:54','modelglue'),('quick start','2007-08-27 12:38:12','modelglue'),('quickstart','2007-08-27 12:38:17','modelglue'),('postback','2007-08-27 13:19:26','modelglue'),('post-back','2007-08-27 13:19:32','modelglue'),('post','2007-08-27 13:19:35','modelglue'),('post-back','2007-08-27 13:20:15','modelglue'),('postback','2007-08-27 13:20:21','modelglue'),('dynamic','2007-08-27 13:20:27','modelglue'),('event and pass','2007-08-27 13:20:37','modelglue'),('store event','2007-08-27 13:20:43','modelglue'),('dynamic view','2007-08-27 13:22:18','modelglue'),('dynamic and view','2007-08-27 13:22:23','modelglue'),('view','2007-08-27 13:22:28','modelglue'),('slow','2007-08-27 15:34:38','modelglue'),('ajax','2007-08-29 12:22:50','modelglue'),('i18n','2007-08-29 12:49:19','modelglue'),('video','2007-08-29 13:06:03','modelglue'),('controller','2007-08-29 13:14:30','modelglue'),('factory','2007-09-01 00:30:42','modelglue'),('cf8','2007-09-03 18:36:42','modelglue'),('coldfusion 8','2007-09-03 18:36:59','modelglue'),('coldfusion 8','2007-09-03 18:37:14','modelglue'),('examples/quickstart/base/model','2007-09-04 00:39:50','modelglue'),('performing actions','2007-09-04 16:59:01','modelglue'),('actions','2007-09-04 16:59:07','modelglue'),('search.cfm','2007-09-04 21:05:25','modelglue'),('sites','2007-09-05 07:15:27','modelglue'),('add your','2007-09-05 07:15:36','modelglue'),('add','2007-09-05 07:15:40','modelglue'),('mx 6.1','2007-09-05 10:13:56','modelglue'),('transfer','2007-09-05 12:56:13','modelglue'),('ModelGlue\\unity\\loader\\XmlConfigurationLoader.cfc:','2007-09-05 22:06:54','modelglue'),('ModelGlue\\unity\\loader\\XmlConfigurationLoader.cfc','2007-09-05 22:07:12','modelglue'),('genral controller error','2007-09-05 22:07:29','modelglue'),('general controller error','2007-09-05 22:07:33','modelglue'),('Could not find the ColdFusion Component','2007-09-05 22:07:47','modelglue'),('Invalid UploadPath specified. Path does not exist and could not be created.','2007-09-06 15:28:47','modelglue'),('quickstart','2007-09-06 15:52:30','modelglue'),('model-glue pdf','2007-09-07 14:43:35','modelglue'),('how to program','2007-09-07 14:43:50','modelglue'),('how to program','2007-09-07 14:44:01','modelglue'),('how to program','2007-09-07 14:44:11','modelglue'),('event:Handler','2007-09-10 09:36:52','modelglue'),('search.cfm','2007-09-12 08:22:31','modelglue'),('build','2007-09-12 09:59:25','modelglue'),('orm','2007-09-12 12:46:32','modelglue'),('Not using an ORM adapter','2007-09-12 12:46:58','modelglue'),('scaffold','2007-09-13 10:16:29','modelglue'),('blue dragon','2007-09-13 12:21:36','modelglue'),('search.cfm','2007-09-13 13:56:54','modelglue'),('search.cfm','2007-09-13 14:35:26','modelglue'),('search.cfm','2007-09-14 14:13:47','modelglue'),('flex','2007-09-14 15:28:14','modelglue'),('onQueueComplete','2007-09-17 10:10:02','modelglue'),('action pack','2007-09-18 10:35:36','modelglue'),('ses','2007-09-18 14:45:23','modelglue'),('example','2007-09-18 14:49:13','modelglue'),('unity','2007-09-19 14:21:08','modelglue'),('unity','2007-09-19 14:21:11','modelglue'),('quick start','2007-09-21 22:08:24','modelglue'),('quickstart','2007-09-21 22:08:33','modelglue'),('quickstart login','2007-09-21 22:19:51','modelglue'),('search.cfm','2007-09-22 18:52:00','modelglue'),('accordianpane','2007-09-24 12:47:37','modelglue'),('search.cfm','2007-09-26 08:00:04','modelglue'),('reactor','2007-09-26 14:39:46','modelglue'),('heron 138','2007-09-26 16:20:54','modelglue'),('heron 138','2007-09-26 16:20:58','modelglue'),('clean urls','2007-09-30 10:51:24','modelglue'),('None','2007-09-30 21:53:55','modelglue'),('search.cfm','2007-10-01 03:01:02','modelglue'),('flex','2007-10-01 03:13:28','modelglue'),('Model-Glue:Unity','2007-10-01 09:48:56','modelglue'),('multiple record updates','2007-10-01 14:01:17','modelglue'),('multiple updates','2007-10-01 14:01:29','modelglue'),('tutorial','2007-10-01 18:28:09','modelglue'),('unity','2007-10-01 18:29:31','modelglue'),('search.cfm','2007-10-01 22:08:36','modelglue'),('search.cfm','2007-10-03 06:33:55','modelglue'),('1.0','2007-10-03 14:13:51','modelglue'),('past version','2007-10-03 14:14:51','modelglue'),('past version','2007-10-03 14:14:53','modelglue'),('search.cfm','2007-10-04 03:03:16','modelglue'),('handler','2007-10-04 17:19:35','modelglue'),('todolist','2007-10-04 17:20:06','modelglue'),('todol','2007-10-04 17:20:11','modelglue'),('todo','2007-10-04 17:20:14','modelglue'),('base','2007-10-05 14:18:33','modelglue'),('chili beans','2007-10-07 09:02:42','modelglue'),('chilli beans','2007-10-07 09:02:52','modelglue'),('chilibeans','2007-10-07 09:02:59','modelglue'),('configbean','2007-10-07 09:11:07','modelglue'),('reactor','2007-10-09 14:52:47','modelglue'),('flex example','2007-10-10 08:41:55','modelglue'),('iludium','2007-10-10 12:15:53','modelglue'),('search.cfm','2007-10-10 18:48:12','modelglue'),('search.cfm','2007-10-11 09:35:53','modelglue'),('search.cfm','2007-10-12 01:05:12','modelglue'),('transfer','2007-10-12 05:45:11','modelglue'),('ses','2007-10-12 18:49:01','modelglue'),('reactor','2007-10-13 00:54:01','modelglue'),('url delimiter','2007-10-13 17:51:28','modelglue'),('url','2007-10-13 17:51:36','modelglue'),('ses url','2007-10-13 18:16:39','modelglue'),('ses','2007-10-13 18:16:55','modelglue'),('httpservice','2007-10-15 06:16:45','modelglue'),('remoteobject','2007-10-15 06:16:52','modelglue'),('java.lang.IllegalStateException','2007-10-17 09:59:57','modelglue'),('sort','2007-10-17 23:33:59','modelglue'),('video','2007-10-18 10:35:00','modelglue'),('eclipse','2007-10-19 16:10:52','modelglue'),('rdf','2007-10-21 00:03:00','modelglue'),('controller called twice','2007-10-21 00:26:39','modelglue'),('anaemic','2007-10-21 09:03:43','modelglue'),('cfreport','2007-10-21 23:41:04','modelglue'),('search.cfm','2007-10-22 23:07:05','modelglue'),('config bean','2007-10-22 23:57:55','modelglue'),('configuration bean','2007-10-22 23:58:22','modelglue'),('actionpack','2007-10-23 03:55:39','modelglue'),('&lt;broadcasts&gt;','2007-10-23 06:02:34','modelglue'),('&lt;broadcasts&gt;','2007-10-23 06:02:44','modelglue'),('reactor','2007-10-23 13:40:37','modelglue'),('login','2007-10-24 09:41:32','modelglue'),('Element COMPOSITEID is undefined in XOBJECT','2007-10-25 16:11:24','modelglue'),('scaffold','2007-10-25 16:30:00','modelglue'),('performance','2007-10-25 16:40:00','modelglue'),('coldspring','2007-10-26 07:10:57','modelglue'),('install','2007-10-26 07:11:15','modelglue'),('how works model-glue','2007-10-26 07:33:25','modelglue'),('install issues','2007-10-27 16:21:44','modelglue'),('install issues','2007-10-27 16:21:49','modelglue'),('install','2007-10-27 16:21:51','modelglue'),('search.cfm','2007-10-28 17:33:32','modelglue'),('search.cfm','2007-10-29 12:35:09','modelglue'),('sample','2007-10-29 14:57:03','modelglue'),('https','2007-10-29 14:59:42','modelglue'),('https','2007-10-29 14:59:47','modelglue'),('secure','2007-10-29 14:59:52','modelglue'),('secure','2007-10-29 14:59:54','modelglue'),('flex','2007-10-30 17:00:14','modelglue'),('unity','2007-10-30 20:54:04','modelglue'),('unity','2007-10-31 17:51:02','modelglue'),('copyright','2007-11-01 07:28:36','modelglue'),('search.cfm','2007-11-01 19:41:03','modelglue'),('a','2007-11-02 04:04:51','modelglue'),('network drive','2007-11-02 23:31:46','modelglue'),('search.cfm','2007-11-03 15:56:43','modelglue'),('coldspring','2007-11-05 04:49:49','modelglue'),('genericdelete','2007-11-05 15:09:39','modelglue'),('bluedragon','2007-11-05 15:11:55','modelglue'),('search.cfm','2007-11-06 00:41:54','modelglue'),('list','2007-11-07 08:27:30','modelglue'),('DateChooser','2007-11-07 09:24:03','modelglue'),('fusebox','2007-11-07 15:00:54','modelglue'),('search.cfm','2007-11-07 15:07:55','modelglue'),('how tonull','2007-11-07 18:12:01','modelglue'),('how to null','2007-11-07 18:12:05','modelglue'),('init','2007-11-07 23:35:16','modelglue'),('zoey','2007-11-08 11:58:18','modelglue'),('reactorfactory','2007-11-09 11:58:40','modelglue'),('reactor factory','2007-11-09 11:58:49','modelglue'),('reactor factory','2007-11-09 11:58:56','modelglue'),('reactor','2007-11-09 11:59:02','modelglue'),('quickstart','2007-11-09 15:02:06','modelglue'),('search.cfm','2007-11-11 21:05:25','modelglue'),('example','2007-11-12 16:10:21','modelglue'),('action packs','2007-11-12 17:41:19','modelglue'),('optimize','2007-11-13 23:21:30','modelglue'),('slow','2007-11-13 23:21:36','modelglue'),('role','2007-11-14 05:39:12','modelglue'),('wiki','2007-11-14 15:40:19','modelglue'),('tutorial','2007-11-15 15:58:47','modelglue'),('search.cfm','2007-11-15 15:58:48','modelglue'),('search.cfm','2007-11-15 15:58:52','modelglue'),('meet up','2007-11-15 20:50:49','modelglue'),('meetup','2007-11-15 20:50:52','modelglue'),('download','2007-11-16 00:42:30','modelglue'),('ajax','2007-11-16 03:14:22','modelglue'),('unity','2007-11-16 11:15:58','modelglue'),('mach-ii','2007-11-16 13:58:23','modelglue'),('search.cfm','2007-11-18 03:35:46','modelglue'),('docs','2007-11-18 14:42:23','modelglue'),('documentation','2007-11-18 14:42:34','modelglue'),('documentation','2007-11-19 01:41:28','modelglue'),('stavanger','2007-11-20 02:38:54','modelglue'),('action pack','2007-11-20 11:32:06','modelglue'),('include','2007-11-20 13:40:24','modelglue'),('defaultxmlbeanfactory','2007-11-20 14:11:09','modelglue'),('defaultxmlbeanfactory','2007-11-20 14:11:16','modelglue'),('168','2007-11-20 19:52:41','modelglue'),('coldspring.beanDefException','2007-11-20 19:53:01','modelglue'),('coldspring.beanDefException','2007-11-20 19:53:08','modelglue'),('beanDefException','2007-11-20 19:53:13','modelglue'),('svn','2007-11-21 08:34:55','modelglue'),('version 1','2007-11-21 08:59:37','modelglue'),('1.1','2007-11-21 08:59:48','modelglue'),('svn','2007-11-21 09:33:52','modelglue'),('url','2007-11-21 15:46:40','modelglue'),('search.cfm','2007-11-21 23:42:18','modelglue'),('date formatting','2007-11-22 20:11:52','modelglue'),('date format','2007-11-22 20:12:00','modelglue'),('date format','2007-11-22 20:12:02','modelglue'),('date','2007-11-22 20:12:09','modelglue'),('plugin','2007-11-22 21:11:18','modelglue'),('actionpack','2007-11-23 05:34:20','modelglue'),('search.cfm','2007-11-23 13:20:46','modelglue'),('coldspring','2007-11-23 16:31:16','modelglue'),('Mark Drew','2007-11-24 10:24:04','modelglue'),('The requested template has been denied access to \\config\\ColdSpring.xml.cfm.','2007-11-24 23:52:42','modelglue'),('tutorials','2007-11-25 04:46:48','modelglue'),('tutorials','2007-11-25 04:48:05','modelglue'),('scaffold','2007-11-25 12:55:21','modelglue'),('action pack','2007-11-27 02:58:44','modelglue'),('reactor','2007-11-27 23:55:33','modelglue'),('quick star','2007-11-28 02:41:49','modelglue'),('transfer','2007-11-28 17:28:28','modelglue'),('Mark Drew','2007-11-29 02:37:20','modelglue'),('CRUnited Video','2007-11-29 11:47:11','modelglue'),('CFUnited Video','2007-11-29 11:47:16','modelglue'),('CFUnited','2007-11-29 11:47:21','modelglue'),('prototype','2007-11-29 12:51:02','modelglue'),('search.cfm','2007-11-30 15:51:18','modelglue'),('scaffold','2007-12-01 17:59:41','modelglue'),('actionpack','2007-12-02 14:12:23','modelglue'),('trac','2007-12-02 16:24:12','modelglue'),('dataset','2007-12-03 06:37:07','modelglue'),('dataset','2007-12-03 06:37:20','modelglue'),('.net','2007-12-03 06:37:22','modelglue'),('sample application','2007-12-03 17:51:34','modelglue'),('flex','2007-12-04 15:50:14','modelglue'),('example','2007-12-05 12:12:04','modelglue'),('coldspring','2007-12-05 15:50:46','modelglue'),('coldspring download','2007-12-05 15:52:47','modelglue'),('coldspring download','2007-12-05 15:52:51','modelglue'),('unity','2007-12-05 19:53:08','modelglue'),('simpsons','2007-12-07 13:20:46','modelglue'),('dtd','2007-12-09 10:34:59','modelglue'),('unity','2007-12-09 11:26:20','modelglue'),('reactor','2007-12-10 19:46:19','modelglue'),('Mark Drew','2007-12-11 04:03:43','modelglue'),('unable to fetch','2007-12-11 13:21:25','modelglue'),('page not found','2007-12-11 13:21:34','modelglue'),('error 500','2007-12-11 13:21:59','modelglue'),('500','2007-12-11 13:22:04','modelglue'),('errors','2007-12-11 13:22:08','modelglue'),('coldspring','2007-12-12 14:53:18','modelglue'),('downloads','2007-12-12 14:53:53','modelglue'),('craete coldfusion','2007-12-14 09:58:02','modelglue'),('create coldfusion','2007-12-14 09:58:13','modelglue'),('create coldfusion','2007-12-14 09:58:19','modelglue'),('v1.0','2007-12-14 09:58:36','modelglue'),('v1.0','2007-12-14 09:58:42','modelglue'),('shinny glue','2007-12-15 23:33:33','modelglue'),('shinny glue','2007-12-15 23:33:37','modelglue'),('shinny glue','2007-12-15 23:33:38','modelglue'),('shinny glue','2007-12-15 23:33:39','modelglue'),('shinny glue','2007-12-15 23:33:39','modelglue'),('quick','2007-12-17 06:38:14','modelglue'),('qucikstart','2007-12-17 06:39:39','modelglue'),('qucik','2007-12-17 06:39:46','modelglue'),('quick','2007-12-17 06:39:49','modelglue'),('quickstart','2007-12-17 06:39:54','modelglue'),('documentation','2007-12-18 06:08:16','modelglue'),('build.xml','2007-12-18 14:07:03','modelglue'),('build.xml','2007-12-18 14:07:06','modelglue'),('Unity','2007-12-18 14:07:09','modelglue'),('Dreamweaver','2007-12-18 15:59:23','modelglue'),('Dreamweaver','2007-12-18 15:59:25','modelglue'),('CRUD','2007-12-18 15:59:30','modelglue'),('model no.vc4u','2007-12-20 02:04:05','modelglue'),('application.cfc','2007-12-20 16:52:00','modelglue'),('application.cfc','2007-12-20 16:52:05','modelglue'),('application.cfm','2007-12-20 16:52:10','modelglue'),('&lt;view&gt;','2007-12-20 19:54:26','modelglue'),('view','2007-12-20 19:54:38','modelglue'),('action pack','2007-12-21 10:09:22','modelglue'),('None','2007-12-25 22:11:12','modelglue'),('poll','2007-12-27 04:39:28','modelglue'),('polls','2007-12-27 04:39:32','modelglue'),('Quickstart','2007-12-29 09:27:53','modelglue'),('simpsons','2007-12-29 13:44:55','modelglue'),('you','2007-12-29 15:20:18','modelglue'),('svn access','2007-12-31 09:51:07','modelglue'),('access svn','2007-12-31 09:51:13','modelglue'),('svn','2007-12-31 09:51:18','modelglue'),('.net','2007-12-31 20:14:38','modelglue'),('gesture','2008-01-02 12:57:53','modelglue'),('older version','2008-01-02 16:36:47','modelglue'),('version 1','2008-01-02 16:36:55','modelglue'),('blue dragon','2008-01-04 10:04:34','modelglue'),('bluedragon','2008-01-04 10:04:45','modelglue'),('spinner','2008-01-07 16:59:06','modelglue'),('quick start','2008-01-08 14:11:34','modelglue'),('validation','2008-01-09 11:32:46','modelglue'),('ajax','2008-01-09 12:01:10','modelglue'),('2.0.6','2008-01-11 11:23:03','modelglue'),('bleeding','2008-01-11 11:23:12','modelglue'),('gateway','2008-01-11 23:13:13','modelglue'),('method','2008-01-12 13:03:14','modelglue'),('getDSN','2008-01-12 13:03:37','modelglue'),('dragon','2008-01-13 06:04:51','modelglue'),('execution','2008-01-14 13:42:32','modelglue'),('execution','2008-01-14 13:42:35','modelglue'),('the simpsons','2008-01-14 14:14:18','modelglue'),('redux ui','2008-01-18 04:20:31','modelglue'),('redux ui','2008-01-18 04:20:49','modelglue'),('redux ui','2008-01-18 04:20:59','modelglue'),('requirements','2008-01-18 16:53:30','modelglue'),('sf requirements','2008-01-18 16:53:43','modelglue'),('cf requirements','2008-01-18 16:53:46','modelglue'),('cf required','2008-01-18 16:53:51','modelglue'),('cf required','2008-01-18 16:53:54','modelglue'),('fling','2008-01-21 03:45:43','modelglue'),('Fling','2008-01-21 03:46:11','modelglue'),('None','2008-01-22 00:46:25','modelglue'),('svn','2008-01-22 06:58:48','modelglue'),('dtd','2008-01-23 02:03:34','modelglue'),('performance','2008-01-24 09:39:17','modelglue'),('performance','2008-01-24 09:54:35','modelglue'),('load','2008-01-24 09:54:48','modelglue'),('game','2008-01-24 10:05:50','modelglue'),('game','2008-01-24 10:05:55','modelglue'),('None','2008-01-24 12:09:50','modelglue'),('database','2008-01-24 16:08:50','modelglue'),('svn','2008-01-24 18:59:26','modelglue'),('reinit','2008-01-25 15:14:03','modelglue'),('None','2008-01-26 00:08:34','modelglue'),('production-mode','2008-01-26 20:52:26','modelglue'),('Detail Either there are no','2008-01-28 07:01:07','modelglue'),('implicit','2008-01-28 11:01:07','modelglue'),('Action Pack','2008-01-28 11:03:49','modelglue'),('There is no known event handler for','2008-01-28 14:43:21','modelglue'),('railo','2008-01-28 23:59:19','modelglue'),('None','2008-01-29 07:51:44','modelglue'),('1.1','2008-01-29 22:55:01','modelglue'),('1.1','2008-01-29 23:00:56','modelglue'),('debug','2008-01-30 13:08:36','modelglue'),('turn off debug','2008-01-30 13:09:03','modelglue'),('training','2008-01-31 09:01:03','modelglue'),('bean','2008-01-31 23:12:23','modelglue'),('reactor','2008-02-01 15:53:42','modelglue'),('disable debugging','2008-02-01 16:38:44','modelglue'),('disable modelglue debug','2008-02-01 16:39:00','modelglue'),('modelglue debug','2008-02-01 16:39:12','modelglue'),('model glue debug','2008-02-01 16:39:19','modelglue'),('debug','2008-02-01 16:39:24','modelglue'),('railo','2008-02-01 19:27:18','modelglue'),('dictionary.xml','2008-02-04 12:02:14','modelglue'),('skin','2008-02-04 18:10:19','modelglue'),('skining','2008-02-04 18:10:48','modelglue'),('flex3','2008-02-06 14:47:28','modelglue'),('sandbox','2008-02-08 05:47:03','modelglue'),('sandbox','2008-02-08 05:47:07','modelglue'),('sandbox','2008-02-08 05:52:56','modelglue'),('security','2008-02-08 05:53:02','modelglue'),('trac','2008-02-08 08:26:56','modelglue'),('uml','2008-02-08 16:35:17','modelglue'),('class diagram','2008-02-08 16:35:24','modelglue'),('scaffold','2008-02-09 17:45:00','modelglue'),('reactor','2008-02-10 01:10:53','modelglue'),('http://www.reactorframework.org/','2008-02-10 01:12:29','modelglue'),('scafolding','2008-02-13 00:48:14','modelglue'),('scaffolding','2008-02-13 00:48:25','modelglue'),('tutorials','2008-02-13 12:48:24','modelglue'),('distribution.zip','2008-02-13 23:50:06','modelglue'),('eventguard','2008-02-14 04:29:39','modelglue'),('event','2008-02-14 04:29:43','modelglue'),('mappings','2008-02-15 05:57:23','modelglue'),('ontap','2008-02-15 08:42:21','modelglue'),('Cairngorm','2008-02-15 12:44:45','modelglue'),('cashing','2008-02-15 14:41:26','modelglue'),('cacheing','2008-02-15 14:41:31','modelglue'),('cacheing','2008-02-15 14:41:34','modelglue'),('caching','2008-02-15 14:41:37','modelglue'),('d','2008-02-15 14:41:40','modelglue'),('cache','2008-02-15 14:41:46','modelglue'),('cfr','2008-02-17 13:26:20','modelglue'),('RemoveFromCache','2008-02-18 11:48:31','modelglue'),('Cache','2008-02-18 11:48:40','modelglue'),('shared hosting','2008-02-19 22:47:03','modelglue'),('transfer','2008-02-20 06:56:50','modelglue'),('docs','2008-02-20 21:32:53','modelglue'),('hibernate','2008-02-22 03:38:45','modelglue'),('coldbox','2008-02-22 10:09:36','modelglue'),('plies','2008-02-22 14:46:18','modelglue'),('OnRequestEnd','2008-02-22 15:23:46','modelglue'),('screencast','2008-02-22 22:28:26','modelglue'),('modelglue 1','2008-02-23 18:57:24','modelglue'),('coldbox','2008-02-23 19:27:30','modelglue'),('view','2008-02-24 11:53:41','modelglue'),('videw','2008-02-24 12:10:33','modelglue'),('video','2008-02-24 12:10:39','modelglue'),('install problem','2008-02-25 00:07:31','modelglue'),('install','2008-02-25 00:07:40','modelglue'),('statebuilder','2008-02-25 15:13:31','modelglue'),('cache','2008-02-28 19:59:15','modelglue'),('arf','2008-02-28 22:33:58','modelglue'),('getSingleton','2008-02-29 03:50:36','modelglue'),('fieldnames','2008-03-01 14:43:02','modelglue'),('unity','2008-03-02 06:32:33','modelglue'),('reactor','2008-03-03 11:42:30','modelglue'),('request timeout','2008-03-03 17:09:32','modelglue'),('timeout','2008-03-03 17:09:37','modelglue'),('time out','2008-03-03 17:09:40','modelglue'),('request','2008-03-03 17:09:43','modelglue'),('getting started','2008-03-04 01:21:04','modelglue'),('quickstart','2008-03-04 01:21:16','modelglue'),('ModelGlue.xml','2008-03-04 04:07:47','modelglue'),('ModelGlue.xml dns','2008-03-04 04:08:02','modelglue'),('ModelGlue.xml','2008-03-04 04:08:09','modelglue'),('config/ModelGlue.xml','2008-03-04 04:08:55','modelglue'),('bluedragon','2008-03-05 23:27:14','modelglue'),('makeeventbean','2008-03-06 17:43:47','modelglue'),('webservice','2008-03-07 14:51:21','modelglue'),('web service','2008-03-07 14:51:29','modelglue'),('web service','2008-03-07 14:51:32','modelglue'),('light','2008-03-07 14:51:38','modelglue'),('rails','2008-03-07 18:31:57','modelglue'),('&lt;Default&gt;','2008-03-09 07:10:23','modelglue'),('documentation','2008-03-09 13:50:21','modelglue'),('screenshot','2008-03-10 07:16:01','modelglue'),('php','2008-03-11 15:07:11','modelglue'),('implicit invocation','2008-03-11 15:40:49','modelglue'),('video','2008-03-11 22:33:58','modelglue'),('quickstart','2008-03-12 16:37:50','modelglue'),('model glue documents','2008-03-13 03:28:16','modelglue'),('http://helloworld.com','2008-03-13 14:14:56','modelglue'),('http://helloworld.com','2008-03-13 14:25:07','modelglue'),('java','2008-03-14 09:36:16','modelglue'),('http://helloworld.com','2008-03-15 06:14:15','modelglue'),('http://helloworld.com','2008-03-15 06:25:09','modelglue'),('headstart','2008-03-16 22:38:21','modelglue'),('crud','2008-03-17 16:16:46','modelglue'),('http://helloworld.com','2008-03-18 09:51:55','modelglue'),('http://helloworld.com','2008-03-18 10:07:50','modelglue'),('http://helloworld.com','2008-03-18 15:22:22','modelglue'),('http://helloworld.com','2008-03-18 15:22:50','modelglue'),('subapplication','2008-03-18 22:59:09','modelglue'),('ModelGlue_APP_KEY','2008-03-18 23:01:41','modelglue'),('ModelGlue_APP_KEY','2008-03-19 00:20:25','modelglue'),('install','2008-03-19 11:41:04','modelglue'),('sizedpool','2008-03-20 12:39:14','modelglue'),('version','2008-03-24 08:41:57','modelglue'),('compatability','2008-03-24 08:43:00','modelglue'),('compatibility','2008-03-24 08:43:04','modelglue'),('java','2008-03-24 18:25:07','modelglue'),('java','2008-03-24 18:26:16','modelglue'),('security','2008-03-24 19:36:09','modelglue'),('reactor','2008-03-25 10:16:52','modelglue'),('ajax','2008-03-25 12:34:23','modelglue'),('class diagram','2008-03-25 14:29:34','modelglue'),('redirect','2008-03-25 19:24:51','modelglue'),('arf','2008-03-25 23:39:45','modelglue'),('mvc','2008-03-26 15:14:56','modelglue'),('rocket','2008-03-27 16:55:24','modelglue'),('None','2008-03-27 20:52:37','modelglue'),('ScopeFacade','2008-03-31 18:23:47','modelglue'),('quickstart','2008-03-31 18:32:17','modelglue'),('error','2008-03-31 20:20:07','modelglue'),('validation','2008-04-01 09:21:38','modelglue'),('validate','2008-04-01 09:21:48','modelglue'),('validat','2008-04-01 09:21:54','modelglue'),('ivalidatiion','2008-04-01 09:22:09','modelglue'),('ivalidation','2008-04-01 09:22:14','modelglue'),('ivalidate','2008-04-01 09:22:18','modelglue'),('validation','2008-04-01 09:22:23','modelglue'),('scaffolding','2008-04-02 03:31:40','modelglue'),('view state','2008-04-02 14:36:35','modelglue'),('viewState','2008-04-02 14:36:40','modelglue'),('modelz','2008-04-02 16:57:21','modelglue'),('previous versions','2008-04-03 11:35:35','modelglue'),('downloads','2008-04-03 11:35:46','modelglue'),('None','2008-04-04 20:21:14','modelglue'),('None','2008-04-04 20:21:51','modelglue'),('None','2008-04-04 20:21:57','modelglue'),('photo','2008-04-05 07:28:26','modelglue'),('photo','2008-04-05 07:28:31','modelglue'),('generator','2008-04-08 11:28:21','modelglue'),('None','2008-04-08 17:13:00','modelglue'),('None','2008-04-08 17:13:01','modelglue'),('None','2008-04-08 17:13:06','modelglue'),('split ModelGlue.xml','2008-04-09 08:10:22','modelglue'),('split xml file','2008-04-09 08:10:37','modelglue'),('reactor','2008-04-09 09:00:43','modelglue'),('coldspring','2008-04-09 13:34:14','modelglue'),('coldspring.beans.DefaultXmlBeanFactory','2008-04-09 13:34:48','modelglue'),('coldspring.beans.DefaultXmlBeanFactory','2008-04-09 13:34:51','modelglue'),('coldspring.beans','2008-04-09 13:35:04','modelglue'),('ant','2008-04-09 21:37:04','modelglue'),('ant','2008-04-09 21:40:38','modelglue'),('None','2008-04-09 21:44:13','modelglue'),('None','2008-04-09 21:44:13','modelglue'),('None','2008-04-10 04:03:28','modelglue'),('None','2008-04-10 04:04:09','modelglue'),('None','2008-04-10 07:56:41','modelglue'),('MG3','2008-04-10 13:27:14','modelglue'),('eclipse','2008-04-10 16:13:40','modelglue'),('genericlist','2008-04-10 16:27:33','modelglue'),('gatewaymethod','2008-04-10 16:29:10','modelglue'),('mapping','2008-04-10 16:40:24','modelglue'),('ses','2008-04-10 19:32:16','modelglue'),('svn','2008-04-11 04:56:10','modelglue'),('svn','2008-04-11 04:59:49','modelglue'),('ant','2008-04-11 14:35:57','modelglue'),('None','2008-04-11 22:33:17','modelglue'),('None','2008-04-11 22:33:35','modelglue'),('None','2008-04-12 14:33:38','modelglue'),('None','2008-04-12 14:34:27','modelglue'),('None','2008-04-12 14:34:45','modelglue'),('C:\\Coldfusion8\\wwwroot\\WEB-INF\\cftags\\component.cfc','2008-04-12 14:43:08','modelglue'),('None','2008-04-13 09:01:58','modelglue'),('None','2008-04-13 09:02:05','modelglue'),('None','2008-04-13 09:02:57','modelglue'),('None','2008-04-14 05:39:43','modelglue'),('None','2008-04-14 05:39:43','modelglue'),('None','2008-04-14 05:40:18','modelglue'),('modelglue.xml','2008-04-14 17:28:56','modelglue'),('model-glue framework coldfusion sample project','2008-04-15 12:16:00','modelglue'),('None','2008-04-15 23:20:47','modelglue'),('None','2008-04-15 23:21:07','modelglue'),('None','2008-04-15 23:21:32','modelglue'),('None','2008-04-15 23:21:52','modelglue'),('None','2008-04-15 23:23:01','modelglue'),('None','2008-04-16 02:48:42','modelglue'),('None','2008-04-16 02:48:50','modelglue'),('None','2008-04-16 02:49:19','modelglue'),('None','2008-04-16 02:51:49','modelglue'),('flex','2008-04-16 20:48:40','modelglue'),('flex','2008-04-16 20:55:46','modelglue'),('transfer','2008-04-17 13:44:17','modelglue'),('None','2008-04-17 13:55:46','modelglue'),('None','2008-04-17 13:55:46','modelglue'),('None','2008-04-17 13:56:32','modelglue'),('None','2008-04-17 17:23:54','modelglue'),('None','2008-04-17 17:24:04','modelglue'),('None','2008-04-17 17:24:40','modelglue'),('email action pack','2008-04-18 12:22:24','modelglue'),('email','2008-04-18 12:22:32','modelglue'),('action pack','2008-04-18 12:22:42','modelglue'),('gesture','2008-04-18 14:45:01','modelglue'),('None','2008-04-18 22:18:22','modelglue'),('None','2008-04-18 22:19:21','modelglue'),('None','2008-04-18 22:19:22','modelglue'),('None','2008-04-19 02:38:27','modelglue'),('None','2008-04-19 02:38:56','modelglue'),('None','2008-04-19 02:39:11','modelglue'),('None','2008-04-19 02:40:54','modelglue'),('multiple','2008-04-19 10:28:58','modelglue'),('None','2008-04-20 07:31:11','modelglue'),('None','2008-04-20 07:31:44','modelglue'),('None','2008-04-20 07:37:11','modelglue'),('None','2008-04-20 12:15:50','modelglue'),('None','2008-04-20 12:17:45','modelglue'),('None','2008-04-20 12:19:21','modelglue'),('None','2008-04-21 20:04:10','modelglue'),('None','2008-04-21 20:04:15','modelglue'),('None','2008-04-21 20:04:25','modelglue'),('Bean creation exception during init() of ModelGlue.unity.eventhandler.EventHandlerFactory','2008-04-21 23:19:58','modelglue'),('quickstart','2008-04-21 23:26:47','modelglue'),('None','2008-04-21 23:46:59','modelglue'),('None','2008-04-21 23:47:52','modelglue'),('None','2008-04-21 23:47:57','modelglue'),('factory','2008-04-22 05:41:54','modelglue'),('event guard','2008-04-22 09:15:25','modelglue'),('eventguard','2008-04-22 09:15:30','modelglue'),('blog','2008-04-22 10:14:33','modelglue'),('blogcfc','2008-04-22 10:14:52','modelglue'),('getValue','2008-04-23 14:11:51','modelglue'),('model glue 1.0','2008-04-23 16:08:23','modelglue'),('model-glue 1.0','2008-04-23 16:08:33','modelglue'),('model-glue 1.','2008-04-23 16:08:54','modelglue'),('None','2008-04-23 22:09:51','modelglue'),('None','2008-04-23 22:09:56','modelglue'),('None','2008-04-23 22:09:56','modelglue'),('None','2008-04-23 22:29:48','modelglue'),('None','2008-04-23 22:29:50','modelglue'),('None','2008-04-23 22:30:05','modelglue'),('coldspring','2008-04-24 00:27:34','modelglue'),('orm','2008-04-24 03:55:33','modelglue'),('reactor','2008-04-24 03:55:45','modelglue'),('hasbro','2008-04-24 14:31:15','modelglue'),('rick','2008-04-24 14:31:28','modelglue'),('stored procedures','2008-04-24 18:58:22','modelglue'),('model glue presentation','2008-04-25 00:59:48','modelglue'),('model glue presentation','2008-04-25 01:00:07','modelglue'),('None','2008-04-25 01:54:17','modelglue'),('None','2008-04-25 01:56:05','modelglue'),('None','2008-04-25 01:56:07','modelglue'),('fusebox','2008-04-25 05:13:15','modelglue'),('demo app','2008-04-25 05:29:55','modelglue'),('demo','2008-04-25 05:30:34','modelglue'),('None','2008-04-25 11:36:42','modelglue'),('None','2008-04-25 11:36:47','modelglue'),('None','2008-04-25 11:38:28','modelglue'),('None','2008-04-26 12:01:14','modelglue'),('None','2008-04-26 12:04:35','modelglue'),('None','2008-04-26 12:05:26','modelglue'),('coldspring','2008-04-26 20:39:21','modelglue'),('*laradutta*','2008-04-27 03:02:39','modelglue'),('*laradutta*','2008-04-27 03:02:44','modelglue'),('*lara*','2008-04-27 03:02:57','modelglue'),('None','2008-04-27 04:00:29','modelglue'),('None','2008-04-27 04:00:30','modelglue'),('None','2008-04-27 04:00:32','modelglue'),('None','2008-04-28 10:05:29','modelglue'),('None','2008-04-28 10:06:14','modelglue'),('None','2008-04-28 10:08:57','modelglue'),('None','2008-04-28 11:54:19','modelglue'),('None','2008-04-28 11:54:24','modelglue'),('None','2008-04-28 11:54:32','modelglue'),('None','2008-04-29 06:52:11','modelglue'),('None','2008-04-29 06:52:11','modelglue'),('None','2008-04-29 06:52:12','modelglue'),('Access of undefined property todos in package model','2008-04-29 13:15:15','modelglue'),('Access of undefined property todos in package model','2008-04-29 13:15:23','modelglue'),('None','2008-04-29 18:34:33','modelglue'),('None','2008-04-29 18:34:34','modelglue'),('None','2008-04-29 18:34:34','modelglue'),('flex','2008-04-30 16:22:18','modelglue'),('None','2008-04-30 18:43:05','modelglue'),('None','2008-04-30 18:43:18','modelglue'),('None','2008-04-30 18:43:20','modelglue'),('seo','2008-04-30 22:30:51','modelglue'),('None','2008-04-30 23:59:55','modelglue'),('None','2008-04-30 23:59:56','modelglue'),('None','2008-05-01 00:01:06','modelglue'),('None','2008-05-01 08:37:59','modelglue'),('None','2008-05-01 08:38:00','modelglue'),('None','2008-05-01 08:38:01','modelglue'),('None','2008-05-01 08:38:03','modelglue'),('None','2008-05-01 19:36:21','modelglue'),('None','2008-05-01 19:36:21','modelglue'),('None','2008-05-01 19:36:23','modelglue'),('None','2008-05-02 05:48:33','modelglue'),('None','2008-05-02 05:49:10','modelglue'),('None','2008-05-02 05:49:25','modelglue'),('license','2008-05-02 10:45:06','modelglue'),('ajax','2008-05-02 11:55:24','modelglue'),('None','2008-05-03 00:45:52','modelglue'),('None','2008-05-03 00:46:00','modelglue'),('None','2008-05-03 00:46:01','modelglue'),('None','2008-05-03 11:32:15','modelglue'),('None','2008-05-03 11:33:17','modelglue'),('None','2008-05-03 11:33:20','modelglue'),('None','2008-05-04 14:28:10','modelglue'),('None','2008-05-04 14:28:27','modelglue'),('None','2008-05-04 14:29:42','modelglue'),('fusebox','2008-05-04 19:34:22','modelglue'),('requestformat','2008-05-05 16:15:28','modelglue'),('jboss','2008-05-05 18:49:56','modelglue'),('None','2008-05-05 20:18:58','modelglue'),('None','2008-05-05 20:19:10','modelglue'),('None','2008-05-05 20:20:43','modelglue'),('noo orm','2008-05-06 05:37:51','modelglue'),('no orm','2008-05-06 05:37:57','modelglue'),('no orm','2008-05-06 05:38:01','modelglue'),('orm','2008-05-06 05:38:04','modelglue'),('transfer','2008-05-06 17:35:10','modelglue'),('None','2008-05-06 23:09:32','modelglue'),('None','2008-05-06 23:09:57','modelglue'),('None','2008-05-06 23:09:59','modelglue'),('ANT','2008-05-07 15:39:01','modelglue'),('service objects','2008-05-07 20:15:31','modelglue'),('action pack','2008-05-08 00:33:13','modelglue'),('actionpack','2008-05-08 00:33:54','modelglue'),('cfunit','2008-05-08 06:43:03','modelglue'),('flex','2008-05-08 11:11:25','modelglue'),('getresut','2008-05-08 13:44:23','modelglue'),('getresult','2008-05-08 13:44:28','modelglue'),('None','2008-05-08 21:29:03','modelglue'),('None','2008-05-08 21:29:08','modelglue'),('None','2008-05-08 21:29:15','modelglue'),('None','2008-05-08 22:29:07','modelglue'),('None','2008-05-08 22:29:11','modelglue'),('None','2008-05-08 22:29:57','modelglue'),('reactor','2008-05-09 07:38:38','modelglue'),('format','2008-05-11 15:13:38','modelglue'),('None','2008-05-11 18:26:40','modelglue'),('None','2008-05-11 18:27:23','modelglue'),('None','2008-05-11 18:27:27','modelglue'),('None','2008-05-11 19:00:43','modelglue'),('None','2008-05-11 19:00:43','modelglue'),('None','2008-05-11 19:00:45','modelglue'),('svn','2008-05-12 09:56:03','modelglue'),('None','2008-05-12 17:57:43','modelglue'),('None','2008-05-12 17:57:45','modelglue'),('None','2008-05-12 17:57:45','modelglue'),('None','2008-05-12 18:37:38','modelglue'),('None','2008-05-12 18:37:59','modelglue'),('None','2008-05-12 18:38:02','modelglue'),('ses urls','2008-05-13 00:43:57','modelglue'),('None','2008-05-13 21:06:10','modelglue'),('None','2008-05-13 21:06:19','modelglue'),('None','2008-05-13 21:06:43','modelglue'),('None','2008-05-13 21:54:33','modelglue'),('None','2008-05-13 21:54:34','modelglue'),('None','2008-05-13 21:54:37','modelglue'),('license','2008-05-14 09:55:04','modelglue'),('download','2008-05-15 14:08:54','modelglue'),('donate','2008-05-15 14:28:07','modelglue'),('scaffold','2008-05-16 17:31:36','modelglue'),('CFMLLib','2008-05-20 15:42:39','modelglue'),('bluedragon','2008-05-21 07:52:56','modelglue'),('alias','2008-05-21 14:37:24','modelglue'),('form validation','2008-05-21 15:03:06','modelglue'),('validation','2008-05-21 15:03:16','modelglue'),('validation','2008-05-21 15:03:32','modelglue'),('scaffold','2008-05-22 19:04:30','modelglue'),('vfght','2008-05-24 00:40:01','modelglue'),('None','2008-05-25 13:19:47','modelglue'),('mx 6.1','2008-05-25 22:59:33','modelglue'),('None','2008-05-27 02:28:24','modelglue'),('sub sites','2008-05-27 14:48:40','modelglue'),('sub','2008-05-27 14:49:01','modelglue'),('http://iphoneunderground.com/showthread.php?p=13788','2008-05-28 04:12:15','modelglue'),('cache','2008-05-28 06:08:33','modelglue'),('init','2008-05-28 06:08:44','modelglue'),('reload','2008-05-28 06:08:57','modelglue'),('param','2008-05-28 06:09:07','modelglue'),('sub-app','2008-05-28 18:13:29','modelglue'),('sub','2008-05-28 21:44:31','modelglue'),('sub-application','2008-05-28 21:45:30','modelglue'),('ModelGlue_PARENT_BEAN_FACTORY','2008-05-28 21:46:03','modelglue'),('monogram bank','2008-05-30 18:30:19','modelglue'),('model-glue:unity','2008-06-01 07:44:14','modelglue'),('svn','2008-06-01 16:41:35','modelglue'),('wsdl','2008-06-02 10:52:21','modelglue'),('soap','2008-06-02 10:52:30','modelglue'),('flex','2008-06-02 10:56:57','modelglue'),('quickstart','2008-06-02 11:11:24','modelglue'),('error handling','2008-06-03 08:26:23','modelglue'),('errors','2008-06-03 08:26:28','modelglue'),('error','2008-06-03 08:26:32','modelglue'),('build credits','2008-06-03 22:19:50','modelglue'),('login','2008-06-04 16:01:39','modelglue'),('version 1','2008-06-04 16:07:54','modelglue'),('download','2008-06-04 16:08:03','modelglue'),('presentation','2008-06-04 18:48:21','modelglue'),('None','2008-06-05 23:43:58','modelglue'),('None','2008-06-05 23:43:59','modelglue'),('None','2008-06-05 23:43:59','modelglue'),('action pack','2008-06-09 10:03:47','modelglue'),('mapping','2008-06-09 10:15:07','modelglue'),('remote','2008-06-10 00:42:57','modelglue'),('reactor','2008-06-10 05:45:55','modelglue'),('reactor','2008-06-10 05:46:49','modelglue'),('coldbox','2008-06-10 15:10:43','modelglue'),('SES','2008-06-13 04:41:05','modelglue'),('eclipse','2008-06-18 10:35:31','modelglue'),('modelgluegateway','2008-06-18 18:27:03','modelglue'),('modelgluegateway','2008-06-18 18:27:07','modelglue'),('coldspring','2008-06-19 14:56:16','modelglue'),('groovy','2008-06-21 16:08:56','modelglue'),('bad credit','2008-06-22 20:28:50','modelglue'),('credit agencies','2008-06-24 14:11:26','modelglue'),('action','2008-06-24 19:34:19','modelglue'),('actionpacks','2008-06-24 19:40:40','modelglue'),('action packs','2008-06-24 19:40:48','modelglue'),('as3','2008-06-24 21:42:50','modelglue'),('login authentication','2008-06-25 02:10:08','modelglue'),('login','2008-06-25 02:10:29','modelglue'),('admin','2008-06-25 02:10:36','modelglue'),('user','2008-06-25 02:10:41','modelglue'),('user','2008-06-25 02:10:45','modelglue'),('event generation','2008-06-25 08:59:00','modelglue'),('transfer','2008-06-25 09:04:08','modelglue'),('modelglue.xml','2008-06-25 16:00:02','modelglue'),('None','2008-06-26 22:29:59','modelglue'),('None','2008-06-26 22:29:59','modelglue'),('None','2008-06-26 22:33:20','modelglue'),('licence','2008-06-27 09:32:05','modelglue'),('emerge cards','2008-06-29 21:18:17','modelglue'),('None','2008-06-30 17:10:24','modelglue'),('None','2008-06-30 17:10:27','modelglue'),('None','2008-06-30 17:10:28','modelglue'),('None','2008-06-30 17:10:29','modelglue'),('None','2008-06-30 17:10:32','modelglue'),('None','2008-06-30 17:11:11','modelglue'),('cfgrid','2008-07-03 00:52:03','modelglue'),('cfgrid tutorial','2008-07-03 00:52:14','modelglue'),('tutorial','2008-07-03 00:52:20','modelglue'),('schema','2008-07-03 10:52:27','modelglue'),('transfer','2008-07-03 11:08:46','modelglue'),('scaffold','2008-07-03 22:40:55','modelglue'),('unity','2008-07-04 06:11:58','modelglue'),('video','2008-07-05 04:18:37','modelglue'),('spry','2008-07-07 07:48:44','modelglue'),('ajax','2008-07-07 07:48:51','modelglue'),('ky-980','2008-07-08 05:04:52','modelglue'),('ky-980','2008-07-08 05:04:54','modelglue'),('Best practices','2008-07-08 07:40:59','modelglue'),('event','2008-07-08 10:38:40','modelglue'),('singleton','2008-07-08 19:21:47','modelglue'),('unity','2008-07-08 21:52:48','modelglue'),('configuration','2008-07-11 11:28:36','modelglue'),('ext','2008-07-12 03:00:58','modelglue'),('hostmysite.com','2008-07-12 22:56:33','modelglue'),('video','2008-07-13 00:35:29','modelglue'),('index.cfm not found','2008-07-13 14:31:09','modelglue'),('index.cfm','2008-07-13 14:31:16','modelglue'),('quick start','2008-07-14 04:45:02','modelglue'),('guide','2008-07-14 04:45:18','modelglue'),('license','2008-07-14 15:52:11','modelglue'),('onrequeststart','2008-07-15 15:16:11','modelglue'),('broadcasts','2008-07-15 15:17:21','modelglue'),('errorcollection','2008-07-18 09:51:48','modelglue'),('quick start','2008-07-21 11:01:22','modelglue'),('unity','2008-07-21 17:24:25','modelglue'),('flex','2008-07-22 13:13:20','modelglue'),('firefox','2008-07-22 16:38:30','modelglue'),('SQL injection','2008-07-24 01:32:21','modelglue'),('6.1','2008-07-24 02:46:14','modelglue'),('6.1','2008-07-24 02:46:17','modelglue'),('gesture','2008-07-26 20:36:48','modelglue'),('subdirecotry','2008-07-31 13:04:17','modelglue'),('subdirectory','2008-07-31 13:04:25','modelglue'),('BlueDragon','2008-07-31 19:34:47','modelglue'),('&quot;plugin framework&quot;','2008-08-01 02:05:12','modelglue'),('render','2008-08-02 19:15:27','modelglue'),('silverlight','2008-08-04 08:50:31','modelglue'),('silver light','2008-08-04 08:50:39','modelglue'),('silverlight','2008-08-04 09:03:37','modelglue'),('find replace','2008-08-05 01:05:59','modelglue'),('Unit','2008-08-05 04:26:25','modelglue'),('Unity','2008-08-05 04:26:29','modelglue'),('Zoo','2008-08-05 17:39:45','modelglue'),('Zoo','2008-08-05 17:39:51','modelglue'),('createobject','2008-08-06 18:03:52','modelglue'),('¨coldspring','2008-08-07 05:16:16','modelglue'),('coldspring','2008-08-07 05:16:21','modelglue'),('gateway','2008-08-07 19:28:58','modelglue'),('gateway','2008-08-07 19:30:48','modelglue'),('gateway','2008-08-07 19:31:15','modelglue'),('introduction','2008-08-09 10:43:42','modelglue'),('quickstart','2008-08-10 12:28:49','modelglue'),('coldspring','2008-08-11 23:25:29','modelglue'),('dynamic results','2008-08-13 04:33:50','modelglue'),('quick start guide','2008-08-14 12:12:33','modelglue'),('start guide','2008-08-14 12:12:44','modelglue'),('apply juniper','2008-08-14 17:50:09','modelglue'),('tutorial','2008-08-14 23:01:21','modelglue'),('Mapping','2008-08-15 14:30:38','modelglue'),('mapping application','2008-08-15 14:30:56','modelglue'),('mapping cfc','2008-08-15 14:31:07','modelglue'),('application.cfc','2008-08-15 14:31:13','modelglue'),('Versions','2008-08-15 14:31:40','modelglue'),('Version','2008-08-15 14:31:44','modelglue'),('Override','2008-08-15 14:32:02','modelglue'),('transfer','2008-08-16 21:07:49','modelglue'),('aspire visa','2008-08-17 10:32:16','modelglue'),('binding','2008-08-18 11:30:24','modelglue'),('bind','2008-08-18 11:30:50','modelglue'),('magick','2008-08-18 17:04:32','modelglue'),('coldspring','2008-08-21 07:05:03','modelglue'),('None','2008-08-22 19:45:02','modelglue'),('None','2008-08-22 19:45:02','modelglue'),('None','2008-08-22 19:45:02','modelglue'),('None','2008-08-22 19:45:02','modelglue'),('None','2008-08-22 19:45:02','modelglue'),('None','2008-08-22 19:45:07','modelglue'),('flex 3.0','2008-08-25 02:39:42','modelglue'),('flex 3','2008-08-25 02:39:48','modelglue'),('3','2008-08-25 02:39:59','modelglue'),('3.0','2008-08-25 02:40:04','modelglue'),('3.0','2008-08-25 02:40:07','modelglue'),('t381t','2008-08-25 02:56:30','modelglue'),('t381t','2008-08-25 02:56:34','modelglue'),('t381t','2008-08-25 02:56:38','modelglue'),('t381t','2008-08-25 02:56:41','modelglue'),('t381t','2008-08-25 02:56:46','modelglue'),('t381t','2008-08-25 02:57:25','modelglue'),('t381t','2008-08-25 02:58:29','modelglue'),('t381t','2008-08-25 03:00:06','modelglue'),('t381t','2008-08-25 03:00:09','modelglue'),('t381t','2008-08-25 03:01:13','modelglue'),('t381t','2008-08-25 03:01:50','modelglue'),('Unity','2008-08-25 10:07:32','modelglue'),('coldbox','2008-08-25 11:55:35','modelglue'),('SES','2008-08-25 14:41:10','modelglue'),('authentication','2008-08-26 14:35:54','modelglue'),('coldspring','2008-08-26 21:47:43','modelglue'),('ServiceRunner','2008-08-27 14:27:53','modelglue'),('Service Runner','2008-08-27 14:27:57','modelglue'),('training','2008-08-27 17:40:07','modelglue'),('transfer','2008-08-29 13:23:53','modelglue'),('The requested object could not be found','2008-08-29 13:39:56','modelglue'),('Model-Glue:Unity,','2008-09-02 02:04:15','modelglue'),('unity','2008-09-02 07:10:29','modelglue'),('bean','2008-09-02 07:15:54','modelglue'),('bean','2008-09-02 07:17:17','modelglue'),('bean','2008-09-02 07:20:24','modelglue'),('stockquote','2008-09-02 13:21:12','modelglue'),('video','2008-09-04 01:23:03','modelglue'),('training','2008-09-04 01:23:34','modelglue'),('configure','2008-09-05 17:19:40','modelglue'),('sub applications','2008-09-08 10:42:31','modelglue'),('sub application','2008-09-08 10:42:38','modelglue'),('sub app','2008-09-08 10:42:42','modelglue'),('beans','2008-09-09 12:56:12','modelglue'),('Beloit','2008-09-09 19:06:34','modelglue'),('unity','2008-09-10 05:45:03','modelglue'),('unity','2008-09-11 11:22:26','modelglue'),('ant','2008-09-11 16:48:53','modelglue'),('ant script','2008-09-11 16:50:24','modelglue'),('bluedragon','2008-09-11 17:10:03','modelglue'),('model-glue','2008-09-11 20:25:49','modelglue'),('existsincache','2008-09-15 00:51:47','modelglue'),('message argument','2008-09-15 18:46:21','modelglue'),('vulnerabilities','2008-09-16 03:17:12','modelglue'),('security updates','2008-09-16 04:43:13','modelglue'),('security','2008-09-16 04:43:23','modelglue'),('security issues of Model-Glue framework','2008-09-16 04:51:34','modelglue'),('security issues of Model-Glue framework','2008-09-16 04:51:37','modelglue'),('security issues','2008-09-16 04:51:50','modelglue'),('login.mxml','2008-09-17 00:09:21','modelglue'),('modelgluequickstart','2008-09-17 00:13:06','modelglue'),('unity','2008-09-17 18:46:34','modelglue'),('mvc flex','2008-09-18 05:44:30','modelglue'),('model-glue fundamental','2008-09-19 10:00:10','modelglue'),('basic','2008-09-19 10:00:15','modelglue'),('tutorial','2008-09-20 12:55:00','modelglue'),('None','2008-09-24 10:15:34','modelglue'),('scaffolds','2008-09-24 22:11:16','modelglue'),('subversion','2008-09-25 15:27:29','modelglue'),('model glue 3','2008-09-26 13:55:46','modelglue'),('unity','2008-09-26 21:39:53','modelglue'),('helpers','2008-09-27 20:04:48','modelglue'),('helpers','2008-09-27 21:12:21','modelglue'),('bluedragon','2008-09-28 01:18:56','modelglue'),('seo','2008-09-30 14:06:11','modelglue'),('ses','2008-09-30 14:24:07','modelglue'),('unity','2008-10-01 01:28:21','modelglue'),('bean','2008-10-01 16:58:00','modelglue'),('generator','2008-10-02 22:49:39','modelglue'),('form','2008-10-02 22:59:07','modelglue'),('timeout issue','2008-10-06 15:26:11','modelglue'),('mode-lglue old version','2008-10-06 15:35:09','modelglue'),('model-glue old version','2008-10-06 15:35:16','modelglue'),('facade','2008-10-07 05:58:00','modelglue'),('same code','2008-10-10 16:18:28','modelglue'),('transfer','2008-10-12 10:00:09','modelglue'),('reactor','2008-10-12 10:01:07','modelglue'),('iis','2008-10-14 10:53:52','modelglue'),('unity','2008-10-14 18:34:51','modelglue'),(':unity','2008-10-14 18:35:07','modelglue'),('dtd','2008-10-15 07:17:54','modelglue'),('wiki','2008-10-15 10:39:44','modelglue'),('wally','2008-10-15 11:44:38','modelglue'),('scaffold','2008-10-16 23:19:02','modelglue'),('transfer','2008-10-16 23:30:37','modelglue'),('scaffold','2008-10-17 00:26:46','modelglue'),('reload','2008-10-20 04:00:39','modelglue'),('ajaxcfc','2008-10-20 08:07:23','modelglue'),('bush','2008-10-21 01:59:58','modelglue'),('bush','2008-10-21 02:00:04','modelglue'),('George w bush','2008-10-21 02:00:11','modelglue'),('transfer','2008-10-21 11:24:43','modelglue'),('sample','2008-10-23 07:58:58','modelglue'),('coldspring','2008-10-24 04:37:10','modelglue'),('download coldspring','2008-10-24 04:37:29','modelglue'),('install','2008-10-24 13:10:57','modelglue'),('host','2008-10-29 09:31:00','modelglue'),('wiki','2008-10-29 09:32:06','modelglue'),('aboutweb','2008-10-29 09:37:04','modelglue'),('aboutweb','2008-10-29 09:37:47','modelglue'),('boolean value','2008-10-31 05:18:08','modelglue'),('qforms','2008-11-01 09:49:43','modelglue'),('javascript','2008-11-01 09:49:50','modelglue'),('authentication','2008-11-03 14:30:06','modelglue'),('matt quackenbush','2008-11-04 20:42:06','modelglue'),('model-glue 3','2008-11-04 22:42:42','modelglue'),('model-glue unity','2008-11-05 15:25:22','modelglue'),('coldspring.beans.DefaultXmlBeanFactory','2008-11-07 05:37:38','modelglue'),('templates','2008-11-07 11:14:02','modelglue'),('joomla','2008-11-07 11:15:18','modelglue'),('beginner','2008-11-07 11:15:30','modelglue'),('beginner','2008-11-07 11:15:32','modelglue'),('help','2008-11-07 11:15:37','modelglue'),('quickstart','2008-11-09 21:37:03','modelglue'),('model-glue 3','2008-11-10 15:15:48','modelglue'),('model-glue 3','2008-11-10 15:27:33','modelglue'),('MG3','2008-11-10 15:31:09','modelglue'),('gesture','2008-11-10 15:37:10','modelglue'),('tutorial','2008-11-10 16:30:18','modelglue'),('tutorial','2008-11-10 16:30:42','modelglue'),('tutorial','2008-11-10 16:30:45','modelglue'),('model-glue 3','2008-11-10 19:20:58','modelglue'),('canvas','2008-11-12 17:44:20','modelglue'),('coldspring','2008-11-13 11:50:39','modelglue'),('getModelGlue().getBean','2008-11-13 11:55:16','modelglue'),('getBean','2008-11-13 11:55:42','modelglue'),('coldspring','2008-11-18 13:10:11','modelglue'),('security','2008-11-19 04:38:36','modelglue'),('validate events','2008-11-19 04:54:22','modelglue'),('validate events','2008-11-19 04:54:36','modelglue'),('validate events','2008-11-19 04:54:47','modelglue'),('validate events','2008-11-19 04:54:51','modelglue'),('validate login','2008-11-19 04:55:13','modelglue'),('event','2008-11-19 04:55:20','modelglue'),('svn','2008-11-19 15:18:32','modelglue'),('viewstate','2008-11-20 09:53:09','modelglue'),('unity','2008-11-20 11:38:04','modelglue'),('coldspring','2008-11-20 15:05:16','modelglue'),('url','2008-11-24 18:32:14','modelglue'),('2008','2008-11-26 03:40:22','modelglue'),('examples','2008-11-26 16:57:58','modelglue'),('async','2008-11-27 18:30:42','modelglue'),('logs','2008-12-03 22:31:37','modelglue'),('quick start','2008-12-04 09:44:54','modelglue'),('arguments','2008-12-05 15:26:15','modelglue'),('dynamic','2008-12-06 17:42:11','modelglue'),('simpson','2008-12-09 13:36:33','modelglue'),('actionpacks','2008-12-11 17:59:15','modelglue'),('genealogy','2008-12-14 17:21:53','modelglue'),('family','2008-12-14 17:21:57','modelglue'),('family tree','2008-12-14 17:22:01','modelglue'),('hirerarchical','2008-12-14 17:22:07','modelglue'),('hierrarchical','2008-12-14 17:22:11','modelglue'),('hierarchical','2008-12-14 17:22:15','modelglue'),('webservice session','2008-12-16 17:41:54','modelglue'),('session','2008-12-16 17:42:01','modelglue'),('secure a folder','2008-12-16 18:07:58','modelglue'),('secure a folder','2008-12-16 18:08:02','modelglue'),('security','2008-12-16 18:08:09','modelglue'),('dynamic load','2008-12-16 22:45:30','modelglue'),('dynamic','2008-12-16 22:45:36','modelglue'),('reload','2008-12-16 22:47:34','modelglue'),('soap','2008-12-17 09:03:35','modelglue'),('helpers','2008-12-17 11:02:51','modelglue'),('locateServices','2008-12-18 04:50:08','modelglue'),('locateService','2008-12-18 04:50:15','modelglue'),('slow','2008-12-19 16:23:11','modelglue'),('fast','2008-12-19 16:23:46','modelglue'),('install','2008-12-19 16:51:06','modelglue'),('None','2008-12-20 03:48:57','modelglue'),('coldbox','2008-12-21 18:25:55','modelglue'),('scaffold','2008-12-22 08:54:59','modelglue'),('jira','2008-12-22 14:06:43','modelglue'),('groovy','2008-12-24 11:44:24','modelglue'),('groovy','2008-12-24 11:44:27','modelglue'),('groovy','2008-12-24 14:29:33','modelglue'),('scaffold','2008-12-26 05:54:54','modelglue'),('image','2008-12-31 14:51:56','modelglue'),('image','2008-12-31 14:52:15','modelglue'),('php','2009-01-04 18:17:49','modelglue'),('samples','2009-01-04 22:49:11','modelglue'),('2 views in one event','2009-01-05 17:24:30','modelglue'),('quickstart','2009-01-07 05:47:02','modelglue'),('&lt;results','2009-01-07 16:42:03','modelglue'),('results','2009-01-07 16:42:37','modelglue'),('&lt;results&gt;','2009-01-07 16:42:55','modelglue'),('broadcast','2009-01-08 19:32:25','modelglue'),('threading','2009-01-08 20:28:35','modelglue'),('thread','2009-01-08 20:29:09','modelglue'),('helpers','2009-01-10 19:08:37','modelglue'),('1.0 release','2009-01-14 14:23:35','modelglue'),('sample','2009-01-15 17:20:35','modelglue'),('orm','2009-01-18 13:27:35','modelglue'),('transfer','2009-01-18 13:28:00','modelglue'),('None','2009-01-19 15:44:02','modelglue'),('EventGuard','2009-01-20 01:31:26','modelglue'),('arf','2009-01-21 10:40:17','modelglue'),('arf','2009-01-21 10:48:45','modelglue'),('bluedragon','2009-01-22 01:06:46','modelglue'),('openbd','2009-01-22 01:08:39','modelglue'),('reactor','2009-01-23 11:22:48','modelglue'),('Element OBJECTMETADATA.XML.OBJECT.ALIAS.XMLTEXT','2009-01-23 13:45:05','modelglue'),('model glue unity','2009-01-24 22:29:22','modelglue'),('caching','2009-01-30 14:42:01','modelglue'),('reactor','2009-02-02 22:07:39','modelglue'),('alias','2009-02-03 22:57:48','modelglue'),('restful','2009-02-05 14:47:07','modelglue'),('rest','2009-02-05 14:47:19','modelglue'),('login','2009-02-06 05:44:40','modelglue'),('login','2009-02-06 05:44:44','modelglue'),('dynamic coldspring','2009-02-06 17:04:25','modelglue'),('coldspring variables','2009-02-06 17:04:33','modelglue'),('coldspring','2009-02-06 17:04:40','modelglue'),('linkto','2009-02-09 00:23:41','modelglue'),('linkto()','2009-02-09 00:23:47','modelglue'),('event.linkto()','2009-02-09 00:23:52','modelglue'),('tartan','2009-02-09 15:36:39','modelglue'),('samples','2009-02-10 08:05:56','modelglue'),('scaffolding','2009-02-10 12:21:02','modelglue'),('reactor','2009-02-10 14:05:01','modelglue'),('cache','2009-02-13 13:44:09','modelglue'),('download','2009-02-18 03:18:38','modelglue'),('restar','2009-02-18 17:57:32','modelglue'),('restart','2009-02-18 17:57:37','modelglue'),('reload','2009-02-18 17:57:41','modelglue'),('quickstart','2009-02-19 04:46:02','modelglue'),('autowire','2009-02-19 11:48:30','modelglue'),('view.template','2009-02-20 12:43:09','modelglue'),('view','2009-02-20 12:44:28','modelglue'),('header','2009-02-20 12:45:57','modelglue'),('reload','2009-02-20 13:59:22','modelglue'),('restart','2009-02-20 14:00:17','modelglue'),('reload','2009-02-20 14:02:01','modelglue'),('install','2009-02-20 17:07:10','modelglue'),('copy to scope','2009-02-21 18:13:29','modelglue'),('copy','2009-02-21 18:13:34','modelglue'),('php','2009-02-22 15:05:38','modelglue'),('helpers','2009-02-23 08:47:59','modelglue'),('helper','2009-02-23 08:48:04','modelglue'),('helper','2009-02-23 08:48:06','modelglue'),('onQueueComplete','2009-02-25 07:20:06','modelglue'),('modelglue debugging','2009-02-25 16:21:30','modelglue'),('Model-Glue Debugging','2009-02-25 16:21:57','modelglue'),('Debugging','2009-02-25 16:22:02','modelglue'),('turn off Debugging','2009-02-25 16:22:24','modelglue'),('turn off Debugging','2009-02-25 16:22:25','modelglue'),('result','2009-02-25 16:29:36','modelglue'),('cache','2009-02-26 09:42:27','modelglue'),('notification','2009-02-27 18:47:34','modelglue'),('email','2009-02-27 18:47:38','modelglue'),('unity','2009-02-28 16:49:43','modelglue'),('unity','2009-03-02 15:31:25','modelglue'),('rest','2009-03-02 16:30:12','modelglue'),('example','2009-03-03 16:13:47','modelglue'),('example app','2009-03-03 16:13:57','modelglue'),('as3','2009-03-04 05:20:19','modelglue'),('flash','2009-03-04 05:20:50','modelglue'),('installation','2009-03-06 10:24:24','modelglue'),('AJAX','2009-03-07 13:46:04','modelglue'),('Tartan','2009-03-09 04:20:07','modelglue'),('bluedragon','2009-03-11 10:10:31','modelglue'),('transfer','2009-03-12 05:51:50','modelglue'),('None','2009-03-12 21:45:22','modelglue'),('modelglue.xml','2009-03-13 18:29:00','modelglue'),('unity','2009-03-15 00:45:16','modelglue'),('&quot;shared hosting&quot;','2009-03-17 08:53:05','modelglue'),('hosting','2009-03-17 08:53:13','modelglue'),('None','2009-03-17 23:44:14','modelglue'),('system requirements','2009-03-18 18:26:15','modelglue'),('config values','2009-03-20 11:49:56','modelglue'),('config','2009-03-20 11:50:02','modelglue'),('pod','2009-03-22 01:16:22','modelglue'),('layouts','2009-03-22 01:16:33','modelglue'),('views','2009-03-22 01:16:38','modelglue'),('plugin','2009-03-22 10:13:48','modelglue'),('plugins','2009-03-22 10:13:52','modelglue'),('populating database','2009-03-24 10:17:21','modelglue'),('database','2009-03-24 10:17:26','modelglue'),('forward','2009-03-24 13:29:06','modelglue'),('autowiring','2009-03-25 17:01:03','modelglue'),('views','2009-03-25 17:23:45','modelglue'),('manual','2009-03-26 00:10:31','modelglue'),('layouts','2009-03-26 23:11:47','modelglue'),('examples','2009-03-29 10:58:48','modelglue'),('onApplicationStart','2009-03-31 09:04:20','modelglue'),('extends','2009-04-03 13:00:22','modelglue'),('ses','2009-04-06 10:56:41','modelglue'),('ses','2009-04-06 11:01:20','modelglue'),('cache','2009-04-08 20:14:23','modelglue'),('missing event handler','2009-04-10 18:06:06','modelglue'),('reactor','2009-04-12 11:50:28','modelglue'),('reactor','2009-04-15 06:10:03','modelglue'),('reactor','2009-04-15 06:22:22','modelglue'),('unity','2009-04-16 22:16:42','modelglue'),('transfer-orm','2009-04-17 22:38:12','modelglue'),('transfer','2009-04-17 22:38:16','modelglue'),('transfer','2009-04-17 22:44:24','modelglue'),('unity','2009-04-17 22:44:35','modelglue'),('coldbox','2009-04-22 19:41:48','modelglue'),('preserveState','2009-04-24 09:09:01','modelglue'),('None','2009-04-27 21:42:50','modelglue'),('beans','2009-04-28 11:51:11','modelglue'),('unity','2009-04-28 12:04:37','modelglue'),('None','2009-04-29 05:15:24','modelglue'),('if statement','2009-04-29 15:46:10','modelglue'),('performance','2009-05-01 17:24:40','modelglue'),('None','2009-05-03 19:45:31','modelglue'),('scaffold','2009-05-04 10:59:50','modelglue'),('trac','2009-05-04 11:03:00','modelglue'),('None','2009-05-05 00:03:05','modelglue'),('coldbox','2009-05-05 09:27:12','modelglue'),('makeEventBean','2009-05-05 19:20:23','modelglue'),('None','2009-05-05 22:22:13','modelglue'),('None','2009-05-06 07:28:09','modelglue'),('cs','2009-05-07 11:15:51','modelglue'),('plug-ins','2009-05-07 11:16:02','modelglue'),('development mode','2009-05-07 13:05:22','modelglue'),('trac','2009-05-09 10:07:45','modelglue'),('Could not find the ColdFusion Component coldspring.beans.DefaultXmlBeanFactory','2009-05-11 06:37:54','modelglue'),('Could not find the ColdFusion Component coldspring.beans.DefaultXmlBeanFactory','2009-05-11 06:38:08','modelglue'),('Could not find the ColdFusion Component','2009-05-11 06:38:30','modelglue'),('DefaultXmlBeanFactory','2009-05-11 06:38:39','modelglue'),('VO','2009-05-12 11:36:44','modelglue'),('Value object','2009-05-12 11:36:49','modelglue'),('Value object','2009-05-12 11:36:56','modelglue'),('Valueobject','2009-05-12 11:37:00','modelglue'),('execution of events','2009-05-12 12:01:58','modelglue'),('event cascading','2009-05-12 12:02:13','modelglue'),('cache','2009-05-12 16:54:36','modelglue'),('quick start','2009-05-12 16:54:49','modelglue'),('OO','2009-05-12 20:41:03','modelglue'),('railo','2009-05-12 21:10:51','modelglue'),('railo','2009-05-12 21:11:30','modelglue'),('docs','2009-05-18 20:26:47','modelglue'),('reloadkey','2009-05-20 04:41:02','modelglue'),('wiki','2009-05-20 10:41:53','modelglue'),('scaffold','2009-05-21 20:40:45','modelglue'),('jira','2009-05-21 22:12:38','modelglue'),('cache','2009-05-25 05:38:26','modelglue'),('redirect','2009-05-25 13:07:30','modelglue'),('None','2009-05-29 21:38:16','modelglue'),('railo','2009-06-02 20:54:20','modelglue'),('facade','2009-06-03 05:29:27','modelglue'),('event scope','2009-06-03 14:38:37','modelglue'),('licensing','2009-06-03 23:07:52','modelglue'),('structured config','2009-06-05 14:24:25','modelglue'),('struct config','2009-06-05 14:24:31','modelglue'),('config','2009-06-05 14:24:34','modelglue'),('Model glue examples','2009-06-08 03:02:18','modelglue'),('examples','2009-06-08 03:02:24','modelglue'),('transfer','2009-06-08 09:39:42','modelglue'),('data persistence','2009-06-08 09:40:44','modelglue'),('orm','2009-06-08 09:40:54','modelglue'),('coldspring','2009-06-10 18:10:43','modelglue'),('None','2009-06-12 03:48:17','modelglue'),('include subdirectory','2009-06-12 23:11:48','modelglue'),('include','2009-06-12 23:11:54','modelglue'),('&lt;include subdirectory','2009-06-12 23:14:04','modelglue'),('&lt;include','2009-06-12 23:14:10','modelglue'),('lightwire','2009-06-15 11:37:21','modelglue'),('lightwire','2009-06-15 11:37:29','modelglue'),('MVC','2009-06-16 06:26:35','modelglue'),('MVC pattern','2009-06-16 06:27:27','modelglue'),('architecture','2009-06-16 06:27:51','modelglue'),('MVC','2009-06-16 06:28:07','modelglue'),('security','2009-06-20 13:31:27','modelglue'),('security','2009-06-20 13:31:54','modelglue'),('MG3-Video-Sneak-Peak--Event-Generation','2009-06-22 13:28:13','modelglue'),('MG3 Video','2009-06-22 13:28:21','modelglue'),('action pack','2009-06-23 09:16:17','modelglue'),('requirements','2009-06-26 15:52:37','modelglue'),('setValue','2009-07-03 23:35:40','modelglue'),('viewstate','2009-07-03 23:39:03','modelglue'),('coldspring','2009-07-05 15:38:21','modelglue'),('dsn','2009-07-06 14:51:51','modelglue'),('reactor','2009-07-07 04:09:33','modelglue'),('Training','2009-07-07 10:52:50','modelglue'),('cache','2009-07-07 16:46:17','modelglue'),('cfcomponent','2009-07-08 04:08:03','modelglue'),('SVN','2009-07-09 02:26:29','modelglue'),('cache','2009-07-09 10:27:12','modelglue'),('file upload','2009-07-10 08:38:31','modelglue'),('make event bean','2009-07-10 12:08:25','modelglue'),('The method trace was not found in component','2009-07-12 22:03:22','modelglue'),('archive','2009-07-14 10:14:02','modelglue'),('trace','2009-07-14 10:14:13','modelglue'),('beans','2009-07-14 12:27:01','modelglue'),('reactor','2009-07-20 07:48:05','modelglue'),('tutorial','2009-07-20 11:32:17','modelglue'),('screenshots','2009-07-20 13:15:57','modelglue'),('viewmappings','2009-07-24 23:27:33','modelglue'),('coldfusion.runtime.Cast$BooleanStringConversionException','2009-07-25 06:22:28','modelglue'),('svn','2009-07-26 08:11:14','modelglue'),('checkoiut','2009-07-26 08:11:46','modelglue'),('checkout','2009-07-26 08:11:50','modelglue'),('beta 3','2009-07-26 20:22:11','modelglue'),('java','2009-07-27 08:43:07','modelglue'),('unity','2009-07-29 10:33:28','modelglue'),('forward','2009-07-29 11:26:18','modelglue'),('populator','2009-07-29 11:38:02','modelglue'),('populators','2009-07-29 11:38:06','modelglue'),('railo','2009-07-30 02:10:39','modelglue'),('railo','2009-07-30 02:10:42','modelglue'),('init','2009-08-03 06:53:52','modelglue'),('bookstore','2009-08-05 09:12:44','modelglue'),('debug','2009-08-05 13:22:04','modelglue'),('ecommerce','2009-08-11 08:09:21','modelglue'),('cfpetmarket','2009-08-11 08:09:30','modelglue'),('cart','2009-08-11 08:09:40','modelglue'),('examples','2009-08-11 08:09:49','modelglue'),('coldfusion 9','2009-08-11 17:22:58','modelglue'),('coldfusion9','2009-08-11 17:23:04','modelglue'),('cf9','2009-08-11 17:23:08','modelglue'),('railo','2009-08-12 16:32:22','modelglue'),('transfer','2009-08-13 13:18:20','modelglue'),('helper','2009-08-13 20:16:00','modelglue'),('gesture','2009-08-16 11:55:10','modelglue'),('license','2009-08-18 16:29:28','modelglue'),('missing template dspTemplate.cfm','2009-08-19 17:36:35','modelglue'),('dspTemplate.cfm','2009-08-19 17:36:46','modelglue'),('coldsping','2009-08-20 15:13:34','modelglue'),('coldspring','2009-08-20 15:13:38','modelglue'),('reactor','2009-08-21 13:55:13','modelglue'),('documentation','2009-08-26 14:55:23','modelglue'),('demo','2009-08-26 14:55:33','modelglue'),('linkTo','2009-08-26 15:44:23','modelglue'),('schema','2009-08-27 16:27:06','modelglue'),('getModelGlue()','2009-08-29 22:04:35','modelglue'),('flex 3','2009-08-30 04:52:14','modelglue'),('cfbuilder','2009-09-08 18:09:22','modelglue'),('scaffolding','2009-09-10 06:08:16','modelglue'),('railo','2009-09-10 22:44:15','modelglue'),('mark drew','2009-09-11 06:16:17','modelglue'),('view queue','2009-09-11 15:27:18','modelglue'),('view-queue','2009-09-11 15:27:22','modelglue'),('getslash()','2009-09-13 15:53:27','modelglue'),('jquery','2009-09-18 15:57:47','modelglue'),('builder','2009-09-20 00:54:44','modelglue'),('cfeclipse','2009-09-20 00:56:21','modelglue'),('svn','2009-09-20 04:27:09','modelglue'),('transfer','2009-09-21 13:24:02','modelglue'),('type defaulting','2009-09-21 16:21:22','modelglue'),('type defaulting','2009-09-21 16:21:28','modelglue'),('type defaulting map','2009-09-21 16:21:32','modelglue'),('type defaulting map','2009-09-21 16:21:35','modelglue'),('1.1','2009-09-22 11:33:24','modelglue'),('homer','2009-09-23 10:30:09','modelglue'),('homer','2009-09-23 10:30:19','modelglue'),('homer picture','2009-09-23 10:31:22','modelglue'),('homer picture','2009-09-23 10:31:29','modelglue'),('Top Sites','2009-09-28 15:06:10','modelglue'),('Top Sites','2009-09-28 15:06:43','modelglue'),('Top Sites','2009-09-28 15:07:14','modelglue'),('Top Sites','2009-09-28 15:44:15','modelglue'),('dsptemplate','2009-09-28 17:44:04','modelglue'),('&lt;include name=&quot;body&quot; template=&quot;pages/index.cfm&quot; /&gt;','2009-09-28 17:50:05','modelglue'),('&lt;include name=&quot;body&quot;','2009-09-28 17:50:23','modelglue'),('&lt;include name=&quot;body&quot;','2009-09-28 17:50:24','modelglue'),('Templates','2009-09-28 17:50:44','modelglue'),('documentation','2009-09-29 09:36:26','modelglue'),('kiwtiton','2009-09-30 03:42:59','modelglue'),('kiwtitong','2009-09-30 03:43:44','modelglue'),('krongtong','2009-09-30 03:44:26','modelglue'),('kiwtiton','2009-09-30 03:44:51','modelglue'),('kittiton','2009-09-30 03:46:27','modelglue'),('kittiton@ktonton','2009-09-30 03:53:33','modelglue'),('Top Sites','2009-09-30 07:59:34','modelglue'),('Top Sites','2009-09-30 08:15:06','modelglue'),('Top Sites','2009-09-30 08:36:55','modelglue'),('Top Sites','2009-09-30 08:45:09','modelglue'),('Interesting Pages','2009-10-01 09:52:41','modelglue'),('Top Sites','2009-10-01 09:52:41','modelglue'),('Top Sites','2009-10-01 09:52:49','modelglue'),('Interesting Pages','2009-10-01 09:52:49','modelglue'),('Interesting Pages','2009-10-01 09:57:35','modelglue'),('Top Sites','2009-10-01 09:57:37','modelglue'),('Top Sites','2009-10-01 10:51:45','modelglue'),('Interesting Pages','2009-10-01 10:52:43','modelglue'),('Interesting Pages','2009-10-01 10:53:05','modelglue'),('mecury fiberglass body','2009-10-04 14:19:58','modelglue'),('mecury fiberglass body','2009-10-04 14:20:04','modelglue'),('mecury fiberglass body','2009-10-04 14:24:00','modelglue'),('mecury fiberglass body','2009-10-04 15:05:14','modelglue'),('Best Links','2009-10-05 13:56:01','modelglue'),('Best Links','2009-10-05 13:56:03','modelglue'),('Best Links','2009-10-05 13:58:38','modelglue'),('Best Links','2009-10-05 15:17:10','modelglue'),('quickstart','2009-10-06 20:04:44','modelglue'),('blog','2009-10-07 15:38:03','modelglue'),('createObject','2009-10-09 03:51:01','modelglue'),('shared hosting','2009-10-09 03:51:16','modelglue'),('event','2009-10-09 14:50:42','modelglue'),('how to install','2009-10-11 17:31:25','modelglue'),('install','2009-10-11 17:31:34','modelglue'),('clean url','2009-10-13 09:49:01','modelglue'),('Maps','2009-10-13 13:02:23','modelglue'),('Maps','2009-10-13 13:02:33','modelglue'),('Maps','2009-10-13 13:05:30','modelglue'),('Maps','2009-10-13 13:28:19','modelglue'),('fckeditor','2009-10-13 17:58:09','modelglue'),('fck','2009-10-13 17:58:14','modelglue'),('documentation','2009-10-14 15:14:11','modelglue'),('model-glue:unity','2009-10-15 19:30:36','modelglue'),('coldspring','2009-10-16 05:46:32','modelglue'),('raw tube','2009-10-17 04:46:14','modelglue'),('kadhalil vizhunden','2009-10-17 04:46:15','modelglue'),('auto wrecking shops in port orchard wa','2009-10-17 04:46:17','modelglue'),('scroll box code','2009-10-17 04:46:21','modelglue'),('raw tube','2009-10-17 04:47:46','modelglue'),('kadhalil vizhunden','2009-10-17 04:47:48','modelglue'),('auto wrecking shops in port orchard wa','2009-10-17 04:47:49','modelglue'),('scroll box code','2009-10-17 04:48:07','modelglue'),('raw tube','2009-10-17 05:09:00','modelglue'),('scroll box code','2009-10-17 05:09:00','modelglue'),('kadhalil vizhunden','2009-10-17 05:09:14','modelglue'),('auto wrecking shops in port orchard wa','2009-10-17 05:09:18','modelglue'),('kadhalil vizhunden','2009-10-17 06:40:12','modelglue'),('auto wrecking shops in port orchard wa','2009-10-17 06:40:13','modelglue'),('scroll box code','2009-10-17 06:40:15','modelglue'),('raw tube','2009-10-17 06:40:16','modelglue'),('Interesting Pages','2009-10-19 08:46:33','modelglue'),('Interesting Pages','2009-10-19 08:46:34','modelglue'),('Interesting Pages','2009-10-19 08:49:15','modelglue'),('Interesting Pages','2009-10-19 09:13:33','modelglue');
/*!40000 ALTER TABLE `tblblogsearchstats` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `tblblogsubscribers`
--

DROP TABLE IF EXISTS `tblblogsubscribers`;
CREATE TABLE `tblblogsubscribers` (
  `email` varchar(50) character set latin1 NOT NULL default '',
  `token` varchar(35) character set latin1 NOT NULL default '',
  `blog` varchar(50) character set latin1 default NULL,
  `verified` tinyint(1) NOT NULL default '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `tblblogsubscribers`
--

LOCK TABLES `tblblogsubscribers` WRITE;
/*!40000 ALTER TABLE `tblblogsubscribers` DISABLE KEYS */;
INSERT INTO `tblblogsubscribers` VALUES ('tmcneer@gmail.com','695E54FA-3048-55C9-4325172FB8B97443','modelglue',1),('ing.fusto@tin.it','6C451BDB-3048-55C9-43135AA4A6A2F01A','modelglue',1),('tom.sucaet@gmail.com','6D3DCF66-3048-55C9-43CA443B36A72F7C','modelglue',0),('mario.talavera@gmail.com','73137C23-3048-55C9-43FD3C0DE9FD8838','modelglue',1),('serge.s@gmail.com','7D75FF1D-3048-55C9-43FBC65ACF9A7ABD','modelglue',1),('rj_latherow@adp.com','8889D397-3048-55C9-43EACE733F6E0CCF','modelglue',1),('milos.it@gmail.com','BAD805F2-FF1D-C52F-5EDDE302881DFE10','modelglue',1),('gary.hayden-sofio@minneapolis.edu','ABF8CC89-3048-55C9-43348C0AB76C01CC','modelglue',1),('pat@heypatty.com','B3D9317E-3048-55C9-43BC908A616A7D31','modelglue',1),('wkolcz@isavepets.com','CA965DF4-3048-55C9-4342AF9FE90F97FD','modelglue',1),('everetta@nigms.nih.gov','0AC4B24F-FF1D-C52F-5EB62EDC428A779F','modelglue',1),('owner@threeravensconsulting.com','9EC69F7D-3048-55C9-434770E8A096850B','modelglue',1),('mike@advantageweb.net','36226388-3048-55C9-43B0DB79C055DFF1','modelglue',1),('robert.rawlins@thinkbluemedia.co.uk','5C992405-3048-55C9-43C0BF68D9E788D0','modelglue',1),('huayk@neusoft.com','D13336DB-3048-55C9-435B88DBA8504A84','modelglue',0),('mike.baker@aileach.com','DC01BFD4-3048-55C9-430386D79D39CACC','modelglue',1),('laurens@prolific.nl','428B1720-3048-55C9-433B729DF971EC99','modelglue',1),('shrike71@gmail.com','2074733A-FF1D-C52F-5E08E8D173C1D10B','modelglue',1),('query.rafiq@gmai.com','7BE1905B-FF1D-C52F-5E3257E14B430027','modelglue',0),('malik.robinson@gmail.com','0DEFBC16-FF1D-C52F-5EDFC505F6DAF1A4','modelglue',0),('ahmad.akbary@designuk.com','A3A1E8BE-FF1D-C52F-5EFEB8DCB5965F14','modelglue',1),('mikek@cfwebtools.com','AB15D4EA-FF1D-C52F-5EE36AFD04B1863C','modelglue',1),('jo@nesnanett.com','38E3AFCE-FF1D-C52F-5E0C45E388B42C67','modelglue',1),('vageesh.ranjan@gmail.com','0058D1F9-FF1D-C52F-5E36696CA546E847','modelglue',0),('tom@j7is.co.uk','2FD1FAF0-FF1D-C52F-5E2BB1A5163B1DFC','modelglue',1),('marina_castro2002@msn.com','45BE6DF4-FF1D-C52F-5E96938209CE5124','modelglue',1),('edara_avanthi21@yahoo.co.in','4F4FE42D-FF1D-C52F-5E564B33D70BE40A','modelglue',0),('e.avanthi@gmail.com','4F514DA5-FF1D-C52F-5E47E55A16B9441A','modelglue',1),('chunglee@carfax.com','98303C15-FF1D-C52F-5E6C462799EE03D8','modelglue',1),('kumar.anup83@gmail.com','374959A2-FF1D-C52F-5E7A9841FE7006F8','modelglue',1),('jgreenlees@systemspecific.com','692C7A1E-FF1D-C52F-5E59EE1AAA5E0B82','modelglue',1),('ing.fusto@gmail.com','69A4FB0B-FF1D-C52F-5E6A1C39AECE0ED2','modelglue',0),('sebastian@cityray.com','9745E3A8-FF1D-C52F-5EAB26140657D917','modelglue',1),('zuriel@zurielbarron.com','D453883C-FF1D-C52F-5E87F41FC90CECAD','modelglue',0),('cristian@millemultimedia.it','28456574-FF1D-C52F-5E02FFB7B715BBAC','modelglue',1),('ajmercer@gmail.com','37560051-FF1D-C52F-5E1B282F9EB925C9','modelglue',1);
/*!40000 ALTER TABLE `tblblogsubscribers` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `tblblogtextblocks`
--

DROP TABLE IF EXISTS `tblblogtextblocks`;
CREATE TABLE `tblblogtextblocks` (
  `id` varchar(35) NOT NULL default '',
  `label` varchar(255) NOT NULL default '',
  `body` text NOT NULL,
  `blog` varchar(50) default NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `tblblogtextblocks`
--

LOCK TABLES `tblblogtextblocks` WRITE;
/*!40000 ALTER TABLE `tblblogtextblocks` DISABLE KEYS */;
/*!40000 ALTER TABLE `tblblogtextblocks` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `tblblogtrackbacks`
--

DROP TABLE IF EXISTS `tblblogtrackbacks`;
CREATE TABLE `tblblogtrackbacks` (
  `Id` varchar(35) character set latin1 NOT NULL default '',
  `title` varchar(255) character set latin1 NOT NULL default '',
  `blogname` varchar(255) character set latin1 NOT NULL default '',
  `posturl` varchar(255) character set latin1 NOT NULL default '',
  `excerpt` text character set latin1 NOT NULL,
  `created` datetime NOT NULL default '0000-00-00 00:00:00',
  `entryid` varchar(35) character set latin1 NOT NULL default '',
  `blog` varchar(50) character set latin1 NOT NULL default '',
  PRIMARY KEY  (`Id`),
  KEY `blogTrackBacks_entryid` (`entryid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `tblblogtrackbacks`
--

LOCK TABLES `tblblogtrackbacks` WRITE;
/*!40000 ALTER TABLE `tblblogtrackbacks` DISABLE KEYS */;
/*!40000 ALTER TABLE `tblblogtrackbacks` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `tblusers`
--

DROP TABLE IF EXISTS `tblusers`;
CREATE TABLE `tblusers` (
  `username` varchar(50) character set latin1 default NULL,
  `password` varchar(50) character set latin1 default NULL,
  `name` varchar(50) default NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Dumping data for table `tblusers`
--

LOCK TABLES `tblusers` WRITE;
/*!40000 ALTER TABLE `tblusers` DISABLE KEYS */;
INSERT INTO `tblusers` VALUES ('joe','v4nh4l3n','Joe Rinehart'),('sstroz','b33rc00l3r','Scott Stroz'),('rcamden','j3d1m4st3r','Raymond Camden'),('jared','wh1t3n0rth','Jared Rypka-Hauer'),('rmaxim','mdn4t1v3','Rachel Maxim'),('danwilson','p@ssword','Dan Wilson');
/*!40000 ALTER TABLE `tblusers` ENABLE KEYS */;
UNLOCK TABLES;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;

/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;

-- Dump completed on 2009-10-19 16:43:25
