Blog

Curt Gratz

May 28, 2010

Spread the word


Share your thoughts

Today I was getting ready to send a file from my app to the browser for the user to download.  I was all set to use cfcontent to do this, but knowing ColdBox I thought I would do a quick check to see if the framework had any nice convenience methods for me to use to make life easier and sure enough... sendFile() in the core Utilities plugin.

getPlugin("Utilities").sendFile(file="test.txt");

So, this post is just a quick word of advice.  Don't reinvent the wheel.  If you are doing something, anything common, check the docs and see if ColdBox can do it for you.  You will be amazed at whats available in the core plugin set already for you to use.  

Plug it In

Plug IT IN

Here are just a few I use commonly.

ORMService - generic ORM Service helper for Hibernate
QueryHelper - all sorts of goodies in here, sorting queries is one of my favorite. Or the querySim.
Validator - all sorts of standard validation methods here. checkEmail and checkIPAddress are my favorites.
FileUtils - This is a utilities library that are file related. Lots of fun methods here.
Utilities - A good mix of a variety of handy methods, like todays gem sendFile()

 

Add Your Comment

(5)

May 28, 2010 15:44:19 UTC

by Tony Nelson

I wonder why sendFile() is inside Utilities and not FileUtils.

May 29, 2010 22:02:18 UTC

by Luis Majano

We are still refactoring our utilities so soon they should all be in the correct locations

May 30, 2010 05:43:03 UTC

by Sana

FileUtils Plugin already have sendFile method in ColdBox 3.0 M5.

Mar 18, 2011 13:41:47 UTC

by Alexadra

Hello,

Do you have an example where I can see how to use getPlugin(Utilities).sendFile(file=test.txt).

Mar 18, 2011 16:32:50 UTC

by Curt Gratz

Alexadra,

That is all there is to it, just call the getPlugin(Utilities).sendFile(file=test.txt). The test.text can be change to a relative path to any file you which to send to the users browser for download.

One thing to note though is that this was refactored in to the fileUtils plugin.

getPlugin(FileUtils).sendFile(file=test.txt);

Thanks,

Curt

Recent Entries

Inherited a CFML Application With Few Tests? Here’s Where to Start!

Inherited a CFML Application With Few Tests? Here’s Where to Start!

You need to change an application that has been running for years.

It might be a ColdFusion customer portal, a Lucee application supporting internal operations, or a CFML system your team is preparing to modernize. People depend on it, but some of its behavior lives in old tickets, scattered documentation, and the memory of whoever has supported it longest.

Now a release is approaching. You know more testing would help. The difficult part is deciding where to begin without putting every other priority on hold.

Start with one important workflow and build evidence around what it needs to do.

Explore Ortus Quality Assurance Services

Maria Jose Herrera
Maria Jose Herrera
October 27, 2026
Your ColdFusion Upgrade Passed. Did Your Business Workflows?

Your ColdFusion Upgrade Passed. Did Your Business Workflows?

The server restarted. The administrator shows the expected version. Your homepage loads, and a few familiar screens look fine.

Would you tell the business the upgrade is complete?

Consider an illustrative scenario: a customer submits an order after an upgrade. The application saves it and displays a confirmation page. But the confirmation email never arrives, and the scheduled process that sends the order to fulfillment has not completed.

From the browser, the transaction...

Maria Jose Herrera
Maria Jose Herrera
October 22, 2026