<?xml version="1.0" encoding="utf-8"?>
			
			<rss version="2.0">
			<channel>
			<title>12Robots.com - Jason Dean - ColdBox</title>
			<link>http://www.12robots.com/index.cfm</link>
			<description>ColdFusion, Database, MVC, Frameworks, Security and whatever</description>
			<language>en-us</language>
			<pubDate>Mon, 06 Sep 2010 19:17:03 -0500</pubDate>
			<lastBuildDate>Thu, 04 Dec 2008 19:04:00 -0500</lastBuildDate>
			<generator>BlogCFC</generator>
			<docs>http://blogs.law.harvard.edu/tech/rss</docs>
			<managingEditor>jason@12robots.com</managingEditor>
			<webMaster>jason@12robots.com</webMaster>
			
			
			
			
			
			<item>
				<title>User Input Validation II - ColdBox Series Part 9b</title>
				<link>http://www.12robots.com/index.cfm/2008/12/4/User-Input-Validation-II--ColdBox-Series-Part-9b</link>
				<description>
				
				After a week of being sick I am finally getting back on track with my blogging. This is going to be one of the final entries in my &lt;em&gt;Building an Application with ColdBox&lt;/em&gt; series. There are a lot of other things I want to blog about. I will still blog on ColdBox topics, just separate from this series.

&lt;a href=&quot;http://www.12robots.com/index.cfm/2008/11/24/User-Input-Validation--ColdBox-Series-Part-9a&quot;&gt;Last time&lt;/a&gt; we talked about how to go about validation. Validation is a really complicated subject that I am still struggling with. I understand the concepts of the different ways of doing it, I just cannot seem to make the time to figure out how I want to do it. I think I will be looking at &lt;a href=&quot;http://validatethis.riaforge.org/&quot;&gt;ValidateThis!&lt;/a&gt; in the near future.
				 [More]
				</description>
						
				
				<category>ColdBox</category>				
				
				<category>Object-Oriented</category>				
				
				<category>ColdFusion</category>				
				
				<pubDate>Thu, 04 Dec 2008 19:04:00 -0500</pubDate>
				<guid>http://www.12robots.com/index.cfm/2008/12/4/User-Input-Validation-II--ColdBox-Series-Part-9b</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>User Input Validation - ColdBox Series Part 9a</title>
				<link>http://www.12robots.com/index.cfm/2008/11/24/User-Input-Validation--ColdBox-Series-Part-9a</link>
				<description>
				
				I decided to start a new sub-series on Validation, since it is a huge and controversial subject, I suspect it will take a post or two, or three.

So, I was chatting with &lt;a href=&quot;http://blog.maestropublishing.com/&quot;&gt;Peter Farrell&lt;/a&gt; some time ago:

me: Peter, I have a quick question for you

Peter: Sure, what?

me: Where should input validation go? In the Controller or In the service layer?

Peter: THAT is NOT a quick question.
				 [More]
				</description>
						
				
				<category>ColdBox</category>				
				
				<category>Object-Oriented</category>				
				
				<category>ColdFusion</category>				
				
				<pubDate>Mon, 24 Nov 2008 20:17:00 -0500</pubDate>
				<guid>http://www.12robots.com/index.cfm/2008/11/24/User-Input-Validation--ColdBox-Series-Part-9a</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>Adding Todo Lists (Handlers and the Service Layer) - ColdBox Series Part 8d</title>
				<link>http://www.12robots.com/index.cfm/2008/11/15/Adding-Todo-Lists-Handlers-and-the-Service-Layer--ColdBox-Series-Part-8d</link>
				<description>
				
				Now we are really getting into this ColdBox stuff.  We&apos;ve got a view set up, we&apos;ve got some handlers, we&apos;ve auto-wired our handlers, and we&apos;ve added ColdSpring into our application.  Now we can start to do stuff.

So where did we leave off last time?  Thinking.... thinking... thinking...  oh yeah.

