Friday, September 26, 2008

Coldspring stopped me cold..

We just recently upgraded to Coldspring 1.2 and it wasn't long before I came to a grinding halt the next time that I needed to restart my CF instance. I got the following error:

Object Instantiation Exception
An exception occurred when instantiating a Java object.
The class must not be an interface or an abstract class. Error: ''.

The error occurred in C:\websites\coldspring\beans\AbstractBeanFactory.cfc: line 253
Our beta system wasn't having the same issues, so I decided to look at what might be different in the two environments. I found that I was still on 8.0.0 (doh!). So I went to and upgraded.

That worked right? Wrong! Though it was good for me to get up to speed with the proper version, it did nothing in getting me back to productivity. I browsed some more on some blogs with pieces of the error message and came across a blog that seemed to think this error happend when some nulls were being thrown around when it expected actual values. I looked at this line in the loadFrameworkProperties method in Coldspring/beans/AbstractBeanFactory.cfc:

<cfset local.fileStream = CreateObject('java', '').init(arguments.propertiesFile) />
... which caused me to look in the initial code or the AbstractBeanFactory.cfc file here:
<!--- ColdSpring Framework Properties --->
<cfset variables.instanceData.frameworkPropertiesFile
= "/coldspring/" />
<cfset variables.instanceData.frameworkProperties
= loadFrameworkProperties(ExpandPath(variables.instanceData.frameworkPropertiesFile)) />
So I looked for the .properties file in the /coldspring directory and found nodda. I plugged an empty file into the coldspring directory by the name of and I was back in business.

Hope this helps.



Kevin Pepperman said...

I had this happen too.
Google brought me for the fix. Thanks!
Do you know what is used for and why it is required now?
I cant find any info on it on the Coldspring site.

Teeps (Terry Palmer) said...

Not a clue. I only did enough sleuthing to get to the source of the problem. I just needed to get that resolved so I could continue with another portion of development. Glad the fix helped. Blessings to you.

Jason Dean said...

Terry, awesome! Thanks. You set me straight.