ColdFusion Muse

Remembering Wil Genovese

Mark Kruger December 8, 2020 11:07 AM Humor and Life Comments (8)

Our friend and colleague Wil passed away a few days ago after a hard-fought battle with cancer. Wil worked for CF Webtools for almost 10 years. His devotion and expertise are irreplaceable. He has posted on this blog frequently and was a frequent writer on his own excellent blog at Trunkful.com. His role here was as a senior architect and knowledge expert. His influence was felt throughout our staff.

CF Webtools is a company built on people and a certain culture. We have 4 core values that are a part of our DNA as a company - Caring, Competence, Communication, and a Can-do spirit. Despite the alliteration, these are not "aspirations". They are what make us tick from the top down. Wil exemplified all these attributes in our company. He cared about our customers and his co-workers. He was excellent at communicating his wealth of knowledge - indeed, probably half of the entries in our large internal Wiki were written by Wil. I trusted him to handle a sticky problem and find a solution. When it came to solving problems, Wil had determination. He was stubborn! And he thought around corners in a way that always reminded me of me.

As a man, Wil was larger than life. He was funny, affable, and generous with his time. He loved cigars, good food, good bourbon, and his jeep. He was gentle with big-hearted self-effacing humor that always made us smile.

He died too young, but during the time we knew him, he lived well - loving and honoring those around him, building friendships, and adding joy to those he knew. May the same be said of all of us. We at CF Webtools will miss him dearly.

  • Share:

Yes We are Looking!

Mark Kruger June 3, 2020 3:40 PM Job Openings Comments (0)

CFWT is growing again. We are looking for one, possibly two senior ColdFusion developers to join our staff. Our group is close-knit, dynamic and knowledgable. Here are a few things you should know.

  • Yes you work from home and we will not ask if you are wearing a mask.
  • You must be located in the US and legal to work here. (No agencies or overseas - sorry)
  • Yes the position is W2 with benefits after a short (30 day) trial period.
  • Yes benefits include health care.
  • No our health care won't cover your hello fresh diet, but it's still pretty good.
  • Yes there are other benefits - 401k, dental, PTOs, disability, life insurance, and a water cooler chat that keeps humming with each new edition.
  • We work with our customers to meet their needs. We do not dictate the environment or the strategy. We are at their disposal (meaning we serve them - not that we stand at the kitchen sink).
  • Yes you will have to take a coding test. The test involves logging into a VM and coding through a few simple tasks. It should take you about an hour. We look at everything you do and there are no right answers. The focus is patterns of behavior and general problem solving and knowledge.
If you are still interested. Here is the sort of developer we are looking for.


Senior ColdFusion developer

This position is on a high quality team maintaining, upgrading and enhancing a broad suite of complex applications. Responsiveness, communication, security mindedness and teamwork are key elements of the ideal candidate.

  • Mac User (especially for development). If you know Vagrant that's a plus.
  • reactJS.
  • Framework experience (especially FW/1)
  • Lucee experience.
  • High DB Skills in MSSQL or MySQL including optimization, design and indexing.
  • Familiarity with SCRUM, Git, Agile and Jira as primary elements of SDLC
Folks on this team usually love it. It's engaging and interesting and contains some giant brains who are eager to share.


More about CFWT

