Wednesday, September 28, 2005

We've been working hard on Merrimack, the updater for ColdFusion MX 7, for a while and it is now available for download from Macromedia.com.

The updater has much goodness in it, including lots of bug fixes, an update to Axis 1.2.1 for web services, an updated Verity (patch level 22) and a full Mac OS X installer. Read the FAQ tech note and download the full kit from the CF downloads page. You can also find out detailed info from the release notes.

Monday, September 26, 2005

One of my pet peeves is when people say "The US is so behind in cell phone technology". This is garbage. One of the things they point to is our slow to non-existent embracing of SMS text messages. Now don't get me wrong, I think the SMS Gateway in ColdFusion MX 7 is one sweet feature. But text messaging has always left me cold (ha-ha). Why work 10 minutes on sending a text message when you can just make the call?

Here is a quote from the article that echo's my argument:

Text messaging usage is much higher in Europe and Asia largely because most cell phone users there pay per call or per message. Since text messages generally cost less than voice calls, customers have an economic incentive to go that route. In Britain, depending on calling plans, customers of wireless operator Orange may pay as much as 63 cents a minute to call customers of other U.K. mobile networks, while a text message costs only 18 cents, according to prices listed on Orange's Web site.

By contrast, there's little economic incentive to text-message in the U.S. because most cell phone users are on calling plans that include large bundles of voice minutes, plus unlimited off-peak and weekend minutes. Often there's no cost to make an additional phone call but for most it costs an additional charge to send a text message. Wireless company executives acknowledge that it's not easy to persuade ordinary Americans to add a new category to their cell phone bills.

So the cell phone companies are slowly convincing adults to add $10 to their bill for the privilege of 'catching up' to the Europeans and Japanese. It is worth noting that Sprint has only recently had useful SMS support in their phones. People (and you know who you are) criticized them for this. But wait, you could send Email to and from a Sprint PCS phone from day one. Why doesn't everyone do that? That way I can forward mail to/from my desktop or phone, similar to what the IM protocols also allow. They had the real thing, why support the 160 character limited thing? You got me.

It also pretty unfair to compare the wireless technologies in the US with other (physically smaller) places. We have wires already. Wires work better in almost all cases. But they are expensive. Of course countries without wires already will focus on wireless infrastructure. But does that make us "behind". I don't think so.

Wednesday, September 21, 2005

The Axis team is poised to create a 1.3 release of Axis shortly. Before we do that, I run the ColdFusion regression tests on the bits to make sure our customers can upgrade without problems.

Well, there is a problem, but it is due to some changes in Axis and wsdl4j, a jar file that Axis uses to process WSDL. Specifically the QName class used to live in wsdl4j.jar and now it lives in jaxrpc.jar. So this isn't a big deal except that the class changed recently to support prefixes. You don't have to care about what that means, but just know that Axis 1.3 calls a prefix API which if the wrong QName class is already loaded you get this error:

The problem is that we are picking up the wsdl4j classes from runtime/lib/webservices.jar, the JRun supplied copy of Axis and all of its jar files (including wsdl4j.jar). This hasn't been a problem up until now, because the class moved and changed.

Here is how you fix this. It gets pretty messy so make sure you back up cfmx_bootstrap.jar.

Shut down ColdFusion.

Find the file wwwroot/WEB-INF/lib/cfmx_bootstrap.jar, Make a backup copy of it.

Open the file with WinZip

Edit the file jrun.properties. On the last line add the following package names to the end of the "exceptions line: "javax.xml.namespace.,javax.wsdl." Don't forget the comma and the trailing dots. The line will look like this.

The Gory Details

What this is doing is configuring CF to load the javax.xml.namespace and javax.wsdl packages using the CF classloader, which looks in cfusion/lib first, which is where we want to get the wsdl4j classes from.

Why does it get these classes from werbservices.jar? If you look at the first setting in jrun.properties, you will see that all the classes starting with "javax." are loaded by the Application Servers classloader. Hence JRun goes and loads its QName class (which is in the javax.xml.namespace package).

Monday, September 19, 2005

ColdFusion MX 7 Event Gateways allow you to communicate with almost anything that you can hook Java up to. One of the best uses for it is with Instant Messaging systems. Now that Google is running a (soon to be?) major public IM network that is based on the XMPP standard (AOL, Yahoo and MSN are all proprietary), you can use the XMPP gateway included in CFMX 7 to connect your CFML code up.

Thursday, September 15, 2005

I know the description of my blog mentions Tivo, but I really don't blog much about it. But this story is a bit scary. Apparently content can now be marked by various providers (producers, TV stations, etc) with a fairly intrusive copy protection.

I love my TiVo, but every since I went HD, I almost never use it as my first preference for recording shows. Everything new and lots of old stuff is now in HD, and since I purchased my Samsung 56" DLP TV the picture quality on Tivo'd SDTV is just not good enough when an HD signal is available.

I am instead using the Comcast/Motorola DVR built in to my cable box, which records exactly what comes across the cable (no loss). The interface is lame, but functional. I will be watching the HD capable Tivos that are expected to be released next year very closely. If TiVo wants to maintain me as a customer/fan, they are going to have to move faster toward HDTV.

Saturday, September 10, 2005

He was having a subtle issue with CFHTTP and RSS feeds, where the XML coming back was being treated as a string sometimes and other times as binary data. CFHTTP examines to content-type to decide how to treat the result. If it's text/*, message/* or application/octet-stream, it is treated like a string. Otherwise it is treat as binary data.

cfhttp has a GetAsBinary attribute, which in CFMX7 can be yes, no, or "auto". In the updater I added a new value, "never", which will always treat the content as text. In addition I added the application/*+xml types as text as well.

I don't like the heard coded list much, but since we have the "never" mode, this puts the control back in the hands of the CFML developer, which is where we want it.

Thursday, September 08, 2005

I just recently got a new house, which needed a new lawn, so I put in a sprinkler system. While I haven't received a water bill yet, I am getting hives just thinking about how much water is wasted by my twice a day (new lawn remember) watering schedule.

If it works out for Damon, I suspect it wont be long before I spring for this system too.

Tuesday, September 06, 2005

I recently noticed that my feed address via feedburner was not getting updated with new postings. For some reason I had the wrong XML file configured to feedburner. I fixed that up and so those of you reading this via feedburner should now see postings again. Not that I am so very proactive in adding new entries. :-)