This is starting to become more and more frequent:
I'm coding along, making excellent progress on a project only to be stopped dead in my tracks by yet another Coldfusion limitation.
I love Coldfusion, but all the stripped down and half-assed features are starting to get in my way.
This particular problem was related to Coldfusion XML processing. The culprit is the xmlValidate() functions inability to actually validate an XML document. Seems to work in extremely simple cases, but in the real world anyone actually validating their XML against a schema is probably not doing a simple validation.
And this is what I mean by half-assed features. I've watched Macromedia/Adobe release 4 versions of Coldfusion. Like all good companies they add new features to their latest product. However, those cool features usually have some drawback or have been "simplified" (that's the word they use in place of limitation).
- MX 6 - XML processing: Works great until you try to feed it a large XML file.
- MX 7 - CFREPORT: Great reports, unless you wanted to have a subreport.
- 8 - CFPRESENTATION: This one was a real joke. Next to impossible to customize the look/feel. My clients love spending a ton of money on a website so they can have an ugly as sin Flash presentation
- 9 - ORM: Hibernate for CF! Awesome! What's that? Only one DSN per Application? Useless to me and anyone with even a medium sized application.
I'm just venting, but it would be nice to finally get a feature that isn't "simplified". I understand that CF is supposed to be simple and easy to use. That's why I love it, but sometimes things are simplified to the point that they are unusable in all but the simplest applications.
The XML problem turns out to be solvable:
Use something else, such as a pure Java based parser like SAX.
The "use something else" fix seems to crop up quite a bit.
Frankly, if I wanted to use unsupported software I would have written the entire application in "something else".
In the end I just chose to skip the schema validation with the hope of returning someday to finish the job. Perhaps one day I'll get that robust XML processing that I saw on the feature list for MX 6.
Thanks again Adobe.