We are not recruiters. We are not generalists either - we focus on the CF stack and try to know "all things ColdFusion". Yes you will work with and for customers but we care about developers and work culture. We try to find what makes you tick and we hope to provide a work environment where you can grow. We want you to want to come to work every day. We are looking for developers that match our culture of Can-do, Caring, Communication and Competency. Here's some items that you need in order to fit in here.

  • You should be able to setup multiple local environments on your own with a minimum of assistance. Probably this means words like "Apache" or "IIS" shouldn't scare you too much. Yes you will be exposed to ______ (windows/mac) even if you are religiously devoted to ________ (windows/mac). We don't make the rules.
  • Communication is key. We like folks who can write well and know how to show empathy and collaborate with others. Most of our customers use some form of agile, so being on time to stand ups and prepared to respond is key. You will also be required to record (log) your hours on a daily basis. We make it easy but a surprising number of developers struggle with this task.
  • You should be able to work with SVN or GIT and sometimes other source control products.
  • You should Maintain positive attitude - We interact with respect and gentle humor. Snark is minimized and encouragement is the order of the day. If you are quirky and self deprecating that will be a plus and you will love it here.
  • You should Maintain and enhance your skills set - you will be given the opportunity to work on lots of code, different versions, platforms, integrations, libraries and SDLC organization and procedure. Everyone of these is a growth opportunity. If that has you licking your chops climb aboard.
  • We like Balanced Developers - Our devs have a full life. They ride horses, snowshoe, skydive, sword fight, play instruments, love dogs, golf, learn languages, rear children, go to plays, like to bake, fish, hunting, equestrian sports, skydiving, guitar playing, dog training, macramé, Golf, racquetball, Mandarin, Politics (careful!), family outings, child rearing, school plays, choirs, baking, snowshoeing, ice fishing, hunting, aquaponics, mudding, and the list goes on. We love it all! We think those things make you a better developer and it makes us want to be around you. We aren't looking for 80 hour a week developers slavishly devoted to coding. We are looking for eclectic, interesting people who enjoy coding and want to do it for a living.
Hopefully this helps explain how we operate enough to pique your interest. If you want to take a shot send your resume to jobs@cfwebtools.com or call (402) 408-3733 ext 105 and ask for the Muse. We look forward to hearing from you!

  • Share:

Job Posting: Looking for CF Administration and server specialist

Mark Kruger January 22, 2020 1:20 PM Job Openings Comments (0)

Hey folks, we continue to grow and expand here at CFWT. Our Ops department is looking for a CF jack of all trades who isn't afraid of AWS or servers. Details below - see if you qualify!


Seeking a ColdFusion Systems Administrator for CF Webtools. We are in Omaha, NE and are accepting both local and remote positions.

  • Yes, you may work from home, so pants are optional unless you are video conferencing.
  • Looking for folks legal to work in the US only. (sorry! We still love you world!)
  • Yes, the position is W2 with full benefits. PTO, healthcare, IRA, dental, vision, disability, life, and a positive, encouraging environment.
  • Our operations group consists of 4 team members so far.
  • They spend their days fixing, migrating, managing and upgrading servers.
  • AWS is involved in about 80% of what we do.
  • You will need to be able to find memes that appropriately obscure as inside jokes among your team members.
  • They are on call 24×7. We rotate out weekends and make sure you have enough "you and family time". But after-hours calls are very minimal. However, you will be responsible for some scheduled "late nighters" for upgrades and migrations. We try and keep your overall hours to about 40 hours a week average still.
  • Plenty to do. Lots of scrambling. Lots of appreciative customers and developers who will see you as a savior if you can fix their problem.

We are looking for someone experienced in ColdFusion. Perhaps you are a CF developer looking to change it up or you are already experienced in JVM tuning, lockdowns and such. This job will involve managing servers (this is not a help desk job) – provisioning, migrating code, upgrading the OS and more. On the ColdFusion side you'll be handling complex troubleshooting, upgrades, updates, installations and more. But don't get too hung up on only ColdFusion. We also touch other technologies such as WordPress, Python, PowerShell, MS SQL, My SQL, NoSQL and more. Below are some of the technologies we use and you will need to work with. To qualify, you should know more than a few of these:

  • Linux – For this job you probably need more than just a passing knowledge of Linux. You should be fluent in Linux administration. If you've set up some distros, used YUM or other package managers, know how to find stuff on a Linux box etc. you are probably qualified. But the more the better!
  • Windows Server – We have a high percentage of Windows servers. Operations manages backups, patching, migrating, upgrading etc.
  • AWS – about 70% of our managed stack is AWS. If you apply for this job you will be expected to eventually test for an associate certification. Training (online Udemy) and testing are paid for, but you must put in the work to get there. Just like college, except more fun!
  • Java/Tomcat – Our primary stacks invariably include Tomcat/JVM. If words like garbage collection, heap, context, web connectors etc. seem familiar you are on the right track.
  • Networking – you should know your way around a network stack, be familiar with firewall rules, IP addressing, NAT etc.
  • Troubleshooting – you should understand how to troubleshoot issues that arise from CPU, memory or disk constraints and performance.
  • DNS – you should understand DNS zones and record types, how they work, and how to modify them.
  • Web Servers – You should understand how to set up a website in one or both Apache and IIS.
  • Email Servers – We manage several email servers or email relays.
  • Jenkins – More of a "nice to have". We deploy code through Jenkins from SVN or Git. Ops manages deployments.
  • Nagios (network monitoring) – Also a "nice to have". We use Nagios to manage an array of uptime alerts from external and internal customers.

