CFLog4j - Interesting enhancements by Eric

I wrote cflog4j last year while working with an application at work that needed significant amount of logging. CFLog4j is essentially a ColdFusion based wrapper around the powerful Java library for logging i.e. log4j. I also wrote few Fusebox lexicons to log activity from the circuit files as that was the framework of choice at my last job. I haven't had a chance to improve and extend the original code for a while now. However Eric Knipp has been doing some excellent work with this project. Here are few blog posts related to this topic.

  1. ColdFusion and Log4j
  2. ColdFusion & Log4j Part 2 - Writing Logs to a Database
  3. ColdFusion & Log4j Part 3 - Custom Attributes and Mapped Diagnostic Context

Thanks Eric!

CFUnited - code and presentation

As I mentioned during the session that I'll be releasing the code after the conference. It took me a while as some work related issues took precedence. Anyways without further delay, you can download the code from the following links

I appreciate the patience as several folks have emailed me to inquire about the code.

Back home from CFUnited

I got home late last night after a long 5 hours drive to NC and then I slept like a baby for more than 12 hours.

My sessions went really well especially on Saturday as I wasn't expecting such a great attendance. Seeing 30-35 people in the class on the last day of conference (almost the last session) really made my day. This was my first time speaking at CFUnited so it was all a wonderful experience.

As mentioned during the session, I'll be posting the code and the slides on my blog later.

Thanks to TeraTech for putting together such a wonderful and exciting conference.

Introducting CFPrototype - a prototyping toolkit

CFPrototype toolkit can be used to create html prototype of an application. We have been using something similar at work where we develop software by using the Fusebox Lifecycle Process (FLiP).

FLiP focuses on obtaining feedback from the client early in the development cycle. HTML prototypes are created that have minimal code logic and database interaction. The focus is on making sure that the layout and presentation are correct. This is accomplished by using a threaded discussion system in this prototpye toolkit. The client can make comments on any page in the prototype by using the notes at the bottom of each page. The client and the developers collaborate on the prototype requirements using these notes to exchange comments. When the client determines that the prototype is an accurate representation of how the final application should look and behave the prototype is baselined and system architecture can begin.

Following are the few technical aspects of this small application

  1. Uses Fusebox version 5.5.1 as the controller framework with no-xml
  2. Uses Javascript prototype library version 1.6.0.2 for Ajax, event handling, class inheritance and templating.
  3. Nested set model is used for notes hierarchy.

You can download the toolkit from riaforge at

CFPrototype

A demo is available on my website at

CFPrototype Demo

Comments are always welcome and I hope that folks find it useful.

String Concatenation in Java (ColdFusion also)

JH's blog has a nice overview of string concatenation in Java by comparing String, StringBuffer and StringBuilder class.

StringBuilder vs StringBuffer vs String.concat - done right

This applies to ColdFusion developers as well since ColdFusion String are Java String under the hood. This was my motiviation when I wrote the UDF QueryToCSV2 that is available on cflib.og