Your AJAX book recommendations please July 23, 2008 11:38 am
Posted by Doug McCaughan in : AJAX, ColdFusion, Programming, Technology , add a commentIf I was going to buy ONE AJAX reference book to add to my library of dust collecting, quickly antiquated computer references, which AJAX book would you suggest? And by the way, does anyone need a copy of Ben Forta’s ColdFusion Application Construction Kit for version 3 of CF?
add a commentMondays begin with error messages May 12, 2008 9:32 am
Posted by Doug McCaughan in : ColdFusion, Daily Life, Programming, Technology , add a commentJust once I’d like a Monday to start off with something that doesn’t look like this:
An error occured while Parsing an XML document.
Content is not allowed in prolog.
Update: The XML file had been corrupted on uploading it to the production server. Uploading a zip file and extracting it on the server solved the problem. Also added trim() to make sure there was no extraneous whitespace.
add a commentTake THAT you evil code! May 6, 2008 6:30 am
Posted by Doug McCaughan in : ColdFusion, Daily Life, HTML, Programming, Technology, XML , add a commentYes! I have been fighting a horrid coding problem and the code just lost! I beat it! I mean this is the type of problem that makes you have bald spots and want to give up programming for something less painful like digging latrines in third countries. This is like I’ve been trying to build a car engine but everything is in metric and all my tools are SAE and the client doesn’t care about the engine but really wants to know why the paint isn’t on the car yet. Oh how I want to be beyond the paint and putting the last bit of polish on the application. Today I should be able to make much progress. Oh wait, no I have to be at the body shop by 8am! Guess my workday will begin at 10am. How frustrating!
add a commentStupid CF Configuration Errors and MS SQL April 17, 2008 11:19 am
Posted by Doug McCaughan in : ColdFusion, Programming, Technology , 1 comment so farYou know when you are on a tight schedule, the stupidity that comes with MS SQL, ColdFusion and a Windows Server can make you go bald. There is no reason for something as simple as creating a datasource to be throwing dumb error messages!
Connection verification failed for data source: foo
java.sql.SQLException: [Macromedia][SQLServer JDBC Driver][SQLServer]Login failed for user ‘foouser’. Reason: The password of the account must be changed.
The root cause was that: java.sql.SQLException: [Macromedia][SQLServer JDBC Driver][SQLServer]Login failed for user ‘foouser’. Reason: The password of the account must be changed.
The password has been changed half a dozen times!
Update: Ah! Either 1) Know what your password policy is and make sure your password is compliant or 2) turn off “Enforce password policy” and “User must change password at next login” (which was my problem). For a datasource, you can probably remove the check from “Enforce password expiration” as well. Note that if you try to do all three of these at once that you will get errors. Remove “User must change password at next login” first then “Enforce password expiration” then “Enforce password policy”.
1 comment so farWhy didn’t you just do that in the first place? April 17, 2008 6:38 am
Posted by Doug McCaughan in : ColdFusion, Daily Life, Programming, Technology, XML , 1 comment so farYears ago I ripped all the paneling out of the downstairs, tore out cabinetry, plumbing, a sink, and a wall. I waterproofed the concrete block wall first by filling any cracks with a mortar then painting the block with a thick waterproofing sealing primer. The wife asked, "why is this taking so long?" I then created studs for the new wall which included a walk-in closet and a nook that the previous setup did not include. The wife asked, "why is this taking so long?" I pre-drilled the studs for wiring and ran electric, cable (to multiple drops), and ethernet (to multiple drops). The wife asked, "why is this taking so long?" Next I insulated the walls and hung the drywall. The wife asked, "why is this taking so long?" Finally I was able to do the tedious step of applying joint compound (spackling) to fill the gaps and cover the drywall screws. If you mess up the joint compound, the mistake will be clearly seen when paint is applyed. I sanded and sanded and reapplied compound and sanded and sanded. The wife asked, "why is this taking so long?" Finally I was able to put a coat of paint on. The wife asked, "why didn’t you do that in the first place?"
Often my programming is very similar. A lot of detail goes into the framework of the site, that is the behind the scenes stuff that nobody ever sees. As a matter of fact, if I have done my job well, anything complex should be hidden from the user and the website should leave them with a "wow that’s easy! I could do this!" feeling.
My current project involves using ColdFusion to fetch a large amount of data from a data provider (some other company that has a really big database which frequently updates) in an xml format then parse it to save the results in my client’s database. I have made it over a huge challenge! But all my work is invisible to the frustrated client. I’ll put up the visible side shortly and I fear the client will ask, "why didn’t you do that in the first place?"
1 comment so farBlogging saves me time! October 23, 2007 10:43 am
Posted by Doug McCaughan in : Blog, ColdFusion, Daily Life, MySQL, Publishing, Technology , add a commentWhy do I blog? Because when I spend a large amount of time troubleshooting, the next time the problem comes around (like getting ColdFusion 7 to connect to a MySQL datasource), I just have to read the post.
add a commentToday’s focus: ColdFusion! (with a side of Access) September 24, 2007 7:49 am
Posted by Doug McCaughan in : ColdFusion, Daily Life, Programming, Technology , add a commentToday I will use ColdFusion for PDF manipulation of data received by fax and saved as gifs or jpegs. I will also generate lots of reprots with ColdFusion, I will make data dance on the screen, and I will get MS Access to produce a printed book from its 14 tables of data.
This evening I’ll take the boys to their scout meeting.
add a commentMy Senators Do Not Represent Me September 19, 2007 10:06 pm
Posted by Doug McCaughan in : ColdFusion, Politics, Regional Politics (SE), Touchy Subjects, United States , 3commentsWhy?
Statement of Purpose: To restore habeas corpus for those detained by the United States.
Tennessee: Alexander (R-TN), Nay Corker (R-TN), Nay
[Source]
See also and also. On the positive side, at least http://www.senate.gov/ is using ColdFusion.
3commentsDear Adobe…what’s wrong with you? September 16, 2007 10:29 am
Posted by Doug McCaughan in : ColdFusion, Programming, Technology , add a commentHello Adobe! Livedocs sucked much less (can’t say it was much better) when you could filter functions and tags by ColdFusion version. Believe it or not, everyone has not upgrade to ColdFusion 8 yet. Guess what! Not everyone will! I still have clients using ColdFusion 5. It isused to be very nice to be able to look in the documentation and see only the stuff that applied to a specific version of the product. Now you have to read the history notes to decipher what applies to your specific situation. Very cumbersome!
I am certain some marketing person told you that including the ColdFusion 8 function descriptions in the help would excite people using older version to upgrade and yes the CF8 new functions sound very intriguing but that isn’t going to inspire me to run out and upgrade. I’m the developer! Not the purchasing agent. All you’ve done is frustrate an advocate of your products.
add a commentI like my work September 13, 2007 10:12 pm
Posted by Doug McCaughan in : ColdFusion, Programming, Quality Assurance, Technology , add a commentI build very complex web application systems. I mean so complex that sometimes I forget that certain functions were built into the program; sometimes they surprise and even impress me. One of my habits is to code for the impossible. I often will slip in error messages for conditions that should never occur.
"Ever since the first computers [t]here have always been ghosts in the machine. Random segments of code… that have grouped together to form unexpected protocols. Unanticipated? There free radicals engender questions of free will… creativity… and even the nature of what we might call the soul." [Source] excerpted from I, Robot
Tonight I was testing an application I am trying to launch when I received "Something strange has occurred. Please log out and log back into the system then try your request again." Strange indeed! I usually make my impossible error messages a little more meaningful.
add a commentWho Uses That Dying ColdFusion Anyway? September 13, 2007 7:28 am
Posted by Doug McCaughan in : ColdFusion, Programming, Technology , add a commentColdFusion? Since its inception naysayers have declared "ColdFusion is dying!" It remains my favorite web application language (over others like PHP, ASP classic, ASP .NET, etc). And I continue to pay our bills primarily working with CF.
Who else uses it? Why the National Institute of Standards and Technology of course!
add a commentRidiculous ColdFusion/Webserver behavior August 28, 2007 11:13 am
Posted by Doug McCaughan in : ColdFusion, HTML, Programming, Technology , add a commentSolved! I had a conditional statement that would insert the following code into the <head> on one template: <base href="http://<cfoutput>#application.gDomainName#</cfoutput>"> Still doesn’t explain why it breaks.
Original problem: I have a bizarre situation and I am clueless on how to fix it. I have written an application that works fine on my development server. On the production server urls with cgi variables are behaving strangely. I have set up two ways to test the behavior. The first is in the application structure of application.cfm->index.cfm->included_file_with_href.cfm The href submits to itself like this: <a href="index.cfm?this=that&you=me&foo=bar">the link</a> I have include a <cfdump var="#url#"> as line 1 of the application.cfm. When the link is clicked the dump shows:
| struct | |
| amp;foo | bar |
| amp;you | me |
| this | that |
Now I created a test.cfm under the same directory structure so that it is influenced by the same application.cfm (remember, the one with the cfdump at line 1): application.cfm->test.cfm and it submits to test2.cfm and the dump comes out as expected:
| struct | |
| foo | bar |
| you | me |
| this | that |
So what would cause ampersands & to remain as & in one scenario but translate to & in another case on the same server? This makes no sense whatsoever!
The URL has to be getting screwed by either the web server or the ColdFusion MX7 server. Neither makes sense. Yes 7.0.2 hot fix 2 has been installed. IIS is current.
Other references: See also
add a commentWhat kind programs do you write? July 27, 2007 8:08 am
Posted by Doug McCaughan in : ColdFusion, Daily Life, Programming, Technology , add a commentI often get asked, "Now, what do you do?" and when I try to explain it I get these blank stares and gapping mouths to which I pause then say, "I make web pages." Their eyes light, heads nod, and they declare, "OOooh!" Quickly followed by a subject change.
What do I really do? Right now I am writing an application that allows service providers to advertise their services. So someone seeking a service goes to the website and enters what they are looking for and the matching providers pop up. Sounds simple enough right? Well, if I do my job correctly it will appear amazingly simple to the end user. The behind the scenes programming complexity is awe inspiring. As a minor example, the administrator has to take requests from service providers to be apart of the website. Then the administrator has to create the service provider profile which implies an administrative website that only the staff can access (roles based security). A profile! That’s simple right? Just a database table with all the descriptions of the provider and services offered right? Not really. In actuality it is a very complex system of related lookup tables. Since I cannot predict all the variants of services and pieces of services that may be offered, the system was built to allow the administrator to dynamically add and remove qualities from the service profile. Certainly a detailed specification could have made that simpler but would have resulted in a limited application where as this one can grow to meet the future needs of the client (I know..the simpler approach would have produced more billable hours in the future..blah blah).
Of course, the service provider has to have their own website to be able to manage the details of their service without having to labor the administrator. However, the client does not want the service provider to be able to make certain changes to the profile without approval. So I have had to create a change request table in the database to accept pending changes from the service providers to be accepted or rejected by the administrator. Now there’s a level of complexity that echoes changes throughout the site!
I love my work!
add a commentTech Issue of the Day July 26, 2007 1:37 pm
Posted by Doug McCaughan in : ColdFusion, Daily Life, MySQL, Programming, Technology , 2commentsToday’s terribly frustrating error causing a long delay in a short process is:
Parameter index out of range (1 > number of parameters, which is 0).
It is the result of this simple insert:
<cfquery name="createrole" datasource="#application.gDataSrc#">
INSERT INTO #application.projectidentifier#_theroletable {
fooASInt,
barAsInt
} VALUES {
<cfqueryparam cfsqltype="CF_SQL_INTEGER" value="#fooAsIntValue#">,
104
}
</cfquery>
UPDATE: Whoops. I see the typo! There is a big difference between {} and (). Should have been:
<cfquery name="createrole" datasource="#application.gDataSrc#">
INSERT INTO #application.projectidentifier#_theroletable (
fooASInt,
barAsInt
) VALUES (
<cfqueryparam cfsqltype="CF_SQL_INTEGER" value="#fooAsIntValue#">,
104
)
</cfquery>
And an afternoon of troubleshooting goes to one line July 25, 2007 4:19 pm
Posted by Doug McCaughan in : ColdFusion, HTML, Programming, Technology , add a commentSo IIS v6 wasn’t letting form variables post. <cfdump var="#form#"> would show an empty structure. CF’s built-in webserver on the development box worked fine. Changing the method from post to get made things even stranger with the query string using & instead of &. I finally found the solution. I had used the obscure html tag <base"
<base href="http://domain.com/">
IIS v6 did not like this. Removing that one line fixed the problem. So much for trying to be the perfect coder.
add a comment