&lt;h3&gt;Accepting user input&lt;/h3&gt;
Before we went off on a tangent of &lt;a href=&quot;http://www.12robots.com/index.cfm/2008/11/3/Adding-Todo-Lists--ColdBox-Series-Part-8b&quot;&gt;setting up ColdSpring&lt;/a&gt; and &lt;a href=&quot;http://www.12robots.com/index.cfm/2008/11/10/Adding-Todo-Lists-Autowiring-our-Handler--ColdBox-Series-Part-8c&quot;&gt;Autowiring Handlers&lt;/a&gt;, we had two simple handler methods inside of the list.cfc handler. We had addList() and doAddList().
				 [More]
				</description>
						
				
				<category>ColdBox</category>				
				
				<category>ColdFusion</category>				
				
				<category>Object-Oriented</category>				
				
				<category>ColdSpring</category>				
				
				<pubDate>Sat, 15 Nov 2008 21:16:00 -0500</pubDate>
				<guid>http://www.12robots.com/index.cfm/2008/11/15/Adding-Todo-Lists-Handlers-and-the-Service-Layer--ColdBox-Series-Part-8d</guid>
				
				<enclosure url="http://www.12robots.com/enclosures/todos2.zip" length="41886" type="application/zip"/>
				
			</item>
			
		 	
			
			
			<item>
				<title>Adding Todo Lists (Autowiring our Handler) - ColdBox Series Part 8c</title>
				<link>http://www.12robots.com/index.cfm/2008/11/10/Adding-Todo-Lists-Autowiring-our-Handler--ColdBox-Series-Part-8c</link>
				<description>
				
				As &lt;a href=&quot;http://www.luismajano.com/&quot;&gt;Luis&lt;/a&gt; stated in the comments section of &lt;a href=&quot;http://www.12robots.com/index.cfm/2008/11/3/Adding-Todo-Lists--ColdBox-Series-Part-8b&quot;&gt;my last post&lt;/a&gt;, we need to set up autowiring in our handler component. This is really cool stuff. I did not do this the first time around because my post was getting to long and because I wanted to demonstrate both ways of doing it.

&lt;h3&gt;What is autowiring?&lt;/h3&gt;
When you are using object factories (like Lightwire and ColdSpring) in your ColdBox applications, you can set up dependency injection for handlers, plugins and interceptors. This is done using the &lt;a href=&quot;http://ortus.svnrepository.com/coldbox/trac.cgi/wiki/cbAutowireGuide&quot;&gt;Autowire Interceptor&lt;/a&gt;.
				 [More]
				</description>
						
				
				<category>ColdBox</category>				
				
				<category>ColdFusion</category>				
				
				<category>Object-Oriented</category>				
				
				<category>ColdSpring</category>				
				
				<pubDate>Mon, 10 Nov 2008 20:33:00 -0500</pubDate>
				<guid>http://www.12robots.com/index.cfm/2008/11/10/Adding-Todo-Lists-Autowiring-our-Handler--ColdBox-Series-Part-8c</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>You decide when and where the next ColdBox training will be</title>
				<link>http://www.12robots.com/index.cfm/2008/11/5/You-decide-when-and-where-the-next-ColdBox-training-will-be</link>
				<description>
				
				The next &lt;a href=&quot;http://www.coldboxframework.com&quot;&gt;ColdBox&lt;/a&gt; training is being planned. the ColdBox team would like your help in determining when it will be held and where.  Please take a few minutes to fill out &lt;a href=&quot;http://blog.coldboxframework.com/post.cfm/next-coldbox-training-seminar-location-and-date-survey&quot;&gt;their survey&lt;/a&gt;.


To read more about the training and what it offers: &lt;a href=&quot;http://www.coldboxframework.com/index.cfm/courses/cbox101&quot; title=&quot;ColdBox 101 training&quot;&gt;ColdBox 101&lt;/a&gt;
				
				</description>
						
				
				<category>ColdBox</category>				
				
				<pubDate>Wed, 05 Nov 2008 13:45:00 -0500</pubDate>
				<guid>http://www.12robots.com/index.cfm/2008/11/5/You-decide-when-and-where-the-next-ColdBox-training-will-be</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>Adding Todo Lists (Integrating ColdSpring into our Application) - ColdBox Series Part 8b</title>
				<link>http://www.12robots.com/index.cfm/2008/11/3/Adding-Todo-Lists--ColdBox-Series-Part-8b</link>
				<description>
				
				In the last post, we looked at how to create a view and how to use handlers to display that view and to receive user input from the view. Now we need to do something with that user input. Here is what we need to get done first:

&lt;ol&gt;
&lt;li&gt;Create our todoService.cfc&lt;/li&gt;
&lt;li&gt;Set up ColdSpring to create our todoService object and inject its dependencies&lt;/li&gt;
&lt;li&gt;Instantiate our todoService object in our handlers so that we can start to do something useful&lt;/li&gt;
&lt;/ol&gt;

