<?xml version="1.0" encoding="utf-8"?>

			<rss version="2.0" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cc="http://web.resource.org/cc/" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd">

			<channel>
			<title>Dave Ferguson&apos;s Blog - ColdFusion 9</title>
			<link>http://blog.dkferguson.com/index.cfm</link>
			<description>Things I have figured out while learning to type.</description>
			<language>en-us</language>
			<pubDate>Sun, 19 May 2013 06:59:52 -1200</pubDate>
			<lastBuildDate>Wed, 28 Sep 2011 11:00:00 -1200</lastBuildDate>
			<generator>BlogCFC</generator>
			<docs>http://blogs.law.harvard.edu/tech/rss</docs>
			<managingEditor>dave@dkferguson.com</managingEditor>
			<webMaster>dave@dkferguson.com</webMaster>
			<itunes:subtitle></itunes:subtitle>
			<itunes:summary></itunes:summary>
			<itunes:category text="Technology" />
			<itunes:category text="Technology">
				<itunes:category text="Podcasting" />
			</itunes:category>
			<itunes:category text="Technology">
				<itunes:category text="Tech News" />
			</itunes:category>
			<itunes:keywords></itunes:keywords>
			<itunes:author></itunes:author>
			<itunes:owner>
				<itunes:email>dave@dkferguson.com</itunes:email>
				<itunes:name></itunes:name>
			</itunes:owner>
			
			<itunes:explicit>no</itunes:explicit>
			
			<item>
				<title>CSV File Reading using cfhttp</title>
				<link>http://blog.dkferguson.com/index.cfm/2011/9/28/CSV-File-Reading-using-cfhttp</link>
				<description>
				
				So, it was asked on twitter if cfspreadsheet could read a csv file.   I quickly looked at the docs and it appeared to me that it could.  The docs even had this example.. 

&lt;code&gt;
&lt;cfspreadsheet action=&quot;read&quot; src=&quot;#theFile#&quot; sheet=1 row=&quot;3,4&quot; format=&quot;csv&quot; name=&quot;csvData&quot;&gt; 
&lt;/code&gt;

However, if you try and do that you get this error:
&lt;code&gt;
An error occurred while reading the Excel: java.lang.IllegalArgumentException: Your InputStream was neither an OLE2 stream, nor an OOXML stream.
&lt;/code&gt;

So, what I figured out was that cfspreadsheet type=&quot;csv&quot; just converts the read xls document into csv format.  Not sure how usefull that is.

So, I started digging into a possible solution.  Then I stumbled into something.  I ran into a post that talked about using cfhttp to load the csv.  So, that got me thinking and I  ended up with this.
&lt;code&gt;
&lt;cfhttp method=&quot;get&quot; url=&quot;http://path.to.csv.file/test.csv&quot; name=&quot;csvData&quot;&gt; 

&lt;cfoutput&gt;#isQuery(csvData)#&lt;/cfoutput&gt;

&lt;cfloop query=&quot;csvdata&quot; &gt;
	&lt;p&gt;
&lt;cfloop list=&quot;#csvdata.columnlist#&quot; index=&quot;i&quot;&gt;
	&lt;cfoutput&gt;
			#csvdata[&apos;#i#&apos;][currentRow]# - 
	&lt;/cfoutput&gt;	
&lt;/cfloop&gt;
&lt;/p&gt;
&lt;/cfloop&gt;
	
&lt;/code&gt;


I was shocked that the isQuery returned true.  So, since it uses the first row as the column names I write some code to loop over the data and out put it.  I honestly didn&apos;t think that this would work.  I just get totally excited when something that I thought would be hard became super easy thanks to ColdFusion.

I have only ran this against ColdFusion 9 so I am not sure about backwards compatibility.


UPDATE:  If the column name contains a space an error will be thrown.  The error happens in the cfhttp tag call so you can&apos;t correct them post call.  Make sure that if you are doing this that your first row contains text that are column name formatted.  I.e... use &quot;my_date&quot; instead of &quot;my date&quot;.

Till next time...

