Lessons Learned in Making Many Mach-II Modules Out of Standalone Apps

Posted 30 December 2009

This entry is about a month overdue, but given the holidays and Getting Stuff Done (SM) at work, it’s been delayed.

As I mentioned in my first posting in the series, I’m in the process of converting a bunch of standalone Mach-II apps in to modules inside of a new, monolithic application. It’s been a surprisingly smooth process, thanks to the tools that the Mach-II framework gives us to work with. Most of the bumps along the way have been related to bad software design practices in some of the oldest apps that I’ve created, and continuing, after many years building Web applications, to do dumb things like hardcoding URLs and other strings which will change when converting the app to a module (or moving the app to a different server).

Here are a few key lessons I’ve learned:

<event-handler event="exception">
  <filter name="tryToRecoverFromExceptionFilter" />
  <-- OR -->
  <notify listener="someListener" method="doSomeErrorProcessing" />
  <-- FINALLY -->
  <announce module="" event="exception" copyEventArgs="true"/>
</event-handler>

So that’s it for this series. I have to give major props to the Mach-II team for making it so easy to convert existing Mach-II applications to Mach-II modules. It’s made this big project so much easier.

Categories: ColdFusion