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

TestBox: Write Better Tests, Build Better BoxLang & CFML Apps

TestBox: Write Better Tests, Build Better BoxLang & CFML Apps

Building reliable software isn’t just about writing good code it’s about proving it works, every single time. As applications grow in complexity, having a solid, expressive, and flexible testing framework becomes essential.

That’s where TestBox comes in.

Victor Campos
Victor Campos
February 13, 2026
BoxLang NeoVim Plugin Released

BoxLang NeoVim Plugin Released

We're excited to announce the release of the BoxLang NeoVim Plugin - a comprehensive syntax highlighting solution designed specifically for BoxLang developers working in Vim and NeoVim environments. This isn't a port or adaptation of existing CFML syntax files; it's a ground-up implementation built for BoxLang's modern feature set. Coming soon as well will be our runners, syntax validators, and integration with our LSP for live previews, insights, and much more.

Luis Majano
Luis Majano
February 13, 2026
Announcing Cloud-Native BoxLang for $5/Month

Announcing Cloud-Native BoxLang for $5/Month

TL;DR: We just released a production-ready starter template that deploys a modern BoxLang application to DigitalOcean App Platform in under 5 minutes—starting at just $5/month. One-click deployment, auto-scaling, automatic redeployments, and zero downtime included.

Luis Majano
Luis Majano
February 10, 2026