--Dave 
				</description>
				
				<category>ColdFusion 9</category>
				
				<pubDate>Wed, 28 Sep 2011 11:00:00 -1200</pubDate>
				<guid>http://blog.dkferguson.com/index.cfm/2011/9/28/CSV-File-Reading-using-cfhttp</guid>
				
				
			</item>
			
			<item>
				<title>CFFILE odd behavior</title>
				<link>http://blog.dkferguson.com/index.cfm/2011/8/13/CFFILE-odd-behavior</link>
				<description>
				
				While working to restrict an upload I came across an interesting issue with CFFILE.  Lets say that this is your code:

&lt;code&gt;
&lt;cffile action=&quot;upload&quot; filefield=&quot;Form.Photo&quot; destination=&quot;#Path#&quot; nameconflict=&quot;makeunique&quot; result=&quot;Thumb&quot; accept=&quot;image/*&quot;&gt;
&lt;/code&gt;

The &quot;accept&quot; attribute would restrict to only file with an image mime type. The &quot;thumbs&quot; var names in the results attribute will contain the results of the CFFILE action.  If the &quot;result&quot; attribute is omitted the results will end up in a &quot;cffile&quot; var.

Lets say a user uploads a text file instead of an image.  We need to check to see if cffile processed the file.  This is where the odd behavior comes in.  

First, an  error will be thrown that has to be trapped.  There is no &quot;onError&quot; mechanism built into cffile.  Easiest thing to do is to wrap it in a cftry. You can then look at the cfcatch.message for the error.

Next, if there was an error and we tried to check the &quot;thumbs&quot; var we would get another error.  This is because the var does not exist.  However, if you check for a &quot;cffile&quot; var it is an empty struct.

From what I can tell, if the file does not pass the accept check it is not written to the server.  This means there is no cleanup to deal with.

So, the moral of this story is that I wish that cffile had an internal way to handle this.  I don&apos;t think that wrapping it in a cftry is the best solution.

Till next time,

--Dave 
				</description>
				
				<category>ColdFusion 9</category>
				
				<pubDate>Sat, 13 Aug 2011 22:06:00 -1200</pubDate>
				<guid>http://blog.dkferguson.com/index.cfm/2011/8/13/CFFILE-odd-behavior</guid>
				
				
			</item>
			
			<item>
				<title>ColdFusion 9 PNG image processing</title>
				<link>http://blog.dkferguson.com/index.cfm/2010/12/1/ColdFusion-9-PNG-image-processing</link>
				<description>
				
				Recently, I was doing some work on an internal system where I was doing some image processing.  I was taking uploaded images and resizing them into a smaller preview image on request.  The code for this is quite simple.

&lt;code&gt;
&lt;cfimage action=&quot;read&quot; source=&quot;testimg.png&quot; name=&quot;myImg&quot;&gt;
&lt;cfimage action=&quot;resize&quot; height=&quot;150&quot; source=&quot;#myImg#&quot; width=&quot;150&quot;&gt;
&lt;cfimage action=&quot;writeToBrowser&quot; source=&quot;#myImg#&quot;&gt;
&lt;/code&gt;

However, when running the code it was taking between 30-60 seconds to run.  I tried a bunch of different things to get it to work correctly.  I even rewrote it in cfscript to see if that would help.  Well, it didn&apos;t, no difference.  The processing till took forever.  

At this point I opened up the ColdFusion server monitor.  The monitor will allow me to see what the request is actually getting stuck on.  With the monitor running I ran the code again a few times.  Once normal, and another with the image resize code commented out.  The monitor showed me that the code was indeed getting stuck on the resize.

I then started looking at the source images.  The images were all under 1mb so size issue was now out.  On a whim I ran a test using a jpg image.  This time the image processed immediately.  Returned in under a second and resized as expected.  [More]
				</description>
				
				<category>Image</category>
				
				<category>ColdFusion 9</category>
				
				<pubDate>Wed, 01 Dec 2010 17:16:00 -1200</pubDate>
				<guid>http://blog.dkferguson.com/index.cfm/2010/12/1/ColdFusion-9-PNG-image-processing</guid>
				
				
			</item>
			
			<item>
				<title>Removing cffileupload border</title>
				<link>http://blog.dkferguson.com/index.cfm/2010/9/17/Removing-cffileupload-border</link>
				<description>
				
				ColdFusion 9 introduced us to a built in flash based multi-file uploader, cffileupload.  I just recently started using it and ran into something with it that I didn&apos;t like.  The uploader has a background in it that you can&apos;t remove.  When loaded the uploader looks like this...