Wow! That&apos;s a lot. It may not seem like a lot, but it is. So let&apos;s get started. here is our doAddList() handler method so far.
				 [More]
				</description>
						
				
				<category>ColdBox</category>				
				
				<category>ColdFusion</category>				
				
				<category>Object-Oriented</category>				
				
				<category>ColdSpring</category>				
				
				<pubDate>Mon, 03 Nov 2008 20:12:00 -0500</pubDate>
				<guid>http://www.12robots.com/index.cfm/2008/11/3/Adding-Todo-Lists--ColdBox-Series-Part-8b</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>Adding Todo Lists - ColdBox Series Part 8a</title>
				<link>http://www.12robots.com/index.cfm/2008/11/2/Adding-Todo-Lists--ColdBox-Series-Part-8a</link>
				<description>
				
				So we&apos;ve set up our Coldbox Application, we&apos;ve built our model, now we need to build some front-end pieces and handlers to work with our model through the service layer. 

Today we will begin by creating a form and some handlers. In the next few posts we will look at creating the service layer, form validation, and persistence.
				 [More]
				</description>
						
				
				<category>ColdBox</category>				
				
				<category>ColdFusion</category>				
				
				<category>Object-Oriented</category>				
				
				<category>ColdSpring</category>				
				
				<pubDate>Sun, 02 Nov 2008 22:13:00 -0500</pubDate>
				<guid>http://www.12robots.com/index.cfm/2008/11/2/Adding-Todo-Lists--ColdBox-Series-Part-8a</guid>
				
				<enclosure url="http://www.12robots.com/enclosures/todos1.zip" length="20949" type="application/zip"/>
				
			</item>
			
		 	
			
			
			<item>
				<title>Creating the Gateway Object - ColdBox Series Part 7b</title>
				<link>http://www.12robots.com/index.cfm/2008/10/26/Creating-the-Gateway-Object--ColdBox-Series-Part-7b</link>
				<description>
				
				In my &lt;a href=&quot;http://www.12robots.com/index.cfm/2008/10/20/Creating-the-Gateway-Object--ColdBox-Series-Part-7a&quot;&gt;last post&lt;/a&gt; we began creating out Gateway Object. It was a lot more work then I thought it was going to be, hence, this is the second part of creating a gateway object. Hopefully, we won&apos;t get to three. But the fact of the matter is, we need these things in place so that we can create our ColdBox application.  So suck-it-up :)

&lt;h3&gt;Previously...&lt;/h3&gt;
In the last post we created 10 methods, for some we used the Illudium PU-36 code generator, and  for some we used our insanely fast typing abilities. The methods we&apos;ve created so far are:

&lt;ul&gt;
&lt;li&gt;createList(list:List):boolean&lt;/li&gt;
&lt;li&gt;readList(list:List):void&lt;/li&gt;
&lt;li&gt;updateList(list:List):boolean&lt;/li&gt;
&lt;li&gt;deleteList(list:List)boolean&lt;/li&gt;
&lt;li&gt;createItem(item:Item):boolean&lt;/li&gt;
&lt;li&gt;readItem(item:Item):void&lt;/li&gt;
&lt;li&gt;updateItem(item:Item):boolean&lt;/li&gt;
&lt;li&gt;deleteItem(item:Item):boolean&lt;/li&gt;
&lt;li&gt;getAllItemsAsQuery(id:Numeric):Query&lt;/li&gt;
&lt;li&gt;queryRowToStruct(qry:Query):Struct&lt;/li&gt;
&lt;/ul&gt;

After we created our methods, we modified our readList() method to return a List object with its child Item objects in a private property of type Array.

&lt;h3&gt;Modifying updateList() to include child objects&lt;/h3&gt;
Now we need to make the same modifications to the updateList() and deleteList() methods.
				 [More]
				</description>
						
				
				<category>ColdBox</category>				
				
				<category>Object-Oriented</category>				
				
				<category>ColdFusion</category>				
				
				<pubDate>Sun, 26 Oct 2008 16:56:00 -0500</pubDate>
				<guid>http://www.12robots.com/index.cfm/2008/10/26/Creating-the-Gateway-Object--ColdBox-Series-Part-7b</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>Creating the Gateway Object - ColdBox Series Part 7a</title>
				<link>http://www.12robots.com/index.cfm/2008/10/20/Creating-the-Gateway-Object--ColdBox-Series-Part-7a</link>
				<description>
				
				Geez, it doesn&apos;t seem like we are doing much with ColdBox in this ColdBox series, does it?

Of course, to get to the point where we are actually using something like ColdBox to manage the communication between our model and our views, we need to have a model and some views.

