Frustrations with Fusebox After All These Years…

I’ve been using Fusebox for well over 6 years now. Its the only framework I have have ever used when developing applications for clients or myself. Its served its purpose well and has always seemed to fit my needs. However, lately I have been running into some things that are frustrating me about it. Mostly when it comes to working with other frameworks for CFC’s and throwing in an ORM here and there.

I have been working on an application over the last month or two that I wrote in FB5 and ColdSpring. At first it was fine. Mostly due to the custom lexicons written by Nathan Strutz to instantiate ColdSpring and get beans from the factory right in the XML control file. Then after seeing Mark Mandels Breezo on the Transfer ORM, I decided I wanted to give it a whirl and throw it into the mix. Now this is where things started to get interesting (read aggravating).In all of my applications, I make every effort to call any objects that Im going to need in that fuseaction from the controller and avoid calling any of them from the actual display files. Why use MVC if you are going to call objects right in the display file? Well, I started having issues calling some of Transfers methods in the XML syntax of the controller. Mixing of double quotes and single quotes within the call which is already double quoted just wreaks!!

This would be made much simpler ofcourse with some custom lexicons to call the transfer objects. But I feel like maybe the framework should be able to handle this already. Or if the actual controllers were written using CFML in CFC’s similar to Model-Glue, that would be even better. With all of the great advances that Fusebox has made, the one thing I like about the old version 2 and 3 releases of Fusebox was that the controllers were written in CFML. Granted they were just big switch/case statements but at least in the controller you had the ability to wire things together with code.

I know there was a little uprising lately in the community about the use of XML vs. CFML in control files and I tried to stay neutral on the topic since I didnt really have any experience with other frameworks. But the more I play around with Model-Glue, thats the one thing that is really driving me toward that camp and away from using Fusebox.

I wish there was a combination of the two. Or just a Fusebox that used CFC’s for the controller files instead of the XML based circuit.xml files. At least for the main application controllers anyways, for the view controllers an XML based controller is fine since they serve no purpose but to include the relevant view files and require no logic to perform that function.

5 thoughts on “Frustrations with Fusebox After All These Years…”

  1. I’ve avoided Fusebox like the plague since I tried using it way back in like the 1.0 version of it. Back then there were promises of being able to "drop-in" a circuit and have it "just work", total BS. Over the years I’ve seen it become more and more complex, bloated, and generally move away from CFML in favor of XML. I still have no idea who makes the calls in these decisions, but they’re dumb calls nonetheless. Why does FB insist on using XML, who knows, maybe just to be different, but in any case, I’m glad I’m not a user.

  2. Tony,
    I’ve had great success with dropping circuits in and having them "just work." As for your attitude on anything Fusebox, it sounds more like a personal distaste that’s turned into a bitter hatred. You don’t have to hate Fusebox and everything related, it’s just something you don’t like that contradicts with your fundamental development methodology.

    Some people love the XML based controllers, some hate them. I can see it both ways. It’s interesting to hear it at least. Who knows, there’s always fusebox 6.

  3. Tony,

    I too have had much success in dropping circuits into another application and have them work both in the older versions of fusebox all the way up to dropping an FB4.1 circuit into a current FB5 app. I dont think the XML is a "killer", the framework still has a HUGE amount of benefits. However, I do think that the XML is limiting the functionality that could be achieved in the framework.


    Your right. Its always been a mixed camp. I can remember the discussions back on the old Topica FB list about using XML for things, especially the switch to XML based Fusedocs. I can see the benefit of XML based documentation but I am really started to feel limited by the XML controllers. Dont get me wrong, I still love Fusebox. I love the community around FB and I will continue to use it. But I may be moving more toward something like MG for some bigger apps.

  4. Russ,

    Have you given a look to ColdBox? It is fully featured, plays well with other frameworks, has extensive documentation and has served under the covers for a major production site for quite a while now.

    It also does not use XML.


  5. @Dan,

    No I havent looked at Coldbox yet. I have seen it mentioned a few places but just havent taken the time yet.

    I will do that sometime today though. Im playing around with MG:U a little right now and it seems pretty cool.. things I like about it and things I dont but that comes with every framework I guess ;o)

Leave a Reply

Your email address will not be published. Required fields are marked *