&lt;img src=&quot;/images/uploaderyes.png&quot; /&gt;

If you notice there is a boarder around the upload control itself.  If you look even more closely you will notice that it is a gradient.  So, even if you set the background of the uploader to the background color of your site it would still appear.  I tried several different methods using the cffileupload tag to remove it but none worked.

Then I started playing around with some css stuff.  After a few trials and errors I ended up with this...

&lt;img src=&quot;/images/uploaderno.png&quot; /&gt;

As you can see the border is gone.  However, also gone, is the rounded corners.  This was an acceptable compromise for me as I wanted the border gone more than I wanted rounded corners.


So how did I do it?  Here is the code.. 

&lt;code&gt;
&lt;div style=&quot;overflow: hidden; width: 412px; height: 335px;&quot;&gt;
	&lt;div style=&quot;overflow: hidden; margin-left: -6; margin-top: -7px;&quot;&gt;
	&lt;cffileupload align=&quot;center&quot; height=&quot;350&quot; name=&quot;multiUploader&quot; url=&quot;UploadHandler.cfm&quot;
	              width=&quot;425&quot; maxuploadsize=&quot;999&quot; stoponerror=&quot;false&quot; bgcolor=&quot;0078AE&quot; wmode=&quot;transparent&quot; title=&quot;File Uplaoder&quot; &gt;
	&lt;/cffileupload&gt;
	&lt;/div&gt;
&lt;/div&gt;
&lt;/code&gt;

Basically, I put it in a div that acts like a mask.  I then move the div up and left using negative margins to hide the border.  If you use this just adjust the height and width accordingly.

Till next time,

--Dave 
				</description>
				
				<category>ColdFusion 9</category>
				
				<category>Flash</category>
				
				<pubDate>Fri, 17 Sep 2010 16:22:00 -1200</pubDate>
				<guid>http://blog.dkferguson.com/index.cfm/2010/9/17/Removing-cffileupload-border</guid>
				
				
			</item>
			
			<item>
				<title>ColdFusion 9.01 hot off the press</title>
				<link>http://blog.dkferguson.com/index.cfm/2010/7/13/ColdFusion-901-hot-off-the-press</link>
				<description>
				
				Get it while it is hot.. well.. get it cause it is free and you should upgrade your servers.  Lots of good stuff in here.  So much in fact is is hard to believe this is just a dot release.

Here is a list of my favorite things in this update: 

&lt;ul&gt;
	&lt;li&gt;Amazon S3 Storage&lt;/li&gt;
	&lt;li&gt;cffile upload/uploadall now available in cfscript&lt;/li&gt;
	&lt;li&gt;CFFEED, CFPOP, CFLDAP now available in script syntax.&lt;/li&gt;
	&lt;li&gt;Ability to access CFCs via ajax that are outside webroot via application or server mapping&lt;/li&gt;
	&lt;li&gt;Support for BlaseDS4 / LCDS 3&lt;/li&gt;
	&lt;li&gt;Multiple datasource support for ORM&lt;/li&gt;
	&lt;li&gt;HQL Support in CFQUERY&lt;/li&gt;
&lt;/ul&gt;


Get all the details here... 

&lt;ul&gt;
	&lt;li&gt;ColdFusion 9.01 Download: &lt;a href=&quot;http://www.adobe.com/support/coldfusion/downloads_updates.html#cf91&quot;&gt;http://www.adobe.com/support/coldfusion/downloads_updates.html#cf9&lt;/a&gt;
	&lt;li&gt;Updated SOLR installer and DW extension: &lt;a href=&quot;http://www.adobe.com/support/coldfusion/downloads.html&quot;&gt;http://www.adobe.com/support/coldfusion/downloads.html&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;Release Notes: &lt;a href=&quot;http://www.adobe.com/support/documentation/en/coldfusion/releasenotes.html&quot;&gt;http://www.adobe.com/support/documentation/en/coldfusion/releasenotes.html&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

