Blog

ColdBox 4.0 Module Enhancements

Curt Gratz February 02, 2015

Spread the word

Curt Gratz

February 02, 2015

Spread the word


Share your thoughts

One of the biggest things we changed about ColdBox 4.0 is making tons of the core completely modular.  To support this change, we needed to enhance our modules architecture which brought some cool new features to you.  

Module Inception

Every time I talk about ColdBox modules with people, I get asked if modules can contain modules, which up to now wasn't an option. But the first Module Enhancement I'd like to bring to your attention is just that.  We call it Module Inception.  This will allow for even greater ways for you to build and architect your applications.  Modules can be nested to the Nth degree.  Creating a ton of options and flexibility for you the developer in how you organize your code.

Module Dependencies

The next Module Enhancement I'd like to point out is Module Dependencies.  This allows for you to ensure the modules that are needed to support your module are available and active before before your module is loaded.  This is handy in controlling activation order (avoiding chicken and egg problems) and again gives you better options as you architect your applications with modules.

Module Model Wirebox Mappings.

Now your module models will be mapped in Wirebox automatically similar to how your ColdBox model folder is mapped.  The mappings will be setup with the DSL that is model@modulename.  For example.

property name="orderService" inject="OrderService@store";

Of course, if you don't want it to work this way, we give you a setting called autoMapModules that you can set to false if you don't want to map your models in your modules.

These are just a few of the Module Enhancements.  To check them all out, read our wiki page at 

http://wiki.coldbox.org/wiki/WhatsNew:4.0.0.cfm#Module_Enhancements

Add Your Comment

Recent Entries

Introducing the BoxLang Spring Boot Starter: Dynamic JVM Templating for Spring

Introducing the BoxLang Spring Boot Starter: Dynamic JVM Templating for Spring

Spring Boot developers know the pain of evaluating view technologies. Thymeleaf is great — until you need more expressiveness. FreeMarker is powerful — until the syntax fights you. What if you could write templates in a dynamic JVM language that gives you the full power of the platform, feels natural, and requires zero setup to integrate?

Meet the BoxLang Spring Boot Starter.

Luis Majano
Luis Majano
March 13, 2026
Why Swiss Banks Are Modernizing CFML Platforms Without Rewrites

Why Swiss Banks Are Modernizing CFML Platforms Without Rewrites

The growing need to evolve legacy financial platforms safely

Many Swiss banks and financial institutions still operate important systems built on ColdFusion and CFML platforms.

These systems manage a wide range of functions, including:

  • internal banking workflows
  • reporting systems
  • client portals
  • data integration platforms
  • compliance and risk management tools

In many cases, thes...

Cristobal Escobar
Cristobal Escobar
March 13, 2026
Reactive vs Proactive ColdFusion Support: Why Waiting for an Outage Is the Most Expensive Strategy

Reactive vs Proactive ColdFusion Support: Why Waiting for an Outage Is the Most Expensive Strategy

Many ColdFusion environments operate in a reactive mode without realizing it.

Everything seems fine… until something breaks.

A server crashes.

Performance drops suddenly.

An integration stops working.

A security audit reveals missing patches.

At that point the response is urgent:

“Can someone help us fix this now?”

Emergency support is sometimes unavoidable. But when reactive intervention becomes the norm, it usually means something deep...

Cristobal Escobar
Cristobal Escobar
March 12, 2026