About CF Webtools

We are not a staff augmentation company trying to find someone to fling out to a spot in hopes they stick. While you work with customers, we care about developers and work culture. We intend to know you and support you. We strive to create a workplace you enjoy. We are looking for IT specialists that match our culture of Can-do, Caring, Communication and Competency. Here's some items that you need in order to fit in here.

  • Yes, you will be exposed to ______ (windows/mac) even if you are religiously devoted to ________ (windows/mac). We don't make the rules.
  • You should be able to work with SVN or GIT and sometimes other source control products.
  • You should maintain positive attitude – We interact with respect and gentle humor. Snark is minimized and encouragement is the order of the day. If you are quirky and self-deprecating that will be a plus and you will love it here.
  • You should maintain and enhance your skills set – you will be given the opportunity to work on lots of code, different versions, platforms, integrations, libraries and SDLC organization and procedure. Every one of these is a growth opportunity. If that has you licking your chops climb aboard.
  • We like balance – Our staff have a full life. They ride horses, snowshoe, skydive, sword fight, play instruments, love dogs, golf, learn languages, rear children, go to plays, like to bake, fish, hunting, equestrian sports, skydiving, guitar playing, dog training, macramé, Golf, racquetball, Mandarin, politics (careful!), family outings, school plays, choirs, baking, snowshoeing, ice fishing, hunting, aquaponics, mudding, and the list goes on. We love it all! We think those things make you a better team member and it makes us want to be around you.
Hopefully this helps explain how we operate enough to pique your interest. If you want to take a shot send your resume to jobs@cfwebtools.com or call (402) 408-3733 ext 109 and ask for Chris. You can try extension 105 and ask for the Muse, but you must get past Rachel so be creative! We look forward to hearing from you!

  • Share:

Looking for a ColdFusion plus ReactJS Unicorn - Horn Optional

Mark Kruger August 29, 2019 10:55 AM Job Openings Comments (0)