So in &lt;a href=&quot;http://www.12robots.com/index.cfm/2008/10/12/Creating-our-Domain-Objects--ColdBox-Series-Part-6&quot;&gt;the last post&lt;/a&gt; we discussed creating our Domain Objects(beans). So now we have two domain objects. We have our TodoList bean and our TodoItem bean.
				 [More]
				</description>
						
				
				<category>ColdBox</category>				
				
				<category>Object-Oriented</category>				
				
				<category>ColdFusion</category>				
				
				<pubDate>Mon, 20 Oct 2008 22:18:00 -0500</pubDate>
				<guid>http://www.12robots.com/index.cfm/2008/10/20/Creating-the-Gateway-Object--ColdBox-Series-Part-7a</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>Creating our Domain Objects - ColdBox Series Part 6</title>
				<link>http://www.12robots.com/index.cfm/2008/10/12/Creating-our-Domain-Objects--ColdBox-Series-Part-6</link>
				<description>
				
				Now that we have our database tables set up from our UML and our folder structure has been created we can begin creating our domain objects (Technically we could have done it first, it could probably be argued both ways). 

&lt;h3&gt;Code Generator&lt;/h3&gt;
I am going to use &lt;a href=&quot;http://remotesynthesis.com/&quot;&gt;Brian Rinaldi&apos;s&lt;/a&gt; &lt;a href=&quot;http://cfcgenerator.riaforge.org/&quot;&gt;Illudium PU-36 Code Generator&lt;/a&gt; to help create our domain objects. Since Illudium uses the database tables to create the objects, we needed to have the database set up first. To see the MySQL DDL script check out &lt;a href=&quot;http://www.12robots.com/index.cfm/2008/9/28/Setting-up-a-ColdBox-Application--ColdBox-Series-Part-2&quot;&gt;part 2&lt;/a&gt; of this series.
				 [More]
				</description>
						
				
				<category>ColdBox</category>				
				
				<category>UML</category>				
				
				<category>Object-Oriented</category>				
				
				<category>ColdFusion</category>				
				
				<pubDate>Sun, 12 Oct 2008 20:48:00 -0500</pubDate>
				<guid>http://www.12robots.com/index.cfm/2008/10/12/Creating-our-Domain-Objects--ColdBox-Series-Part-6</guid>
				
				<enclosure url="http://www.12robots.com/enclosures/todos.zip" length="1967" type="application/x-zip-compressed"/>
				
			</item>
			
		 	
			
			
			<item>
				<title>New IRC Channel - #ColdBox</title>
				<link>http://www.12robots.com/index.cfm/2008/10/8/New-IRC-Channel--ColdBox</link>
				<description>
				
				I took the liberty of registering a new channel on the DALnet IRC network, called #ColdBox.  

&lt;h3&gt;What is IRC?&lt;/h3&gt;
For those that do not know, IRC stands for Internet Relay Chat and a &quot;channel&quot; is a chat room on an IRC network. 

This IRC channel is not &quot;official&quot;, but it is a place that I would like to encourage people to come to chat about the ColdBox framework.  It is on the same IRC network as #ColdFusion, #coldspring, #modelglue, #machii, #fusebox, #transfer and no doubt others.
				 [More]
				</description>
						
				
				<category>ColdBox</category>				
				
				<pubDate>Wed, 08 Oct 2008 21:50:00 -0500</pubDate>
				<guid>http://www.12robots.com/index.cfm/2008/10/8/New-IRC-Channel--ColdBox</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>Convention over Configuration - ColdBox Series Part 5</title>
				<link>http://www.12robots.com/index.cfm/2008/10/7/Convention-over-Configuration--ColdBox-Series-Part-5</link>
				<description>
				
				In my next post, I promise we will get back to coding. But first, I just wanted to make a quick post about &quot;Convention over Configuration&quot; with the ColdBox Framework.

Last time I checked, this was unique to ColdBox, this may have changed for FuseBox though, but ColdBox does not use an XML file to define event handlers, plugins, interceptors, views or anything other than where the framework should look for these things. It is all done through conventions (or standards).
				 [More]
				</description>
						
				
				<category>ColdBox</category>				
				
				<category>ColdFusion</category>				
				
				<pubDate>Tue, 07 Oct 2008 20:11:00 -0500</pubDate>
				<guid>http://www.12robots.com/index.cfm/2008/10/7/Convention-over-Configuration--ColdBox-Series-Part-5</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>Understanding the coldbox.xml config file - ColdBox Series Part 4</title>
				<link>http://www.12robots.com/index.cfm/2008/10/6/Understanding-the-coldboxxml-config-file--ColdBox-Series-Part-4</link>
				<description>
				
				In my previous posts we began building a To-Do list application with ColdBox. If you have not already reviewed the first three parts of these posts, you may want to consider doing so. They are linked at the bottom of the page in the &quot;related posts&quot; section.

