<cfset time = 1135038970>
<cfset date = createObject("java", "java.util.Date").init(time * 1000)>Nope. The constructor takes a long argument and coldfusion’s scalars cast to doubles when sent to java. So we turn to ColdFusion’s answer, JavaCast.
<cfset date = createObject("java", "java.util.Date").init(JavaCast("long", time * 1000))>This is where it got weird. Coldfusion threw an error that the number was too big to be cast to an int. What?! Why is it casting anything to an int?!
I tried a slight variation:
<cfset date = createObject("java", "java.util.Date").init(JavaCast("long", time) * 1000)>It cast time to a long alright, but then multiplying it by 1000 casts it back to a double. So I wracked my brain for a way to get this number multiplied by 1000 into a long. Laughing maniacally, I typed it out:
<cfset date = createObject("java", "java.util.Date").init(createObject("java", "java.lang.Long").parseLong(time & "000"))>You proved a worthy adversary, ColdFusion, but your crane style was no match for my tiger style.
Oh, and there you go, Cole. :D

Stupid ColdFusion. Who’d program with that crap anyway? Oh… wait…
I wonder why it would try to cast it as an int. That’s weird. I understand that Cast() is used to battle ambiguity, but why change the data type?
At any rate, thanks for code. As soon as I can figure out how to parse this not-so-strange-but-strange-to-coldfuion’s-xmlparser xml code, I’ll throw it in there.