Till next time...

--Dave 
				</description>
				
				<category>ColdFusion 9</category>
				
				<pubDate>Tue, 13 Jul 2010 09:00:00 -1200</pubDate>
				<guid>http://blog.dkferguson.com/index.cfm/2010/7/13/ColdFusion-901-hot-off-the-press</guid>
				
				
			</item>
			
			<item>
				<title>Creating Base64 images with ColdFusion</title>
				<link>http://blog.dkferguson.com/index.cfm/2010/4/26/Creating-Base64-images-with-ColdFusion</link>
				<description>
				
				I have been working on recreating a website to make it iPhone compliant.  In doing this I have been investigating numerous ways to reduce calls to the server.  In some demo code I had I saw an image load using a Base64 image.  This intrigued me and I investigated this further.  

I was able to convert all the navigational images in the site to Base64.  This reduced the overall loading call count from 300 to 5.  However, the CSS file was much larger. But even still, the overall load time was reduced by over 50%.

There are numerous advantages and disadvantages do using this technique.  The first large one is browser support.  Since I was targeting the iPhone, this method works fine.  However, IE only supports this with v8 and limited support at that.  Read more about the pros/cons &lt;A href=&quot;http://en.wikipedia.org/wiki/Data_URI_scheme&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;.  [More]
				</description>
				
				<category>Projects</category>
				
				<category>ColdFusion 9</category>
				
				<category>Base64</category>
				
				<pubDate>Mon, 26 Apr 2010 17:17:00 -1200</pubDate>
				<guid>http://blog.dkferguson.com/index.cfm/2010/4/26/Creating-Base64-images-with-ColdFusion</guid>
				
				
			</item>
			
			<item>
				<title>Code from BlazeDS &amp; ColdFusion 9 Presentation</title>
				<link>http://blog.dkferguson.com/index.cfm/2010/4/5/Code-from-BlazeDS--ColdFusion-9-Presentation</link>
				<description>
				
				As promised during my presentation on BlazeDS and ColdFusion 9, here is the code from the presentation. I have also included the slides so you can go through them at your leisure.


&lt;a href=&quot;http://blog.dkferguson.com/Files/BlazeDS_CF9_dferguson.zip&quot;&gt;Download Code&lt;/a&gt;


In case you missed it.  You can see the recording here.  &lt;a href=&quot;http://www.meetup.com/coldfusionmeetup/calendar/12992615/&quot;&gt;BlazeDS and ColdFusion 9...Going Above and Beyond Chat&lt;/a&gt; 
				</description>
				
				<category>Presentations</category>
				
				<category>BlazeDS</category>
				
				<category>ColdFusion 9</category>
				
				<pubDate>Mon, 05 Apr 2010 09:48:00 -1200</pubDate>
				<guid>http://blog.dkferguson.com/index.cfm/2010/4/5/Code-from-BlazeDS--ColdFusion-9-Presentation</guid>
				
				
			</item>
			
			<item>
				<title>ColdFusion Builder released!</title>
				<link>http://blog.dkferguson.com/index.cfm/2010/3/21/ColdFusion-Builder-released</link>
				<description>
				
				In case you just came out of hibernation and were unaware.  Adobe has been working on a code editor for ColdFusion called ColdFusion Builder.  Well, as of today is now available for purchase.  Not only can you get the best ColdFusion code editor but it also comes with Flex Builder 4 Standard.  Now you can create the best of all worlds!

&lt;A HREF=&quot;http://www.adobe.com/products/coldfusion/buy/#cfb&quot;&gt;http://www.adobe.com/products/coldfusion/buy/#cfb&lt;/A&gt; 
				</description>
				
				<category>ColdFusion 9</category>
				
				<category>ColdFusion Bulder</category>
				
				<pubDate>Sun, 21 Mar 2010 22:01:00 -1200</pubDate>
				<guid>http://blog.dkferguson.com/index.cfm/2010/3/21/ColdFusion-Builder-released</guid>
				
				
			</item>
			
			<item>
				<title>BlazeDS &amp; ColdFusion 9 - the onIncomingRequest mystery</title>
				<link>http://blog.dkferguson.com/index.cfm/2010/2/26/BlazeDS--ColdFusion-9--the-onIncomingRequest-mystery</link>
				<description>
				
				In a &lt;a href=&quot;http://blog.dkferguson.com/index.cfm/2010/2/24/BlazeDS-and-ColdFusion-9--Part-1&quot; target=&quot;_blank&quot;&gt;recent blog&lt;/a&gt; I talked about using BlazeDS with ColdFusion 9. I explained how the gateway appeared to differ from other gateways.  The gateway cfc didn&apos;t have to have an onIncomingRequest function defined.  As a matter of fact the gateway didn&apos;t even need to point to a cfc at all.  It could point to a blank cfm file.