We provide W2 employment with benefits for remote workers (i.e. you can work in your PJs but don't make a habit of it). We collect experts like fine wine and provide them a happy home inside our hive mind. ColdFusion is our core tech so you need high aptitude in that language and platform (and we will test you to make sure), but you'll need a bit more than that. Here's the main thing we are looking for right now.

  • ReactJS = - This long term project requires in the weeds with ReactJS. You will need more than just a walk through the tutorial. If you are a strong JS dev and have some ReactJS in the wild you probably qualify.
  • Framework Experience (Especially FW/1).
  • Lucee - You don't have to be a Luccee expert but it helps if you've deployed code to Lucee and know some of it's quirks.
  • High DB Skills - MSSQL or MySQL. To us this means complex queries and views plus indexing, design, optimization etc.
  • SCRUM, Git, Agile and Jira - These are the primary SDLC tools for this team.
  • MAC User (for development) - If you also know Vagrant that's a plus.

Hmmm.... what else?

I'm glad you asked. CF Webtools has four core values.

  • Can-Do Attitude - We are problem solvers and extra-milers. If you dig making clients sing your praises for a job well done we are already in love with you.
  • Caring community - Family, faith, friendship, connection, caring - you get the idea. We love people people.
  • Competence - We are building a world class pool of tech talent.
  • Communication - We are very chatty over-sharers.
After you have read the above if you think to yourself "I only match 7 out of 10 things needed" then don't hesitate to send your resume. We are really squishy and you might be able to talk us into it.

And here's a list of things that really help in our environment.

  • You should be able to setup multiple local environments, or at least not be scratching your head at that phrase. Mac and windows may be required (although this is a mac heavy dev environment). Advanced developers do advanced things like (for example) set up an Apache or IIS web site and connect ColdFusion to it. We see this as indicative of your problem solving ability as well.
  • You should be able to work with SVN or GIT . Yes we like Git too, but hey we have a lot of customers and a lot of environments.
  • Maintain positive attitude - We are overall encouragers to the point of cloying earnestness. If you like being encouraged and blessing others you will love it. If you really need something to gripe about and you think pantsing people is funny then we are probably not for you.
  • Maintain and enhance your skills set - We have 100 customers and 40 developers. You will be exposed to a lot of tech and (if you take advantage) learn something every day.
  • Balance - We like devs who have a full life. If you enjoy fencing, equestrian sports, skydiving, guitar playing, dog training, macrame, golf, racquetball, Mandarin, politics (careful!), family outings, child rearing, school plays, choirs, baking (all activities enjoyed by folks on our team) then we think those things make you a better developer! We aren't looking for 80 hour a week developers slavishly devoted to coding. We are looking for eclectic, interesting people who enjoy coding and want to do it for a living.
Hopefully this helps explain how we operate enough to pique your interest. If you want to take a shot send your resume to jobs@cfwebtools.com or call (402) 408-3733 ext 126 and ask for Kurt. We look forward to hearing from you!

  • Share:

Adobe Coldfusion Vulnerability - CVE-2019-7838, CVE-2019-7839, CVE-2019-7840/ APSB19-27

DataBank has issued a Security Bulletin to all of their ColdFusion clients about the recent Adobe ColdFusion Vulnerability. Databank has partnered with CF Webtools to do the patching for all of their ColdFusion client's servers.

CF Webtools is a full service ColdFusion consulting company provided high quality development services and specializing in the ColdFusion stack. If it has to do with ColdFusion we will be able to help!

Both CF Webtools and DataBank are highly engaged in helping their customers maintain secure environments. Patching and regular maintenance are part of that process. If you haven't yet patched your server – whether you host with a high quality provider like DataBank or host it yourself – give us a call at (402) 408-3733 and we will take the worry out of ColdFusion security.

  • Share:

CF Webtools Springapalooza Job Openings

Mark Kruger March 21, 2019 1:54 PM Job Openings Comments (2)

I know I know - it's only been a week since we picked up our 7th new 2019 team member, but we are at it again. We have a need for up to 4 new ColdFusion developers. We are also looking for a new operations person to fill out that growing team. Info below.

  • Yes you work from home so pants are optional unless you are skyping.
  • Looking for folks legal to work in the US only. (sorry! We still love you world!)
  • Yes the position is W2 with benefits after a short (30 day) trial period.
  • Yes benefits include health care.
  • Health Insurance won't cover your calls to the Psychic hotline, but you might be able to use FSA for that.
  • Yes there are other benefits - 401k, dental, PTOs, disability, life insurance, and a positive, encouraging environment.
  • For Profile 1 - Advanced CF Developer:
    • Great team - lively, very bright and productive. A great customer who appreciates knowledgeable developers.
    • Plenty of bad code, plenty of good code, and the serenity to know the difference.
    • Yes, we test your ColdFusion knowledge among other things. The test uses VPN, CF Eclipse, and MSSQL. You will modify some scripts to do a few simple tasks. Note: we get a lot more out of a test than just "do you know CF". We find out about patterns, how you respond to criticism, whether you are creative or methodical, how much CSS you know and even how much whimsy you have. Be careful!
  • For Profile 2 - Operations Team Member:
    • Our operations group consists of 3 team members so far.
    • They spend their days fixing, migrating, managing and upgrading servers.
    • AWS is involved in about 80% of what we do.
    • You will need to be able to find memes that appropriately obscure as inside jokes among your team members.
    • Plenty to do. Lots of scrambling. Lots of appreciative customers and developers who will see you as a savior if you can fix their problem.
If you are still interested. Here are 2 profiles for the folks we are currently seeking. Each position has a unique set of needs.


Profile 1 - Captain Americode

Looking to add 2 to 4 new developers to our team of 3. You will need to grasp requirements fairly intuitively and think around corners. We need someone who is good at acquiring institutional knowledge of a system and code and can pass that knowledge on to team members. If you like to dig in, find things about a system and then use that knowledge to help others and make the system better, this is an ideal profile for you.

  • If you have Oracle experience (programming PL/SQL) that is a plus.
  • Familiarity with on-line testing, SCORM etc. will help here.
  • The ability to flesh out requirements and make appropriate assumptions without too much hand holding will help as well (although ramp up time is to be expected of course).
  • All the usual advanced CF that apply to all of our positions.


Profile 2 - Sys Ops Wizard

While a knowledge of ColdFusion is not required it would be a plus. This job will involve managing servers and server instances (this is not a help desk job) - provisioning, migrating code, upgrading OS or Java. Below are some of the technologies we use and you will need to work with. To qualify you'll need to know at least a handful of these.

  • Linux - For this job you probably need more than just a passing knowledge of Linux. You should be fluent in Linux administration. If you've set up some distros, used YUM or other package managers, know how to find stuff on a Linux box etc. you are probably qualified. But the more the better!
  • Windows Server - We have a high percentage of windows servers. Operations manages backups, patching, migrating, upgrading etc.
  • AWS - about 70% of our managed stack is AWS. If you apply for this job you will be expected to eventually test for an associate certification. Training (online Udemy) and testing are paid for, but you have to put in the work to get there.
  • Java/Tomcat - Our primary stacks invariably include Tomcat/JVM. If words like garbage collection, heap, context, web connectors etc. seem familiar you are on the right track.
  • Networking - you should know your way around a network stack, be familiar with firewall rules, IP addressing, NAT etc.
  • Troubleshooting - you should understand how to troubleshoot issues that arise from CPU, memory or disk constraints and performance.
  • DNS - you should understand DNS zones and record types, how they work, and how to modify them.
  • Web Servers - You should understand how to set up a website in one or both Apache and IIS.
  • Email Servers - We manage a number of email servers or email relays.
  • Jenkins - More of a "nice to have". We deploy code through Jenkins from SVN or Git. Ops manages deployments.
  • Nagios (network monitoring) - Also a "nice to have". We use Nagios to manage an array of uptime alerts from external and internal customers.


More about CFWT

We are not a staff augmentation company trying to find someone to fling out to a spot in hopes they stick. While you work with customers, we care about developers and work culture. We intend to know you and support you. We strive to create a workplace you enjoy. We are looking for developers that match our culture of Can-do, Caring, Communication and Competency. Here's some items that you need in order to fit in here.

  • You should be able to setup multiple local environments on your own dev workstation. You should know words like "Apache" or "IIS". Yes you will be exposed to ______ (windows/mac) even if you are religiously devoted to ________ (windows/mac). We don't make the rules.
  • You should be able to work with SVN or GIT and sometimes other source control products.
  • You should Maintain positive attitude - We interact with respect and gentle humor. Snark is minimized and encouragement is the order of the day. If you are quirky and self-deprecating that will be a plus and you will love it here.
  • You should Maintain and enhance your skills set - you will be given the opportunity to work on lots of code, different versions, platforms, integrations, libraries and SDLC organization and procedure. Everyone of these is a growth opportunity. If that has you licking your chops climb aboard.
  • We like Balanced Developers - Our devs have a full life. They ride horses, snowshoe, skydive, sword fight, play instruments, love dogs, golf, learn languages, rear children, go to plays, like to bake, fish, hunting, equestrian sports, skydiving, guitar playing, dog training, macramé, Golf, racquetball, Mandarin, Politics (careful!), family outings, child rearing, school plays, choirs, baking, snowshoeing, ice fishing, hunting, aquaponics, mudding, and the list goes on. We love it all! We think those things make you a better developer and it makes us want to be around you. We aren't looking for 80 hour a week developers slavishly devoted to coding. We are looking for eclectic, interesting people who enjoy coding and want to do it for a living.
Hopefully this helps explain how we operate enough to pique your interest. If you want to take a shot send your resume to jobs@cfwebtools.com or call (402) 408-3733 ext 126 and ask for the Kurt. You can try extension 105 and ask for the Muse, but you have to get past Rachel so be creative! We look forward to hearing from you!

  • Share:

ColdFusion and Java 8 and Java 11 Updates

Wil Genovese March 8, 2019 4:29 PM Java, ColdFusion, Coldfusion Security, Security Comments (3)

As many of you are aware Oracle has changed their licensing for Java 1.8 and making it a pay to play for all commercial purposes. Here's a link to the licensing announcement. I'm not a lawyer and I'm not going to pretend that I understand these licensing agreements. But Oracle and Adobe (or their lawyers I presume) do understand these and as such there are changes to note. On January 24th Adobe announced that Adobe will maintain support. via a Long-Term Support Agreement with Oracle, for Java 8 and Java 11. Thank you Adobe!

I have questions as I'm sure everyone else does. I've been asking representatives at Adobe these questions.

What does this mean for us?
ColdFusion Server runs on Java from Oracle, and as such the new Oracle license affects all of our ColdFusion servers. To this point Adobe has secured licensing from Oracle that allows all ColdFusion Server owners continue running Java. It is very important to note that you now need to download Java from Adobe and NOT Oracle. Get your Adobe Licensed Oracle Java downloads HERE!

Is the Java version from Adobe Different that the same version from Oracle?
Great Question and I asked Adobe about this. Here is the answer "Wil, installers are same but license attached to them are different and this is for both Java 8 and 11".

What about my existing ColdFusion Servers?
Another great question! There are tens of thousands (or more) ColdFusion servers running and the vast majority of them are running on Java from Oracle. I know that the CF Webtools Operations Group maintains a very large number of servers for a large number of clients. Over time we have been upgrading the Java version on the servers to keep up with the security updates from Oracle. This means that most if not all of these servers are on Oracle Java from Oracle and not from Adobe. What do we have to do to remain compliant? I really hope we do not have to visit all of these servers and replace the Java with the one from Adobe simply because there is a different license agreement attached. I have submitted this question to Adobe and I'm awaiting anxiously for the answer. What I do know is that all servers that we need to update are going to get the Adobe Licensed version of Oracle Java to stay safe.

I received an answer today from Adobe on this.

Wil, to answer your question, if the JDK/JRE were downloaded before Oracle came up with Licensing change, it should not be an issue. Otherwise we recommend using the Adobe provided download as soon as possible, although we don't see a deadline around this.
This means that all the servers that I have recently updated will need to be re-updated with the Java from Adobe that has a different license agreement.

What about my New ColdFusion Servers?
This question has a simple answer. To install a new ColdFusion Server you need to use the ColdFusion installer from Adobe which comes with an Adobe licensed version of Oracle Java. If you want to use a newer version of Oracle Java then you need to download the Adobe Licensed vision of Oracle Java from Adobe. Download Here!

Do I have to use Oracle Java?
Awesome question and the answer is yes, no, maybe. There is OpenJDK that may work just fine to run ColdFusion servers. There is also a new player in the Java game and that is Amazon. "Amazon Corretto is a no-cost, multiplatform, production-ready distribution of the Open Java Development Kit (OpenJDK)." Currently their version 8 is production ready and they version 11 is in the Release Candidate stage. I have run ColdFusion 11 an dColdFusion 2016 on Amazon Corretto 8 and it ran fine for the very limited testing that I did. For now there isn't official support from Adobe for these two Java versions.

As I get more information from Adobe I will provide updates above. I'm sure there will be more questions that people will want answered.

CF Webtools Developer Teams are ColdFusion experts and are ready to build your applications. We are also an Amazon Partner. Our Operations Group can build, manage, and maintain your AWS services including ColdFusion servers. We also handle migration of physical servers into AWS Cloud services. If you are looking for professional AWS management our operations group is standing by 24/7 - give us a call at 402-408-3733, or send a note to operations at CF Webtools .

  • Share:

Converting Fusebox 2 to FW1 - Creating Scaffolding

Mark Kruger February 28, 2019 3:19 PM ColdFusion, Coldfusion Tips and Techniques Comments (0)

A quick Muse post with a bit of code. I know I know it's been a while and my coding has suffered. Still, some of you may find this useful.

I'm converting a Fusebox 2 application to FW1 and I wrote a simple script to automate some of the shell files I need. FW1 uses a URL convention that looks similar to Fuesbox. In Fusebox you have a 2 part URL param that dictates what your code is supposed to do. For example, fuseaction=reports.users would logically be a "circuit" called "reports" - think of it as collection of code or an application within a suite of applications. The second part of the fuseaction dictates which report exactly is supposed to be run.

FW1 is not dissimilar to this approach although it tends to introduce complexity for complexity sake at times (don't @ me). In FW1 an "action" parameter dictates which controller to run which in turn calls services and views as needed to set up a page or action. So FW1 may have action=reports.users - it looks quite familiar.

Since my Fusebox application is well organized I created a script that builds off the circuit and creates the necessary FW1 files. For each circuit I am going to create:

  • circuitName.cfc in the FW1 /controllers folder.
  • circuitName.cfc in the FW1 /model/services folder.
  • circuitName.cfc in the FW1 /model/DAO folder.
  • A folder named for the circuit in the FW1 /views folder with a placeholder file within (default.cfm) for my eventual content.

The script is pretty easy and it's designed to be run within the fusebox application where the FW1 application is accessable via file operations. First some setup:

<!--- MAK: location of my F1 files. --->
<cfset targetFW1 = "E:\eclipse-ws\new-fw1\trunk\">

<!--- MAK: Set up our target Dirs for FW1. --->
<cfset controllerDir = targetFW1 & "controllers\">
<cfset serviceDir = targetFW1 & "model\services\">
<cfset DAODir = targetFW1 & "model\DAO\">
<cfset viewDir = targetFW1 & "views\">

Next I created some placeholder files for controller, services and DAO. I'm going to read those files into variables.

<cffile action="read" file="#templateDir#dao.txt" variable="daoContent">
<cffile action="read" file="#templateDir#service.txt" variable="servicesContent">
<cffile action="read" file="#templateDir#controller.txt" variable="controllerContent">
Then I'm going to use my Fusebox applications structure called "Fusebox.circuits" and loop through it taking action on my plan.
<!--- MAK: loop through them and check them out. --->
<cfloop collection="#fusebox.circuits#" item="circ">
    
    <!--- MAK: Does the controller exist? --->
    <cfif NOT fileExists(controllerDir & circ & ".cfc")>
        <cffile action="write" file="#controllerDir##lcase(circ)#.cfc" output="#controllerContent#">
    </cfif>
    <!--- MAK: Does the services file exist? --->
    <cfif NOT fileExists(serviceDir & circ & ".cfc")>
        <cffile action="write" file="#serviceDir##lcase(circ)#.cfc" output="#servicesContent#">
    </cfif>
    <!--- MAK: Does the DAO file exist? --->
    <cfif NOT fileExists(DAODir & circ & ".cfc")>
        <cffile action="write" file="#DAODir##lcase(circ)#DAO.cfc" output="#daoContent#">
    </cfif>
    <!--- MAK: Creat the Directory in the view along with a default.cfm --->
    <cfif NOT directoryExists(viewDir & lcase(circ))>
        <cfdirectory action="create" directory="#viewDir##lcase(circ)#">
        <cffile action="write" file="#viewDir##lcase(circ)#\default.cfm" output="<h4>Hello World</h4>">
    </cfif>
</cfloop>

That's it. The end result is matching DAO, Controller and service files and view folders. Of course I may delete some of them or merge or whatever as my FW1 application takes shape, but having a matching convention with Fusebox let's me examine code from one into the other without a lot of fuss.

Follow Up

I created a script that handles the "second" part of fuseaction and places an CFM in the views folder as a placeholder. Basically "reports.users" should result in a /views/reports/users.cfm file containing HTML. This is where the eventual display code will be housed.

  • Share: