ColdFusion Posts Around the World.

How to Check SSL Certificate using ColdFusion & CURL.exe
James Moberg
A CFML developer in the ColdFusion Programmers Facebook Group referenced my DEV article regarding how to identify the SSL expiration date using ColdFus...
I'm Heading to Adobe ColdFusion Summit 2023
James Moberg
I'm getting ready to drive 500 miles to attend to the 11th CFSummit taking place in Las Vegas on October 2-3. I'm looking forward to reconnecting with CFML developers that I've communicated & collaborated with online during my past 26 years of developing in CFML. I'll be arriving ear...
Filtering Zero-Width SPaces (ZWSPs) using ColdFusion
James Moberg
This is a follow-up to a January 11, 2019 article I wrote on my old Tumber blog. The Hacker News posted an article regarding the ability to bypass Microsoft Office 365's "Safe Links" security feat...
createIsoString() - A ColdFusion User-Defined Function (UDF) to replace dateTimeFormat("iso")
James Moberg
This ColdFusion UDF converts a date object or string into a UTC, ISO8601, RFC 339, ATOM or W3C string
Generate Sanitized Email Hash (as Integer)
James Moberg
While reviewing the logs of failed contact form submissions, I identified a couple email address variations that were exploiting some
Convert XML to JSON in 1 line of code using ColdFusion
James Moberg
I was researching methods of converting XML to JSON using ColdFusion. I didn't want to use xmlParse() because ...
Caching Repetitive UDF Access to Request Scope Using Argument Stringified+Hashed Key
James Moberg
While viewing FusionReactor logs for a ColdFusion app, I noticed lots of repetitive JDBC entries in a requ...
ColdFusion IsValid("regex") vs reFind() vs Java Regex Pattern
James Moberg
I was recently notified of a slow ColdFusion script on a project and, after some isolation, determined that it was due to a regex-based UDF that we used in place of Adobe's built-in function (BIF) for isValid("url"). We used a regex rule with isValid("regex") to validate only HTTP/S URLs with valid...
Undocumented Change to ColdFusion 2021 CFHTMLHead & CFContent
James Moberg
According to my unit tests, after ColdFusion 2018.0.0-15, Adobe changed the way that CFHTMLHead works with CFContent. Prior to CF2021, any strings that were added to the header buffer via CFHTMLHead was outputted to the HTML HEAD section (or top of the page if you neglected to include a HEAD section...
Safely Fetching Scoped Variables (while avoiding Scope Injection)
James Moberg
I'm testing some ideas. I'm not sure if I'm on the right path or not, but thought I'd share. I have some UDF & CFC libraries that we've built over the year and I have some checks to determine whether default application variables exist and use them to override default values. In order to avoid pos...
areBracesValid UDF for ColdFusion/CFML
James Moberg
Useful to determine if braces are correctly matched before processing. Helps reduce SQLi. I was using a version of smartSearch from CFLib.org that I had updated with some simple regex detection for SQLi strings, but it wasn't catching everything. I considered disabling the bracket matchin...
getIntsFromRangeString UDF for ColdFusion
James Moberg
Useful for validating a human-entered list of integers. I was working on a search interface for a client where public visitors would be searching for a range of different values regarding event years, event place, ago, # of competitions, hours of training etc. I initially searched Google...
CustomTag CFScript "Nuance"
James Moberg
I still have some CustomTags that we've used in production for years and, now that I'm writing more cfscript, I thought I'd continue using some of them (for now) using the following syntax that I learned about on StackOverflow: CFML tag-based approach: CFSc...
Use Exiv2 to extract GPS data from Images using CFML
James Moberg
I mentioned Exiv2 on a blog post from 2 years ago regarding Supporting ColdFusion with Command Line Programs. Someone in the Adobe ColdFusion Forum recently inquired how to "use ImageGetEXIFMetaData to try to get gps coordinates of an image". I've been down that road before and have found the buil...
CF_Timer: No Debugging IP Address Required; Introducing nanoTime
James Moberg
While reviewing reports on Lucee's Dev Forum regarding performance differences between using an application-based CFC singleton and a global UDF, I thought I'd release our replacement for Adobe's CFTimer that I wrote back in 2013. No more editing "Debugging IP Addresses" If you wanted to...
Parsing Width/Height from SVG File using ColdFusion
James Moberg
Someone on the Lucee website asked how to get width/height of SVG image file in Lucee. I tend use a lot of SVG images when generating PDFs using WKHTMLTOPDF with ColdFusion 2016-2021 and Lucee. I thought I'd try writing a cross-compatible UDF to parse this information. I've added support for desc,...
Client Cookie Conversion Requirements for ColdFusion
James Moberg
Anyone aware of any information regarding best practices for client-side cookie generation for ColdFusion/Lucee CFML? I'm working on an admin tool and created a client-side cookie with an email address or two (for email testing). Upon the next page request using ColdFusion 2016-2021, only the conte...
Identifying Random Uploaded Form Files
James Moberg
I'm developing a flexible processing CFML script that accepts (authenticated) FORM posts and processes the data. The data is stored based on form field prefixes, but I don't have any hints regarding which fields may contain a file when processing a "multipart/form-data" form posts. I found Ryan Sti...