After that post I talked with &lt;a href=&quot;http://www.aaronwest.net/blog/&quot; target=&quot;_blank&quot;&gt;Aaron West&lt;/a&gt; about my findings in detail.  Since it was his example that I used for my based he was interested in what I found.  I was also contacted by &lt;a href=&quot;http://nil.checksite.co.uk/&quot; target=&quot;_blank&quot;&gt;Stephen Moretti&lt;/a&gt; as he was interested in my findings a well.  The difference was that Stephen basically said what I found was not accurate.  He has a BlazeDS/ColdFusion9 setup running and if he removed the onIncomingRequest his setup would fail.

Stephen and I talked a lot about his setup.  We talked about the differences between what I had and what he had.  What we discovered was that he was using &lt;a href=&quot;http://livedocs.adobe.com/blazeds/1/blazeds_devguide/help.html?content=ajaxds_4.html&quot; target=&quot;_blank&quot;&gt;FDMS&lt;/a&gt;.  FDMS is the Ajax client library for BlazeDS.  It allows you to use JavaScript to communicate with BlazeDS.  There is still a flash component but you don&apos;t need to know flash to use it.

After knowing how Stephen was using it I went off and built another sample.  After some tweaking I was able to get it up and running.  I ran a few tests to verify messages were being sent then received.  I then removed the onIncomingRequest function from the gateway cfc. Upon doing so I received this message:

&lt;code&gt;
Error [Thread-16] - Error invoking CFC for gateway FlexMessagingJS: The method onIncomingMessage was not found in component /Applications/MAMP/htdocs/BlazeTesting/FDMS/gateway.cfc. 
&lt;/code&gt;

I then created a new sample to test a theory.  I combined the samples I had from Aaron and Stephen to a single example.  I used the code from Aaron&apos;s sample to do the send to BlazeDS.  I then used Stephen&apos;s code to create the consumer.   So now I have a jquery front end submitting to ColdFusion that sends the message to BlazeDS that a FDMS consumer receives.  

After creating this sample I removed the onIncomingMessage from the cfc and ran some tests.  This time the messages made it though without error.  So, what was the major difference?  Quite simple, I removed the part from the FDMS client so that it didn&apos;t register as a producer. I used jquery to send the message to ColdFusion and then have ColdFusion pass the message to BlazeDS.  Thus the producer became the ColdFusion server.

In conclusion it would appear that if the message to BlazeDS is being sent by the ColdFusion server the cfc assigned to the gateway is not ran.  However, if the producer is a different client then the gateway code is ran.

Till next time...

--Dave 
				</description>
				
				<category>BlazeDS</category>
				
				<category>ColdFusion 9</category>
				
				<pubDate>Fri, 26 Feb 2010 11:21:00 -1200</pubDate>
				<guid>http://blog.dkferguson.com/index.cfm/2010/2/26/BlazeDS--ColdFusion-9--the-onIncomingRequest-mystery</guid>
				
				
			</item>
			
			<item>
				<title>BlazeDS and ColdFusion 9 - Part 1</title>
				<link>http://blog.dkferguson.com/index.cfm/2010/2/24/BlazeDS-and-ColdFusion-9--Part-1</link>
				<description>
				
				Lately I have been itching to build something with BlazeDS.  I have seen a couple presentations on it and am very intrigued by what one could do with it.  After doing some reading and a presentation on it I decided to jump in and just build something.  

