Blog

ColdBox 3.0.0 Beta 2 Released!

Luis Majano October 07, 2009

Spread the word

Luis Majano

October 07, 2009

Spread the word


Share your thoughts

In spirit of releasing more stuff, here is our next milestone for our 3.0.0 release Beta 2.  This beta keeps in spirit of innovation of the 3.0.0 series, but please note that if you are upgrading from previous releases you will need to follow our compatibility guide in order to get your application 3.0.0 compatible.  You can check out our What's New in 3.0.0 document and see all of the documentation of the new features or changed features of 3.0.0.  Please mark it as the documents are constantly being updated as release progresses.

Here is a list of tickets closed for our Beta 2 Milestone:

#408
Deprecate - webservices DevURL attribute. No longer needed
#522
Create More Cache load tests and concurrency tests and long-running tests
#674
Instead persistVariables() method we now use flash objects. But compatibility is still kept
#694
Handler Service throwing error when no handlers found even though external handlers are defined
#713
testing classes are not respecting the persistence over requests
#718
Make every field after settings dynamic using ${} replacement
#758
new MI setting: ModelsDefinitionFile which points to ModelMappings.cfm by convention
#760
Ability to have a list of external locations for ModelsExternalLocation
#761
new context method: event.noExecution() to not execute a main event, you can use this to simulate servlets via interceptors or ses routing
#766
getDecimalSymbols on i18n plugin has an error on getPlusSign method.
#773
If translation does not exist in current resource bundle, it will now look in the default resource bundle for the translation
#774
add singleton support to handlers and plugins just like model integration
#775
better exception handling on handler and plugin creation
#781
Mockbox not recognizing argument's signature for mocked methods.
#786
New Flash Ram object on handlers, plugins, interceptors,layouts and views. out of the box we support flash ram destinations as: session,client,cluster,coldbox cache. You can also create your own flash ram providers
#806
category inheritance for loggers
#807
2.6.3 logging settings are now all deprecated in favor of logbox configuration
#808
Logger plugin completely updated to support logging now via LogBox
#819
onInvalidEvent redirection not standardized
#820
New autowire DSL elements: logBox, logBox:rootLogger, logBox:logger:category name
#832
requestService appending form/url collections twice unecessarily
#838
invocation paths for plugins, handlers, models where not fully parsed for dot notation and caused problems on metadata
#842
QueryHelper plugin now supports case insensitive sorting
#843
resource bundle, getResource() add a default argument for returning defaults
#847
New implicit handler: missingTemplateHandler that will execute in the onMissingTemplate Handler
#849
missing ApplicationTemplateSimple
#850
regex bug when clearing events from cache using query strings
#851
event caching not taking into consideration incoming form arguments when building the cache hashes
#852
New ses method: setAutoReload() which can make the interceptor reload its routes in each request. Mostly for dev.
#853
resource bundle plugin update to support concurrency issues, default locales and default values when getting resources
#854
when using setLayout() you can now also send in the name (alias) of the layout as registered in the configuration file. You basically create an alias to layouts so you reference them by name instead of by filename
#856
New interceptor annotation on methods: eventPattern, a regex that will be used to ONLY execute the interception point if the incoming event matches the regex
#857
ses is not allowing external configuration files to be loaded
#858
BeanFactory is not allowing external configuration files to be loaded
#861
Typo on UknownTranslation when it should be UnknownTranslation
#862
Deploy interceptor new property: DeployCommandModel that points to a model object that will be used for the execution
#863
preRender interception point not copying back the potentially modified content string back for rendering
#865
isEmail validation checks need to allow for + in the email addresses
#868
Plugins, Handlers, Interceptors new data member: log which is a pre-configured logger for that object
#869
Addition of getLoadedURLs() to see what resources are being loaded by the javaloader
#870
Ability to append resource paths of jars, clases to a current loaded javaloader plugin
#871
New data members for all plugins,interceptors,handlers: log (pre-configured logger object), logBox (A logbox reference), flash (A reference to your app's flash object)
#875
MTCacheManager bug when expiring by key snippets asynchronously. objectKey not found, when it should be keysnippet
#876
controller throwing exception when relocating with ses mode and no varstruct's defined
#877
handlerservice not relocating on invalid events when handler is invalid
#880
getModel() optional call to init()


Add Your Comment

Recent Entries

Coming Soon:  Version 4 Docker CommandBox Images with Enhanced Performance

Coming Soon: Version 4 Docker CommandBox Images with Enhanced Performance

CommandBox Docker images were the first CFML docker images and have nearly 2 million pulls, since their inception, to date. It's been a source of pride at Ortus that these images have been the most popular and reliable way to run CFML in containers and we are so very pleased to announce the next evolution, which will be the v4 images which run entirely on the BoxLang CLI and represent a significant overhaul of the image architecture.

These images are now available to test by appending -snapshot to your existing version tags and wil be released as stable, once CommandBox v6 emerges from release candidate status and is published as stable.

Jon Clausen
Jon Clausen
October 30, 2026
Free observability with BxMCP: give your AI agents eyes inside a live BoxLang runtime

Free observability with BxMCP: give your AI agents eyes inside a live BoxLang runtime

Ortus Solutions today announces that bx-mcp, the Model Context Protocol (MCP) server for BoxLang, is now free for everyone. Install it, point any MCP capable client at it, and your AI coding assistant, IDE agent or automation pipeline can inspect and operate a live BoxLang runtime: JVM, caches, datasources, slow requests, schedulers, logs and more. No BoxLang+ subscription required.

Luis Majano
Luis Majano
October 29, 2026
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