In this post we are going to discuss the coldbox.xml file (sometimes named coldbox.xml.cfm &lt;a href=&quot;http://www.12robots.com/index.cfm/2008/7/31/Controlling-Access-to-Config-Files-Custom-Tags-and--other-files--Security-Series-73&quot;&gt;for security reasons&lt;/a&gt;)
				 [More]
				</description>
						
				
				<category>ColdBox</category>				
				
				<category>Object-Oriented</category>				
				
				<category>ColdFusion</category>				
				
				<pubDate>Mon, 06 Oct 2008 19:59:00 -0500</pubDate>
				<guid>http://www.12robots.com/index.cfm/2008/10/6/Understanding-the-coldboxxml-config-file--ColdBox-Series-Part-4</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>A Look at Event Handlers - ColdBox Series Part 3</title>
				<link>http://www.12robots.com/index.cfm/2008/10/1/A-Look-at-Event-Handlers--ColdBox-Series-Part-3</link>
				<description>
				
				In my &lt;a href=&quot;http://www.12robots.com/index.cfm/2008/9/28/Setting-up-a-ColdBox-Application--ColdBox-Series-Part-2&quot;&gt;last post&lt;/a&gt;, we set up a base ColdBox application using the Application Template. So now we have a basic application that welcomes us to ColdBox.  Not very useful.

So let&apos;s look at our Event Handlers and see if we can get them to do something more interesting.

&lt;h3&gt;What is an Event?&lt;/h3&gt;
Since ColdBox is an Event-Driven framework, and since we are going to be &quot;handling&quot; events with our event handlers (clever name), we probably need to understand what an event is.
				 [More]
				</description>
						
				
				<category>ColdBox</category>				
				
				<category>Object-Oriented</category>				
				
				<category>ColdFusion</category>				
				
				<pubDate>Wed, 01 Oct 2008 22:28:00 -0500</pubDate>
				<guid>http://www.12robots.com/index.cfm/2008/10/1/A-Look-at-Event-Handlers--ColdBox-Series-Part-3</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>Setting up a ColdBox Application - ColdBox Series Part 2</title>
				<link>http://www.12robots.com/index.cfm/2008/9/28/Setting-up-a-ColdBox-Application--ColdBox-Series-Part-2</link>
				<description>
				
				I guess I am making this a series. Well, let&apos;s get started.

I am not going to start with the typical &quot;What is a MVC Framework&quot; or &quot;ColdBox is...&quot; kind of posts. For two reasons:

&lt;ol&gt;
&lt;li&gt;No one wants that, we want to jump right into structure and code, right?&lt;/li&gt;
&lt;li&gt;You can already read those things:
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.coldboxframework.com/index.cfm/about&quot;&gt;Overview About ColdBox&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://ortus.svnrepository.com/coldbox/trac.cgi/wiki/ColdBox&quot;&gt;What is ColdBox?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Model-view-controller&quot;&gt;MVC on Wikipedia&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://adobechats.adobe.acrobat.com/p40648765/&quot;&gt;&lt;em&gt;ColdBox Down &amp; Dirty&lt;/em&gt; Connect Presentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://coldfusion.sys-con.com/node/49179&quot;&gt;Model-View-Controller for You and Me&lt;/a&gt; (Warning: sys-con Link)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

In this series we are building a To-Do List application using &lt;a href=&quot;http://www.coldboxframework.com/&quot;&gt;ColdBox&lt;/a&gt; and &lt;a href=&quot;http://www.coldspringframework.org/&quot;&gt;ColdSpring&lt;/a&gt;.
				 [More]
				</description>
						
				
				<category>ColdBox</category>				
				
				<category>UML</category>				
				
				<category>Object-Oriented</category>				
				
				<category>ColdSpring</category>				
				
				<category>ColdFusion</category>				
				
				<pubDate>Sun, 28 Sep 2008 21:34:00 -0500</pubDate>
				<guid>http://www.12robots.com/index.cfm/2008/9/28/Setting-up-a-ColdBox-Application--ColdBox-Series-Part-2</guid>
				
				<enclosure url="http://www.12robots.com/enclosures/ColdBoxApplicationTemplate.zip" length="27492" type="application/zip"/>
				
			</item>
			
		 	
			</channel></rss>