I grabbed the code that &lt;A HREF=&quot;http://www.aaronwest.net/blog/index.cfm/BlazeDS&quot; target=&quot;_blank&quot;&gt;Aaron West&lt;/A&gt; created for his BlazeDS / ColdFusion 9/ Flex presentation to use as a reference.  I read though his presentation docs and configured ColdFusion in just a few minutes.  The rest was a snap and I had the code from his demo running in little under 30 minutes.

I then started to expand the code to do more advanced things with it.  The main thing I wanted to accomplish was to send a message to a specific consumer.  I found out that had to inject a custom header that the consumers could filter on.  This seemed very straightforward to do.  Especially since the sample code from Aaron showed how to set a header var. This simple task ended up taking me 2 days to figure out.  [More]
				</description>
				
				<category>BlazeDS</category>
				
				<category>ColdFusion 9</category>
				
				<pubDate>Wed, 24 Feb 2010 18:02:00 -1200</pubDate>
				<guid>http://blog.dkferguson.com/index.cfm/2010/2/24/BlazeDS-and-ColdFusion-9--Part-1</guid>
				
				
			</item>
			
			<item>
				<title>Using Query of Queries with CFDirectory</title>
				<link>http://blog.dkferguson.com/index.cfm/2010/2/17/Using-Querie-of-Queries-with-CFDirectory</link>
				<description>
				
				So..  I was using CFDirectory to get a list of files.  I then wanted to use the result and use Query of Queries to get files that had a modified date more than 2 days ago.  

Sounds pretty basic right?  I thought so too. Then I wrote the code and found out otherwise.

This was the code I started with:
&lt;code&gt;
&lt;cfdirectory action=&quot;list&quot; directory=&quot;f:\temp&quot; name=&quot;cfdFileList&quot; recurse=&quot;true&quot;&gt;

&lt;cfquery name=&quot;fileList&quot; dbtype=&quot;query&quot;&gt;
	select * 
	from cfdFileList
	where type = &apos;File&apos;
	and datelastmodified  &lt; #dateAdd( &quot;d&quot;, -2, now())#
&lt;/cfquery&gt;
&lt;/code&gt;

No matter what this always returned 0 results. After some trial and error I figured out the date comparison in the where clause was failing.  From what I could tell ColdFusion was not treating the data types as dates.

I tried everything I could think of to get CF to treat them as dates.  Then, &lt;A HREF=&quot;http://jdowdle.com/wp/&quot; target=&quot;_blank&quot;&gt;John Dowdle&lt;/A&gt; pointed me to using CAST() on the dates.  

First couple tries did not work.  So, with my new found knowledge I hit the interwebs to see how to do it.  After a quick search I found a post by &lt;A href=&quot;http://www.bennadel.com/blog/379-ColdFusion-Query-of-Queries-Unexpected-Data-Type-Conversion.htm&quot; target=&quot;_blank&quot;&gt;Ben Nadel&lt;/A&gt; about this very subject.  However, Ben&apos;s blog post was a few years old so I was not sure if it was still relevant.  I figured I got nothing to loose at this point so I used his example.

What I ended up with was this:

&lt;code&gt;
&lt;cfquery name=&quot;fileList&quot; dbtype=&quot;query&quot;&gt;
	select * 
	from cfdFileList
	where type = &apos;File&apos;
	and CAST( [datelastmodified] as date)  &lt; cast(&lt;cfqueryparam cfsqltype=&quot;CF_SQL_DATE&quot; value=&quot;#dateAdd( &quot;d&quot;, -2, now())#&quot;/&gt;  as date)
&lt;/cfquery&gt;
&lt;/code&gt;

I had to use cast on both sides of the comparison to get it to work.  Also, it would fail if I did not use cfqueryparam.  This just seems like very strange and odd behavior.  One would think that ColdFusion could handle the data types much better than this.

BTW... I am using ColdFusion 9 so I don&apos;t see this going away anytime soon.

Till next time...

--Dave 
				</description>
				
				<category>ColdFusion 9</category>
				
				<category>cfdirectory</category>
				
				<pubDate>Wed, 17 Feb 2010 11:04:00 -1200</pubDate>
				<guid>http://blog.dkferguson.com/index.cfm/2010/2/17/Using-Querie-of-Queries-with-CFDirectory</guid>
				
				
			</item>
			
			<item>
				<title>ColdFusion VFS Manager released</title>
				<link>http://blog.dkferguson.com/index.cfm/2009/10/5/ColdFusion-VFS-Manager-released</link>
				<description>
				
				Now that ColdFusion 9 is released I can release the project I have been working on for a while.  

Read all about it here:  &lt;A HREF=&quot;http://vfsmanager.riaforge.org&quot;&gt;http://vfsmanager.riaforge.org/&lt;/A&gt; 
				</description>
				
				<category>ColdFusion 9</category>
				
				<category>VFS Manager</category>
				
				<pubDate>Mon, 05 Oct 2009 00:46:00 -1200</pubDate>
				<guid>http://blog.dkferguson.com/index.cfm/2009/10/5/ColdFusion-VFS-Manager-released</guid>
				
				
			</item>
			
			<item>
				<title>ColdFusion 9 Released</title>
				<link>http://blog.dkferguson.com/index.cfm/2009/10/5/ColdFusion-9-Released</link>
				<description>
				
				Just in-case you missed the billion tweets and blog entries here is another...


&lt;A HREf=&quot;http://www.adobe.com/products/coldfusion/?promoid=BQSVB&quot;&gt;ColdFusion 9&lt;/A&gt; 
				</description>
				
				<category>ColdFusion 9</category>
				
				<pubDate>Mon, 05 Oct 2009 00:41:00 -1200</pubDate>
				<guid>http://blog.dkferguson.com/index.cfm/2009/10/5/ColdFusion-9-Released</guid>
				
				
			</item>
			
			<item>
				<title>ColdFusion 9 - Deleting all items in VFS</title>
				<link>http://blog.dkferguson.com/index.cfm/2009/9/4/ColdFusion-9--Deleting-all-items-in-VFS</link>
				<description>
				
				Deleting all files from a directory or the entire directory tree has become very trivial.  Especially since ColdFusion 7 when the recurse attribute was added.  With VFS (ram drive) you can use all the same tags to manage drive contents as you would with a physical drive. 

So... to remove the entire content of the VFS you can use one line of code:

&lt;code&gt;
&lt;cfdirectory  action=&quot;delete&quot; directory=&quot;ram://&quot; recurse=&quot;true&quot; &gt;
&lt;/code&gt;

However, in doing so ColdFusion throws an error:

&lt;B&gt;
 The specified directory attribute ram:/// cannot be deleted.&lt;BR&gt;
You may not have permissions to delete this directory. The exception occurred during a cfdirectory action=&quot;delete&quot;. 
&lt;/B&gt;


The essence of the error is true.  You can&apos;t delete the &quot;ram://&quot; root.  So, all you have to do is suppress this error using cftry.  But be careful this will not only suppress the error we expect but any unexpected errors as well.

Till next time.... 

--Dave 
				</description>
				
				<category>Code Examples</category>
				
				<category>ColdFusion 9</category>
				
				<pubDate>Fri, 04 Sep 2009 09:42:00 -1200</pubDate>
				<guid>http://blog.dkferguson.com/index.cfm/2009/9/4/ColdFusion-9--Deleting-all-items-in-VFS</guid>
				
				
			</item>
			
			<item>
				<title>CFHOUR() Show #15 - Interview with Adam Lehman</title>
				<link>http://blog.dkferguson.com/index.cfm/2009/7/17/CFHOUR-Show-15--Interview-with-Adam-Lehnam</link>
				<description>
				
				Check out our interview with Adam Lehman from Adobe for the CFHour().com podcast.
&lt;BR&gt;

&lt;A HREF=&quot;http://bit.ly/51Av1&quot;&gt;http://bit.ly/51Av1&lt;/A&gt; 
				</description>
				
				<category>ColdFusion 9</category>
				
				<category>CFHour.com</category>
				
				<category>Interview</category>
				
				<pubDate>Fri, 17 Jul 2009 16:49:00 -1200</pubDate>
				<guid>http://blog.dkferguson.com/index.cfm/2009/7/17/CFHOUR-Show-15--Interview-with-Adam-Lehnam</guid>
				
				
			</item>
			</channel></rss>